diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2004-04-03 05:04:09 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2004-04-03 05:04:09 +0800 |
commit | 2949a505853a87a525831e73af88cd4819892f6f (patch) | |
tree | acef56742614059fb6f3873f24de03c831a521b1 | |
parent | a3eea7e8857928541717df562ab98017e23ecb0d (diff) | |
download | gsoc2013-evolution-2949a505853a87a525831e73af88cd4819892f6f.tar.gz gsoc2013-evolution-2949a505853a87a525831e73af88cd4819892f6f.tar.zst gsoc2013-evolution-2949a505853a87a525831e73af88cd4819892f6f.zip |
Fixes bug #53851
2004-04-02 Jeffrey Stedfast <fejj@ximian.com>
Fixes bug #53851
* em-folder-view.c (emfv_popup_move_cb): Save the uri as the
default for copy/move.
(emfv_popup_move): Use the default copy/move uri.
(emfv_popup_copy): Same.
* em-folder-selection.c (em_select_folder): Select the uri *after*
the dialog gets shown.
svn path=/trunk/; revision=25306
-rw-r--r-- | mail/ChangeLog | 12 | ||||
-rw-r--r-- | mail/em-folder-selection.c | 6 | ||||
-rw-r--r-- | mail/em-folder-view.c | 16 |
3 files changed, 26 insertions, 8 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 84d02a1087..6dfb06df10 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,5 +1,17 @@ 2004-04-02 Jeffrey Stedfast <fejj@ximian.com> + Fixes bug #53851 + + * em-folder-view.c (emfv_popup_move_cb): Save the uri as the + default for copy/move. + (emfv_popup_move): Use the default copy/move uri. + (emfv_popup_copy): Same. + + * em-folder-selection.c (em_select_folder): Select the uri *after* + the dialog gets shown. + +2004-04-02 Jeffrey Stedfast <fejj@ximian.com> + Fixes bug #37416 * mail-folder-cache.c (update_1folder): Same as below. Also add diff --git a/mail/em-folder-selection.c b/mail/em-folder-selection.c index 0534ca99e1..42fc474f13 100644 --- a/mail/em-folder-selection.c +++ b/mail/em-folder-selection.c @@ -66,12 +66,14 @@ em_select_folder (GtkWindow *parent_window, const char *title, const char *defau emft = (EMFolderTree *) em_folder_tree_new_with_model (model); dialog = em_folder_selector_new(emft, EM_FOLDER_SELECTOR_CAN_CREATE, title, NULL); - if (default_uri) - em_folder_selector_set_selected((EMFolderSelector *)dialog, default_uri); + d = g_malloc0(sizeof(*d)); d->data = user_data; d->done = done; g_signal_connect(dialog, "response", G_CALLBACK (emfs_selector_response), d); g_object_set_data_full((GObject *)dialog, "e-select-data", d, (GDestroyNotify)g_free); gtk_widget_show(dialog); + + if (default_uri) + em_folder_selector_set_selected((EMFolderSelector *)dialog, default_uri); } 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 |