talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit e1aa6053322596bf2ef1ebf649e2a87056985efb
parent 4f0697a53ed68bfa043989aeed51e978a3a039fc
Author: Tristan Chabredier <wwp@claws-mail.org>
Date:   Thu, 27 Mar 2008 15:07:00 +0000

2008-03-27 [wwp]	3.3.1cvs41

	* src/addressbook.c
		Prevent list flickering when deleting addresses.

Diffstat:
MChangeLog | 5+++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/addressbook.c | 16++++++++++++----
4 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,8 @@ +2008-03-27 [wwp] 3.3.1cvs41 + + * src/addressbook.c + Prevent list flickering when deleting addresses. + 2008-03-26 [colin] 3.3.1cvs40 * src/imap.c diff --git a/PATCHSETS b/PATCHSETS @@ -3275,3 +3275,4 @@ ( cvs diff -u -r 1.1.2.36 -r 1.1.2.37 src/plugins/bogofilter/bogofilter.c; cvs diff -u -r 1.1.2.13 -r 1.1.2.14 src/plugins/bogofilter/bogofilter.h; cvs diff -u -r 1.1.2.30 -r 1.1.2.31 src/plugins/bogofilter/bogofilter_gtk.c; ) > 3.3.1cvs38.patchset ( cvs diff -u -r 1.96.2.198 -r 1.96.2.199 src/textview.c; ) > 3.3.1cvs39.patchset ( cvs diff -u -r 1.179.2.214 -r 1.179.2.215 src/imap.c; ) > 3.3.1cvs40.patchset +( cvs diff -u -r 1.60.2.111 -r 1.60.2.112 src/addressbook.c; ) > 3.3.1cvs41.patchset diff --git a/configure.ac b/configure.ac @@ -11,7 +11,7 @@ MINOR_VERSION=3 MICRO_VERSION=1 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=40 +EXTRA_VERSION=41 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/addressbook.c b/src/addressbook.c @@ -1404,6 +1404,7 @@ static void addressbook_del_clicked(GtkButton *button, gpointer data) abf = ds->rawDataSource; if( abf == NULL ) return; + gtk_clist_freeze(GTK_CLIST(addrbook.clist)); /* Process deletions */ if( pobj->type == ADDR_DATASOURCE || pobj->type == ADDR_ITEM_FOLDER ) { @@ -1426,12 +1427,18 @@ static void addressbook_del_clicked(GtkButton *button, gpointer data) _("Really delete the group(s)?\n" "The addresses it contains will not be lost."), GTK_STOCK_CANCEL, "+"GTK_STOCK_DELETE, NULL ); - if( aval != G_ALERTALTERNATE ) return; + if( aval != G_ALERTALTERNATE ) { + gtk_clist_thaw(GTK_CLIST(addrbook.clist)); + return; + } } else { aval = alertpanel( _("Delete address(es)"), _("Really delete the address(es)?"), GTK_STOCK_CANCEL, "+"GTK_STOCK_DELETE, NULL ); - if( aval != G_ALERTALTERNATE ) return; + if( aval != G_ALERTALTERNATE ) { + gtk_clist_freeze(GTK_CLIST(addrbook.clist)); + return; + } } node = list; @@ -1499,6 +1506,7 @@ static void addressbook_del_clicked(GtkButton *button, gpointer data) addrbook_set_dirty(abf, TRUE); addressbook_export_to_file(); addressbook_list_menu_setup(); + gtk_clist_thaw(GTK_CLIST(addrbook.clist)); return; } else if( pobj->type == ADDR_ITEM_GROUP ) { @@ -1529,12 +1537,14 @@ static void addressbook_del_clicked(GtkButton *button, gpointer data) addrbook_set_dirty(abf, TRUE); addressbook_export_to_file(); addressbook_list_menu_setup(); + gtk_clist_thaw(GTK_CLIST(addrbook.clist)); return; } gtk_ctree_node_set_row_data( clist, nodeList, NULL ); gtk_ctree_remove_node( clist, nodeList ); + gtk_clist_freeze(GTK_CLIST(addrbook.clist)); } static void addressbook_reg_clicked(GtkButton *button, gpointer data) @@ -3335,9 +3345,7 @@ static void addressbook_edit_address( gpointer data, guint action, GtkWidget *wi static void addressbook_delete_address_cb(gpointer data, guint action, GtkWidget *widget) { - gtk_clist_freeze(GTK_CLIST(addrbook.clist)); addressbook_del_clicked(NULL, NULL); - gtk_clist_thaw(GTK_CLIST(addrbook.clist)); } static void close_cb(gpointer data, guint action, GtkWidget *widget)