summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2004-11-11 18:13:19 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2004-11-11 18:13:19 +0000
commit41628edebb199222c1d3af95af04ec6f1a017b7a (patch)
tree1a11a6b5d9fb6e3172a7b52926ccde9b6521704d /ChangeLog
parent7b1c2c1bea43085c4218c288a5217c1daebce199 (diff)
downloadgtk+-41628edebb199222c1d3af95af04ec6f1a017b7a.tar.gz
Considerably speed up GtkUIManager, by changing the semantics of the dirty
2004-11-11 Matthias Clasen <mclasen@redhat.com> Considerably speed up GtkUIManager, by changing the semantics of the dirty flag. It is now propagated up the tree, and update_node() doesn't descend into clean subtrees. (#143668, Dave Neary, Michael Natterer, Sven Neumann, fix proposed by Soeren Sandmann) * gtk/gtkuimanager.c (node_prepend_ui_reference): Only prepend a new node reference if the merge_id is different. Take a GNode, so we can walk up the tree, adjust all callers. (node_remove_ui_reference): Only mark a node dirty if the first ui reference is removed. Take a GNode here as well for consistency. (update_node): Don't descend into clean subtrees. (mark_node_dirty): New function to mark a node and its predecessors dirty.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog18
1 files changed, 18 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 19cab17482..bab240f7d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2004-11-11 Matthias Clasen <mclasen@redhat.com>
+
+ Considerably speed up GtkUIManager, by changing the semantics
+ of the dirty flag. It is now propagated up the tree, and
+ update_node() doesn't descend into clean subtrees. (#143668,
+ Dave Neary, Michael Natterer, Sven Neumann, fix proposed
+ by Soeren Sandmann)
+
+ * gtk/gtkuimanager.c (node_prepend_ui_reference): Only prepend
+ a new node reference if the merge_id is different. Take a GNode,
+ so we can walk up the tree, adjust all callers.
+ (node_remove_ui_reference): Only mark a node dirty if the first
+ ui reference is removed. Take a GNode here as well for
+ consistency.
+ (update_node): Don't descend into clean subtrees.
+ (mark_node_dirty): New function to mark a node and its
+ predecessors dirty.
+
Thu Nov 11 11:34:32 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserbutton.c (update_idler): return FALSE instead