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.
This commit is contained in:
Kristian Rietveld
2009-07-30 20:22:45 +02:00
parent bce2a5173d
commit a79ef0866b

View File

@ -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)