diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2014-11-26 15:30:52 +0100 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2014-11-26 15:30:52 +0100 |
commit | 50076ed95b2f9bd1bb2e8fbdd3ba0bffe4490804 (patch) | |
tree | f6e0bcbad5ebcfbb362c2e09c8b7233a2dc9946d /gtk/gtkpopover.c | |
parent | 05893dd5a95a4255488ab5757711eb6fcfc105c0 (diff) | |
download | gtk+-50076ed95b2f9bd1bb2e8fbdd3ba0bffe4490804.tar.gz |
popover: Send key events only to the focus widget
gtk_window_propagate_key_event() will run unstopped from the focus widget up to the
popover if GDK_EVENT_PROPAGATE was returned along the chain, resulting in infinite
recursion. This could be just triggered by pressing some modifier key on an entry...
Diffstat (limited to 'gtk/gtkpopover.c')
-rw-r--r-- | gtk/gtkpopover.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c index 241eef5e1f..38214c9239 100644 --- a/gtk/gtkpopover.c +++ b/gtk/gtkpopover.c @@ -1218,7 +1218,7 @@ gtk_popover_key_press (GtkWidget *widget, focus = gtk_window_get_focus (GTK_WINDOW (toplevel)); if (focus && gtk_widget_is_ancestor (focus, widget)) - return gtk_window_propagate_key_event (GTK_WINDOW (toplevel), event); + return gtk_widget_event (focus, (GdkEvent*) event); } return GDK_EVENT_PROPAGATE; |