Mailing List Archive

r19443 - in projects/haf/trunk/gtk+: . gtk
Author: kris
Date: 2009-10-15 13:59:58 +0300 (Thu, 15 Oct 2009)
New Revision: 19443

Modified:
projects/haf/trunk/gtk+/ChangeLog
projects/haf/trunk/gtk+/gtk/gtktreeview.c
Log:
2009-10-15 Kristian Rietveld <kris@lanedo.com>

Fixes: NB#110430 - Failed assertion in _gtk_rbtree_node_find_offset()

* gtk/gtktreeview.c (ensure_unhighlighted): new function, analogous
to ensure_unprelighted(),
(gtk_tree_view_row_deleted): call ensure_unhighlighted() and
free_queued_actions() just after the call to ensure_unprelighted(),
(gtk_tree_view_rows_reordered): likewise.



Modified: projects/haf/trunk/gtk+/ChangeLog
===================================================================
--- projects/haf/trunk/gtk+/ChangeLog 2009-10-14 10:11:48 UTC (rev 19442)
+++ projects/haf/trunk/gtk+/ChangeLog 2009-10-15 10:59:58 UTC (rev 19443)
@@ -1,3 +1,13 @@
+2009-10-15 Kristian Rietveld <kris@lanedo.com>
+
+ Fixes: NB#110430 - Failed assertion in _gtk_rbtree_node_find_offset()
+
+ * gtk/gtktreeview.c (ensure_unhighlighted): new function, analogous
+ to ensure_unprelighted(),
+ (gtk_tree_view_row_deleted): call ensure_unhighlighted() and
+ free_queued_actions() just after the call to ensure_unprelighted(),
+ (gtk_tree_view_rows_reordered): likewise.
+
2009-10-09 Michael Natterer <mitch@lanedo.com>

* debian/changelog: Release 2.14.7-1maemo13

Modified: projects/haf/trunk/gtk+/gtk/gtktreeview.c
===================================================================
--- projects/haf/trunk/gtk+/gtk/gtktreeview.c 2009-10-14 10:11:48 UTC (rev 19442)
+++ projects/haf/trunk/gtk+/gtk/gtktreeview.c 2009-10-15 10:59:58 UTC (rev 19443)
@@ -4022,9 +4022,27 @@
g_assert (tree_view->priv->prelight_node == NULL);
}

+#ifdef MAEMO_CHANGES
+static void
+ensure_unhighlighted (GtkTreeView *tree_view)
+{
+ /* Unconditionally unhighlight */
+ if (tree_view->priv->highlighted_node)
+ {
+ _gtk_tree_view_queue_draw_node (tree_view,
+ tree_view->priv->highlighted_tree,
+ tree_view->priv->highlighted_node,
+ NULL);

+ tree_view->priv->highlighted_tree = NULL;
+ tree_view->priv->highlighted_node = NULL;
+ }
+}
+#endif


+
+
/* Our motion arrow is either a box (in the case of the original spot)
* or an arrow. It is expander_size wide.
*/
@@ -9870,13 +9888,9 @@
ensure_unprelighted (tree_view);

#ifdef MAEMO_CHANGES
- if (node == tree_view->priv->highlighted_node
- && tree == tree_view->priv->highlighted_tree)
- {
- tree_view->priv->highlighted_node = NULL;
- tree_view->priv->highlighted_tree = NULL;
- }
-#endif /* MAEMO_CHANGES */
+ free_queued_actions (tree_view);
+ ensure_unhighlighted (tree_view);
+#endif

/* Cancel editting if we've started */
gtk_tree_view_stop_editing (tree_view, TRUE);
@@ -9993,6 +10007,11 @@
/* we need to be unprelighted */
ensure_unprelighted (tree_view);

+#ifdef MAEMO_CHANGES
+ free_queued_actions (tree_view);
+ ensure_unhighlighted (tree_view);
+#endif
+
/* clear the timeout */
cancel_arrow_animation (tree_view);


_______________________________________________
maemo-commits mailing list
maemo-commits@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-commits