commit 5023672de2c3f86a8367d76ac771a35facb11e10
parent a23ad721b787c05d9a38db57450eeba66408af9c
Author: Colin Leroy <colin@colino.net>
Date: Wed, 6 Aug 2008 08:11:48 +0000
2008-08-06 [colin] 3.5.0cvs51
* src/compose.c
Fix bug 1690, 'Copy/Paste in edit window may
break Undo'; middle-click pastes aren't
REPLACE_INSERT but just INSERT.
Also, fix privacy menu selection
Diffstat:
4 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -1,3 +1,11 @@
+2008-08-06 [colin] 3.5.0cvs51
+
+ * src/compose.c
+ Fix bug 1690, 'Copy/Paste in edit window may
+ break Undo'; middle-click pastes aren't
+ REPLACE_INSERT but just INSERT.
+ Also, fix privacy menu selection
+
2008-08-05 [colin] 3.5.0cvs50
* src/action.c
diff --git a/PATCHSETS b/PATCHSETS
@@ -3462,3 +3462,4 @@
( cvs diff -u -r 1.9.2.23 -r 1.9.2.24 src/addressadd.c; cvs diff -u -r 1.60.2.122 -r 1.60.2.123 src/addressbook.c; cvs diff -u -r 1.1.2.11 -r 1.1.2.12 src/addressbook_foldersel.c; cvs diff -u -r 1.5.2.10 -r 1.5.2.11 src/addressitem.h; cvs diff -u -r 1.5.10.24 -r 1.5.10.25 src/addrgather.c; cvs diff -u -r 1.2.4.20 -r 1.2.4.21 src/browseldap.c; cvs diff -u -r 1.382.2.462 -r 1.382.2.463 src/compose.c; cvs diff -u -r 1.50.2.48 -r 1.50.2.49 src/compose.h; cvs diff -u -r 1.14.2.51 -r 1.14.2.52 src/editaddress.c; cvs diff -u -r 1.1.2.6 -r 1.1.2.7 src/editaddress_other_attributes_ldap.c; cvs diff -u -r 1.11.2.19 -r 1.11.2.20 src/editgroup.c; cvs diff -u -r 1.10.2.13 -r 1.10.2.14 src/editldap_basedn.c; cvs diff -u -r 1.207.2.204 -r 1.207.2.205 src/folderview.c; cvs diff -u -r 1.20.2.23 -r 1.20.2.24 src/folderview.h; cvs diff -u -r 1.14.2.20 -r 1.14.2.21 src/grouplistdialog.c; cvs diff -u -r 1.1.2.22 -r 1.1.2.23 src/image_viewer.c; cvs diff -u -r 1.1.2.60 -r 1.1.2.61 src/imap_gtk.c; cvs diff -u -r 1.14.2.18 -r 1.14.2.19 src/importldif.c; cvs diff -u -r 1.115.2.200 -r 1.115.2.201 src/main.c; cvs diff -u -r 1.274.2.262 -r 1.274.2.263 src/mainwindow.c; cvs diff -u -r 1.3.12.30 -r 1.3.12.31 src/message_search.c; cvs diff -u -r 1.2.2.33 -r 1.2.2.34 src/mh_gtk.c; cvs diff -u -r 1.83.2.138 -r 1.83.2.139 src/mimeview.c; cvs diff -u -r 1.20.2.25 -r 1.20.2.26 src/mimeview.h; cvs diff -u -r 1.2.2.28 -r 1.2.2.29 src/news_gtk.c; cvs diff -u -r 1.3.8.8 -r 1.3.8.9 src/noticeview.h; cvs diff -u -r 1.105.2.139 -r 1.105.2.140 src/prefs_account.c; cvs diff -u -r 1.1.4.53 -r 1.1.4.54 src/prefs_filtering_action.c; cvs diff -u -r 1.43.2.73 -r 1.43.2.74 src/prefs_matcher.c; cvs diff -u -r 1.1.2.37 -r 1.1.2.38 src/prefs_msg_colors.c; cvs diff -u -r 1.1.2.56 -r 1.1.2.57 src/prefs_summaries.c; cvs diff -u -r 1.5.2.21 -r 1.5.2.22 src/statusbar.c; cvs diff -u -r 1.25.2.58 -r 1.25.2.59 src/stock_pixmap.c; cvs diff -u -r 1.15.2.54 -r 1.15.2.55 src/summary_search.c; cvs diff -u -r 1.395.2.379 -r 1.395.2.380 src/summaryview.c; cvs diff -u -r 1.68.2.48 -r 1.68.2.49 src/summaryview.h; cvs diff -u -r 1.96.2.203 -r 1.96.2.204 src/textview.c; cvs diff -u -r 1.19.2.27 -r 1.19.2.28 src/toolbar.h; cvs diff -u -r 1.20.2.16 -r 1.20.2.17 src/gtk/Makefile.am; cvs diff -u -r 1.1.2.1 -r 1.1.2.2 src/gtk/claws-marshal.list; cvs diff -u -r 1.1.4.11 -r 1.1.4.12 src/gtk/colorsel.c; cvs diff -u -r 1.1.2.16 -r 1.1.2.17 src/gtk/foldersort.c; cvs diff -u -r 1.9.2.57 -r 1.9.2.58 src/gtk/gtkaspell.c; diff -u /dev/null src/gtk/gtkcmclist.c; diff -u /dev/null src/gtk/gtkcmclist.h; diff -u /dev/null src/gtk/gtkcmctree.c; diff -u /dev/null src/gtk/gtkcmctree.h; cvs diff -u -r 1.1.4.46 -r 1.1.4.47 src/gtk/gtksctree.c; cvs diff -u -r 1.1.4.13 -r 1.1.4.14 src/gtk/gtksctree.h; cvs diff -u -r 1.5.2.78 -r 1.5.2.79 src/gtk/gtkutils.c; cvs diff -u -r 1.4.2.42 -r 1.4.2.43 src/gtk/gtkutils.h; cvs diff -u -r 1.5.2.13 -r 1.5.2.14 src/gtk/gtkvscrollbutton.c; cvs diff -u -r 1.5.2.34 -r 1.5.2.35 src/gtk/menu.c; cvs diff -u -r 1.4.2.19 -r 1.4.2.20 src/gtk/menu.h; cvs diff -u -r 1.1.2.83 -r 1.1.2.84 src/gtk/quicksearch.c; cvs diff -u -r 1.12.2.26 -r 1.12.2.27 src/plugins/dillo_viewer/dillo_viewer.c; cvs diff -u -r 1.1.2.20 -r 1.1.2.21 src/plugins/pgpcore/select-keys.c; ) > 3.5.0cvs48.patchset
( cvs diff -u -r 1.105.2.140 -r 1.105.2.141 src/prefs_account.c; cvs diff -u -r 1.1.4.54 -r 1.1.4.55 src/prefs_filtering_action.c; cvs diff -u -r 1.43.2.74 -r 1.43.2.75 src/prefs_matcher.c; cvs diff -u -r 1.20.2.16 -r 1.20.2.17 src/gtk/Makefile.am; cvs diff -u -r 1.1.2.1 -r 1.1.2.2 src/gtk/claws-marshal.list; cvs diff -u -r 1.2.2.21 -r 1.2.2.22 src/gtk/colorlabel.c; cvs diff -u -r 1.1.4.11 -r 1.1.4.12 src/gtk/colorsel.c; cvs diff -u -r 1.1.2.16 -r 1.1.2.17 src/gtk/foldersort.c; cvs diff -u -r 1.9.2.57 -r 1.9.2.58 src/gtk/gtkaspell.c; diff -u /dev/null src/gtk/gtkcmclist.c; diff -u /dev/null src/gtk/gtkcmclist.h; diff -u /dev/null src/gtk/gtkcmctree.c; diff -u /dev/null src/gtk/gtkcmctree.h; diff -u /dev/null src/gtk/gtkcmoptionmenu.c; diff -u /dev/null src/gtk/gtkcmoptionmenu.h; cvs diff -u -r 1.1.4.46 -r 1.1.4.47 src/gtk/gtksctree.c; cvs diff -u -r 1.1.4.13 -r 1.1.4.14 src/gtk/gtksctree.h; cvs diff -u -r 1.5.2.78 -r 1.5.2.79 src/gtk/gtkutils.c; cvs diff -u -r 1.4.2.42 -r 1.4.2.43 src/gtk/gtkutils.h; cvs diff -u -r 1.5.2.13 -r 1.5.2.14 src/gtk/gtkvscrollbutton.c; cvs diff -u -r 1.5.2.34 -r 1.5.2.35 src/gtk/menu.c; cvs diff -u -r 1.4.2.19 -r 1.4.2.20 src/gtk/menu.h; cvs diff -u -r 1.1.2.83 -r 1.1.2.84 src/gtk/quicksearch.c; cvs diff -u -r 1.12.2.26 -r 1.12.2.27 src/plugins/dillo_viewer/dillo_viewer.c; cvs diff -u -r 1.1.2.20 -r 1.1.2.21 src/plugins/pgpcore/select-keys.c; ) > 3.5.0cvs49.patchset
( cvs diff -u -r 1.12.2.53 -r 1.12.2.54 src/action.c; cvs diff -u -r 1.27.2.41 -r 1.27.2.42 src/addr_compl.c; cvs diff -u -r 1.22.2.18 -r 1.22.2.19 src/addrbook.c; cvs diff -u -r 1.1.4.6 -r 1.1.4.7 src/addrcindex.c; cvs diff -u -r 1.1.2.11 -r 1.1.2.12 src/addrduplicates.c; cvs diff -u -r 1.6.10.16 -r 1.6.10.17 src/addrharvest.c; cvs diff -u -r 1.3.2.4 -r 1.3.2.5 src/enriched.c; cvs diff -u -r 1.12.2.23 -r 1.12.2.24 src/html.c; cvs diff -u -r 1.12.2.16 -r 1.12.2.17 src/ldif.c; cvs diff -u -r 1.115.2.201 -r 1.115.2.202 src/main.c; cvs diff -u -r 1.83.2.139 -r 1.83.2.140 src/mimeview.c; cvs diff -u -r 1.6.10.13 -r 1.6.10.14 src/mutt.c; cvs diff -u -r 1.6.2.12 -r 1.6.2.13 src/pine.c; cvs diff -u -r 1.49.2.109 -r 1.49.2.110 src/procmime.c; cvs diff -u -r 1.14.2.14 -r 1.14.2.15 src/vcard.c; cvs diff -u -r 1.1.2.71 -r 1.1.2.72 src/wizard.c; cvs diff -u -r 1.13.2.37 -r 1.13.2.38 src/common/socket.c; cvs diff -u -r 1.5.2.79 -r 1.5.2.80 src/gtk/gtkutils.c; cvs diff -u -r 1.4.2.43 -r 1.4.2.44 src/gtk/gtkutils.h; cvs diff -u -r 1.5.2.35 -r 1.5.2.36 src/gtk/menu.c; cvs diff -u -r 1.18.2.60 -r 1.18.2.61 src/plugins/spamassassin/spamassassin.c; ) > 3.5.0cvs50.patchset
+( cvs diff -u -r 1.382.2.463 -r 1.382.2.464 src/compose.c; ) > 3.5.0cvs51.patchset
diff --git a/configure.ac b/configure.ac
@@ -11,7 +11,7 @@ MINOR_VERSION=5
MICRO_VERSION=0
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=50
+EXTRA_VERSION=51
EXTRA_RELEASE=
EXTRA_GTK2_VERSION=
diff --git a/src/compose.c b/src/compose.c
@@ -7440,7 +7440,8 @@ static void compose_update_privacy_system_menu_item(Compose * compose, gboolean
systemid = g_object_get_data(G_OBJECT(amenu->data), "privacy_system");
if (systemid != NULL) {
- if (strcmp(systemid, compose->privacy_system) == 0) {
+ if (strcmp(systemid, compose->privacy_system) == 0 &&
+ GTK_IS_CHECK_MENU_ITEM(amenu->data)) {
menuitem = GTK_WIDGET(amenu->data);
can_sign = privacy_system_can_sign(systemid);
@@ -7448,7 +7449,8 @@ static void compose_update_privacy_system_menu_item(Compose * compose, gboolean
found = TRUE;
break;
}
- } else if (strlen(compose->privacy_system) == 0) {
+ } else if (strlen(compose->privacy_system) == 0 &&
+ GTK_IS_CHECK_MENU_ITEM(amenu->data)) {
menuitem = GTK_WIDGET(amenu->data);
can_sign = FALSE;
@@ -9308,12 +9310,11 @@ static void entry_paste_clipboard(Compose *compose, GtkWidget *entry,
if (contents == NULL)
return;
-
- undo_paste_clipboard(GTK_TEXT_VIEW(compose->text), compose->undostruct);
-
+
/* we shouldn't delete the selection when middle-click-pasting, or we
* can't mid-click-paste our own selection */
if (clip != GDK_SELECTION_PRIMARY) {
+ undo_paste_clipboard(GTK_TEXT_VIEW(compose->text), compose->undostruct);
gtk_text_buffer_delete_selection(buffer, FALSE, TRUE);
}