2005-10-16 [colin] 1.9.15cvs53
authorColin Leroy <colin@colino.net>
Sun, 16 Oct 2005 12:33:48 +0000 (12:33 +0000)
committerColin Leroy <colin@colino.net>
Sun, 16 Oct 2005 12:33:48 +0000 (12:33 +0000)
* src/addressbook.c
Fix flicker

ChangeLog-gtk2.claws
PATCHSETS
configure.ac
src/addressbook.c

index dc48a76eec90e43d14b5090196af2908522d4f5d..db73da0ef4e2d1258bab2b750016c4eb114835dc 100644 (file)
@@ -1,3 +1,8 @@
+2005-10-16 [colin]     1.9.15cvs53
+
+       * src/addressbook.c
+               Fix flicker
+
 2005-10-16 [wwp]       1.9.15cvs52
 
        * src/addressbook.c
index db072ec1a6acd44d4803e86a1cefca848b20492e..6bcff12bee9f87ea4727367f277676a0ca39be64 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.83.2.44 -r 1.83.2.45 src/mimeview.c;  cvs diff -u -r 1.395.2.138 -r 1.395.2.139 src/summaryview.c;  cvs diff -u -r 1.96.2.78 -r 1.96.2.79 src/textview.c;  ) > 1.9.15cvs50.patchset
 ( cvs diff -u -r 1.9.2.10 -r 1.9.2.11 src/plugins/clamav/clamav_plugin_gtk.c;  cvs diff -u -r 1.23.2.13 -r 1.23.2.14 src/plugins/spamassassin/spamassassin_gtk.c;  ) > 1.9.15cvs51.patchset
 ( cvs diff -u -r 1.60.2.34 -r 1.60.2.35 src/addressbook.c;  cvs diff -u -r 1.14.2.11 -r 1.14.2.12 src/editaddress.c;  cvs diff -u -r 1.204.2.62 -r 1.204.2.63 src/prefs_common.c;  cvs diff -u -r 1.103.2.32 -r 1.103.2.33 src/prefs_common.h;  ) > 1.9.15cvs52.patchset
+( cvs diff -u -r 1.60.2.35 -r 1.60.2.36 src/addressbook.c;  ) > 1.9.15cvs53.patchset
index 77d69cbe7dcde8facdf11d6131914a45201438d4..7171c924fbbc58e58d4a01792ea87869b19e4159 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=15
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=52
+EXTRA_VERSION=53
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 53ddd30077620997aa2ac4d2940546b86ad5f5b0..b63e061852937b231563d16b74389064f44df351 100644 (file)
@@ -180,7 +180,7 @@ static void addressbook_lup_clicked         (GtkButton      *button,
 static void addressbook_close_clicked          (GtkButton      *button,
                                                 gpointer       data);
 
-static gboolean addressbook_tree_selected      (GtkCTree       *ctree,
+static void addressbook_tree_selected  (GtkCTree       *ctree,
                                                 GtkCTreeNode   *node,
                                                 gint            column,
                                                 gpointer        data);
@@ -1494,7 +1494,7 @@ static void addressbook_list_menu_setup( void );
  * \param column Column number where selected occurred.
  * \param data   Pointer to user data.
  */
-static gboolean addressbook_tree_selected(GtkCTree *ctree, GtkCTreeNode *node,
+static void addressbook_tree_selected(GtkCTree *ctree, GtkCTreeNode *node,
                                      gint column, gpointer data)
 {
        AddressObject *obj = NULL;
@@ -1510,7 +1510,7 @@ static gboolean addressbook_tree_selected(GtkCTree *ctree, GtkCTreeNode *node,
 
        if( addrbook.clist ) gtk_clist_clear( GTK_CLIST(addrbook.clist) );
        if( node ) obj = gtk_ctree_node_get_row_data( ctree, node );
-       if( obj == NULL ) return FALSE;
+       if( obj == NULL ) return;
 
        addrbook.opened = node;
 
@@ -1519,9 +1519,9 @@ static gboolean addressbook_tree_selected(GtkCTree *ctree, GtkCTreeNode *node,
                static gboolean tVal = TRUE;
 
                ads = ADAPTER_DSOURCE(obj);
-               if( ads == NULL ) return FALSE;
+               if( ads == NULL ) return;
                ds = ads->dataSource;
-               if( ds == NULL ) return FALSE;          
+               if( ds == NULL ) return;                
 
                if( addrindex_ds_get_modify_flag( ds ) ) {
                        addrindex_ds_read_data( ds );
@@ -1556,7 +1556,13 @@ static gboolean addressbook_tree_selected(GtkCTree *ctree, GtkCTreeNode *node,
        }
 
        /* Update address list */
+       g_signal_handlers_block_by_func
+               (G_OBJECT(ctree),
+                G_CALLBACK(addressbook_tree_selected), NULL);
        addressbook_set_clist( obj );
+       g_signal_handlers_unblock_by_func
+               (G_OBJECT(ctree),
+                G_CALLBACK(addressbook_tree_selected), NULL);
 
        /* Setup main menu selections */
        addressbook_menubar_set_sensitive( FALSE );
@@ -1565,7 +1571,7 @@ static gboolean addressbook_tree_selected(GtkCTree *ctree, GtkCTreeNode *node,
 
        addressbook_list_select_clear();
        addressbook_list_menu_setup();
-       return FALSE;
+       return;
 }
 
 /**
@@ -2105,8 +2111,6 @@ static gboolean addressbook_tree_button_pressed(GtkWidget *ctree,
        addressbook_menubar_set_sensitive( FALSE );
 
        if( gtk_clist_get_selection_info( clist, event->x, event->y, &row, &column ) ) {
-               gtk_clist_select_row( clist, row, column );
-               
                gtkut_clist_set_focus_row(clist, row);
                obj = gtk_clist_get_row_data( clist, row );
        }
@@ -2203,8 +2207,6 @@ static gboolean addressbook_tree_button_released(GtkWidget *ctree,
                                                 GdkEventButton *event,
                                                 gpointer data)
 {
-       gtk_sctree_select( GTK_SCTREE(addrbook.ctree), addrbook.opened);
-       
        gtkut_ctree_set_focus_row(GTK_CTREE(addrbook.ctree), addrbook.opened);
        return FALSE;
 }