gtk/gtkmenushell.c In enter/leave notify events, check that the crossing
2008-08-08 Cody Russell <bratsche@gnome.org> * gtk/gtkmenushell.c * gtk/gtkmenu.c: In enter/leave notify events, check that the crossing mode is not GTK_GRAB, GTK_UNGRAB, or STATE_CHANGED. Fixes regressions in menus caused by bug #56070. svn path=/trunk/; revision=21049
This commit is contained in:
committed by
Cody Russell
parent
56710ee7d7
commit
b2aaa9416d
@ -802,6 +802,11 @@ gtk_menu_shell_enter_notify (GtkWidget *widget,
|
||||
{
|
||||
GtkMenuShell *menu_shell = GTK_MENU_SHELL (widget);
|
||||
|
||||
if (event->mode == GDK_CROSSING_GTK_GRAB ||
|
||||
event->mode == GDK_CROSSING_GTK_UNGRAB ||
|
||||
event->mode == GDK_CROSSING_STATE_CHANGED)
|
||||
return TRUE;
|
||||
|
||||
if (menu_shell->active)
|
||||
{
|
||||
GtkWidget *menu_item;
|
||||
@ -867,6 +872,11 @@ static gint
|
||||
gtk_menu_shell_leave_notify (GtkWidget *widget,
|
||||
GdkEventCrossing *event)
|
||||
{
|
||||
if (event->mode == GDK_CROSSING_GTK_GRAB ||
|
||||
event->mode == GDK_CROSSING_GTK_GRAB ||
|
||||
event->mode == GDK_CROSSING_STATE_CHANGED)
|
||||
return TRUE;
|
||||
|
||||
if (GTK_WIDGET_VISIBLE (widget))
|
||||
{
|
||||
GtkMenuShell *menu_shell = GTK_MENU_SHELL (widget);
|
||||
|
||||
Reference in New Issue
Block a user