[gtk+] Bug 555109 – selection broken when typeahead active



commit a79ef0866bb14a31ad789c4a8750f66ec1d7ad64
Author: Kristian Rietveld <kris gtk org>
Date:   Thu Jul 30 20:22:45 2009 +0200

    Bug 555109 â?? selection broken when typeahead active
    
    gtk_tree_view_enter_notify() now "ignores" the synthesized crossing
    events.  The synthesized crossing events always have (0, 0) as
    coordinates, which messes things up.  This patch does not fix all issues,
    at least it makes the behavior much more reasonable again.  Watch bug
    555109 for further discussion on the issue.

 gtk/gtktreeview.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
index 2cd794b..f090a74 100644
--- a/gtk/gtktreeview.c
+++ b/gtk/gtktreeview.c
@@ -5473,6 +5473,12 @@ gtk_tree_view_enter_notify (GtkWidget        *widget,
   if (tree_view->priv->tree == NULL)
     return FALSE;
 
+  if (event->mode == GDK_CROSSING_GRAB ||
+      event->mode == GDK_CROSSING_GTK_GRAB ||
+      event->mode == GDK_CROSSING_GTK_UNGRAB ||
+      event->mode == GDK_CROSSING_STATE_CHANGED)
+    return TRUE;
+
   /* find the node internally */
   new_y = TREE_WINDOW_Y_TO_RBTREE_Y(tree_view, event->y);
   if (new_y < 0)



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