diff options
author | suzhe@chromium.org <suzhe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-26 01:15:28 +0000 |
---|---|---|
committer | suzhe@chromium.org <suzhe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-26 01:15:28 +0000 |
commit | 23ce6e01ad8be836a2555ca738a63dd4c4e26da1 (patch) | |
tree | bc17774a68f5874fc10a095b944154475747dea0 /chrome | |
parent | f9b57529346b1863e52b663702083a616922e0a1 (diff) | |
download | chromium_src-23ce6e01ad8be836a2555ca738a63dd4c4e26da1.zip chromium_src-23ce6e01ad8be836a2555ca738a63dd4c4e26da1.tar.gz chromium_src-23ce6e01ad8be836a2555ca738a63dd4c4e26da1.tar.bz2 |
Only send unprocessed key events upwards if the RenderWidgetHost is not hidden.
BUG=36661 Ctrl-1 gets queued while Ctrl-tab doesn't
TEST=See bug report.
Review URL: http://codereview.chromium.org/660069
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40085 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/renderer_host/render_widget_host.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host.cc b/chrome/browser/renderer_host/render_widget_host.cc index dcb348c..ec43fe9 100644 --- a/chrome/browser/renderer_host/render_widget_host.cc +++ b/chrome/browser/renderer_host/render_widget_host.cc @@ -1016,7 +1016,10 @@ void RenderWidgetHost::ProcessKeyboardEventAck(int type, bool processed) { NativeWebKeyboardEvent front_item = key_queue_.front(); key_queue_.pop_front(); - if (!processed) { + // We only send unprocessed key event upwards if we are not hidden, + // because the user has moved away from us and no longer expect any effect + // of this key event. + if (!processed && !is_hidden_) { UnhandledKeyboardEvent(front_item); // WARNING: This RenderWidgetHost can be deallocated at this point |