2004-09-29 [colin] 0.9.12cvs114
authorColin Leroy <colin@colino.net>
Wed, 29 Sep 2004 09:35:02 +0000 (09:35 +0000)
committerColin Leroy <colin@colino.net>
Wed, 29 Sep 2004 09:35:02 +0000 (09:35 +0000)
* src/compose.c
Don't close compose until message is sent if
Show Send Dialog is Always

ChangeLog.claws
PATCHSETS
configure.ac
src/compose.c

index 7edcd8a..290d037 100644 (file)
@@ -1,3 +1,9 @@
+2004-09-29 [colin]     0.9.12cvs114
+
+       * src/compose.c
+               Don't close compose until message is sent if 
+               Show Send Dialog is Always
+
 2004-09-29 [paul]      0.9.12cvs113
 
        * src/quote_fmt_parse.y
index 7ce4a39..6888268 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
@@ -96,3 +96,4 @@
 ( cvs diff -u -r 1.308 -r 1.309 src/mainwindow.c; ) > 0.9.12cvs111.patchset
 ( cvs diff -u -r 1.309 -r 1.310 src/mainwindow.c; cvs diff -u -r 1.247 -r 1.248 src/folderview.c; ) > 0.9.12cvs112.patchset
 ( cvs diff -u -r 1.24 -r 1.25 src/quote_fmt_parse.y; ) > 0.9.12cvs113.patchset
+( cvs diff -u -r 1.441 -r 1.442 src/compose.c; ) > 0.9.12cvs114.patchset
index faf18d2..95bd951 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=12
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=113
+EXTRA_VERSION=114
 EXTRA_RELEASE=
 
 if test \( $EXTRA_VERSION -eq 0 \) -o \( "x$EXTRA_RELEASE" != "x" \); then
index cf3635c..9979819 100644 (file)
@@ -3154,14 +3154,22 @@ gint compose_send(Compose *compose)
                goto bail;
        }
 
-       compose->sending = FALSE;       
-       gtk_widget_destroy(compose->window);
-       /* No more compose access in the normal codepath after this point! */
+
+       if (prefs_common.send_dialog_mode != SEND_DIALOG_ALWAYS) {
+               compose->sending = FALSE;
+               gtk_widget_destroy(compose->window);
+               /* No more compose access in the normal codepath 
+                * after this point! */
+       }
 
        if (msgnum == 0) {
                alertpanel_error(_("The message was queued but could not be "
                                   "sent.\nUse \"Send queued messages\" from "
                                   "the main window to retry."));
+               if (prefs_common.send_dialog_mode == SEND_DIALOG_ALWAYS) {
+                       compose->sending = FALSE;
+                       compose_allow_user_actions (compose, TRUE);
+               }
                return 0;
        }
        
@@ -3169,9 +3177,20 @@ gint compose_send(Compose *compose)
        val = procmsg_send_message_queue(msgpath);
        g_free(msgpath);
 
+       if (prefs_common.send_dialog_mode == SEND_DIALOG_ALWAYS) {
+               compose->sending = FALSE;
+               compose_allow_user_actions (compose, TRUE);
+               if (val != 0) {
+                       folder_item_remove_msg(folder, msgnum);
+                       folder_item_scan(folder);
+               }
+       }
+
        if (val == 0) {
                folder_item_remove_msg(folder, msgnum);
                folder_item_scan(folder);
+               if (prefs_common.send_dialog_mode == SEND_DIALOG_ALWAYS)
+                       gtk_widget_destroy(compose->window);
        }
 
        return 0;