summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorsuzhe@chromium.org <suzhe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-26 01:15:28 +0000
committersuzhe@chromium.org <suzhe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-26 01:15:28 +0000
commit23ce6e01ad8be836a2555ca738a63dd4c4e26da1 (patch)
treebc17774a68f5874fc10a095b944154475747dea0 /chrome
parentf9b57529346b1863e52b663702083a616922e0a1 (diff)
downloadchromium_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.cc5
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