diff options
Diffstat (limited to 'mail/em-folder-view.c')
-rw-r--r-- | mail/em-folder-view.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/mail/em-folder-view.c b/mail/em-folder-view.c index 2e9f9de377..fe647000a1 100644 --- a/mail/em-folder-view.c +++ b/mail/em-folder-view.c @@ -614,16 +614,20 @@ struct _move_data { int delete; }; +static char *default_xfer_messages_uri = NULL; + static void emfv_popup_move_cb(const char *uri, void *data) { struct _move_data *d = data; - - if (uri) + + if (uri) { + g_free (default_xfer_messages_uri); + default_xfer_messages_uri = g_strdup (uri); mail_transfer_messages(d->emfv->folder, d->uids, d->delete, uri, 0, NULL, NULL); - else + } else em_utils_uids_free(d->uids); - + g_object_unref(d->emfv); g_free(d); } @@ -639,7 +643,7 @@ emfv_popup_move(GtkWidget *w, EMFolderView *emfv) d->uids = message_list_get_selected(emfv->list); d->delete = TRUE; - em_select_folder ((GtkWindow *) emfv, _("Select folder"), NULL, emfv_popup_move_cb, d); + em_select_folder ((GtkWindow *) emfv, _("Select folder"), default_xfer_messages_uri, emfv_popup_move_cb, d); } static void @@ -653,7 +657,7 @@ emfv_popup_copy(GtkWidget *w, EMFolderView *emfv) d->uids = message_list_get_selected(emfv->list); d->delete = FALSE; - em_select_folder ((GtkWindow *) emfv, _("Select folder"), NULL, emfv_popup_move_cb, d); + em_select_folder ((GtkWindow *) emfv, _("Select folder"), default_xfer_messages_uri, emfv_popup_move_cb, d); } static void |