diff options
author | xiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-06 16:31:40 +0000 |
---|---|---|
committer | xiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-06 16:31:40 +0000 |
commit | c80703e78d29efa140ec68078e901c1f523ac0fc (patch) | |
tree | 98cf257f0fe205bace548c1e38a515f3c52eade3 /views | |
parent | 24b5d5bfbf8272f7f8602c652674b49ffd0b2794 (diff) | |
download | chromium_src-c80703e78d29efa140ec68078e901c1f523ac0fc.zip chromium_src-c80703e78d29efa140ec68078e901c1f523ac0fc.tar.gz chromium_src-c80703e78d29efa140ec68078e901c1f523ac0fc.tar.bz2 |
Dispatch key event to bindings processing.
This properly activates the default widget on a GtkWindow.
BUG=chromium-os:4005
TEST=Default button of hosted native dialogs in ChromeOS should work.
Review URL: http://codereview.chromium.org/3087011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55232 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views')
-rw-r--r-- | views/widget/widget_gtk.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/views/widget/widget_gtk.cc b/views/widget/widget_gtk.cc index 42aac38..1f7afb2 100644 --- a/views/widget/widget_gtk.cc +++ b/views/widget/widget_gtk.cc @@ -1182,6 +1182,10 @@ gboolean WidgetGtk::OnKeyEvent(GtkWidget* widget, GdkEventKey* event) { if (!handled) handled = HandleKeyboardEvent(event); + // Dispatch the key event for bindings processing. + if (!handled && GTK_IS_WINDOW(widget)) + handled = gtk_bindings_activate_event(GTK_OBJECT(widget), event); + // Always return true for toplevel window to prevents GtkWindow's default key // event handler. return GTK_IS_WINDOW(widget) ? true : handled; |