[gimp/metadata-browser: 36/45] Avoid circular updating of widgets by blocking.



commit db44a29dcb829666410c556a30e562cb4afd2ebd
Author: Roman Joost <roman bromeco de>
Date:   Wed Oct 5 20:41:22 2011 +1000

    Avoid circular updating of widgets by blocking.
    
    If the user changes values in the treeview, we don't want that the
    widget updates the XMPModel again.

 plug-ins/metadata/gimpxmpmodelentry.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/plug-ins/metadata/gimpxmpmodelentry.c b/plug-ins/metadata/gimpxmpmodelentry.c
index b3ceb51..9637bf1 100644
--- a/plug-ins/metadata/gimpxmpmodelentry.c
+++ b/plug-ins/metadata/gimpxmpmodelentry.c
@@ -86,7 +86,15 @@ static void
 gimp_xmp_model_entry_set_text (GimpXmpModelWidget *widget,
                                const gchar        *tree_value)
 {
+  g_signal_handlers_block_by_func (widget,
+                                   gimp_xmp_model_entry_changed,
+                                   NULL);
+
   gtk_entry_set_text (GTK_ENTRY (widget), tree_value);
+
+  g_signal_handlers_unblock_by_func (widget,
+                                     gimp_xmp_model_entry_changed,
+                                     NULL);
 }
 
 static void


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]