}
free_pixbufs (pixbufs);
-
- return;
}
static void
priv->account_store = NULL;
}
+ if (g_signal_handler_is_connected (modest_runtime_get_account_mgr (),
+ priv->display_name_changed_signal)) {
+ g_signal_handler_disconnect (modest_runtime_get_account_mgr (),
+ priv->display_name_changed_signal);
+ priv->display_name_changed_signal = 0;
+ }
+
if (priv->query) {
g_object_unref (G_OBJECT (priv->query));
priv->query = NULL;
}
g_strfreev (uris);
+ /* This could happen ig we perform a d&d very quickly over the
+ same row that row could dissapear because message is
+ transferred */
+ if (!TNY_IS_FOLDER (src_folder))
+ goto cleanup;
+
/* Get the target folder */
gtk_tree_model_get_iter (dest_model, &dest_iter, dest_row);
gtk_tree_model_get (dest_model, &dest_iter,
/* Check if the drag is possible */
if (forbidden || !gtk_tree_path_compare (helper->source_row, dest_row)) {
+ /* Show error */
+ modest_platform_run_information_dialog ((GtkWindow *) win,
+ _("mail_in_ui_folder_move_target_error"),
+ FALSE);
+ /* Restore the previous selection */
+ folder = tree_path_to_folder (source_model, helper->source_row);
+ if (folder) {
+ if (TNY_IS_FOLDER (folder))
+ modest_folder_view_select_folder (helper->folder_view,
+ TNY_FOLDER (folder), FALSE);
+ g_object_unref (folder);
+ }
dnd_helper_destroyer (helper);
return;
}