diff options
author | avi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-26 14:38:40 +0000 |
---|---|---|
committer | avi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-26 14:38:40 +0000 |
commit | 35976fe0742b955ce427baeb2e5e313837b3d27d (patch) | |
tree | d31ad5128d824195a0193adc756aad39a00f2046 /chrome | |
parent | ea7d84fc40389fa60842d66e2eb39d9f23159bfa (diff) | |
download | chromium_src-35976fe0742b955ce427baeb2e5e313837b3d27d.zip chromium_src-35976fe0742b955ce427baeb2e5e313837b3d27d.tar.gz chromium_src-35976fe0742b955ce427baeb2e5e313837b3d27d.tar.bz2 |
Fixing WebKeyboardEvent. For reals this time.
A recommit of http://codereview.chromium.org/27056 .
Review URL: http://codereview.chromium.org/28136
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10464 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
5 files changed, 9 insertions, 12 deletions
diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc index 35fd1fd..a34e1f4 100644 --- a/chrome/browser/renderer_host/render_view_host.cc +++ b/chrome/browser/renderer_host/render_view_host.cc @@ -1206,7 +1206,8 @@ void RenderViewHost::UnhandledInputEvent(const WebInputEvent& event) { // TODO(brettw) why do we have to filter these types of events here. Can't // the renderer just send us the ones we care abount, or maybe the view // should be able to decide which ones it wants or not? - if ((event.type == WebInputEvent::KEY_DOWN) || + if ((event.type == WebInputEvent::RAW_KEY_DOWN) || + (event.type == WebInputEvent::KEY_DOWN) || (event.type == WebInputEvent::CHAR)) { view->HandleKeyboardEvent( static_cast<const WebKeyboardEvent&>(event)); diff --git a/chrome/browser/renderer_host/render_widget_host.cc b/chrome/browser/renderer_host/render_widget_host.cc index 7e0c465..4ac0270 100644 --- a/chrome/browser/renderer_host/render_widget_host.cc +++ b/chrome/browser/renderer_host/render_widget_host.cc @@ -292,8 +292,8 @@ void RenderWidgetHost::ForwardWheelEvent( void RenderWidgetHost::ForwardKeyboardEvent(const WebKeyboardEvent& key_event) { if (key_event.type == WebKeyboardEvent::CHAR && - (key_event.key_code == base::VKEY_RETURN || - key_event.key_code == base::VKEY_SPACE)) { + (key_event.windows_key_code == base::VKEY_RETURN || + key_event.windows_key_code == base::VKEY_SPACE)) { OnEnterOrSpace(); } diff --git a/chrome/browser/renderer_host/render_widget_host_view_gtk.cc b/chrome/browser/renderer_host/render_widget_host_view_gtk.cc index 4b5f19e..b6a93e5 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_gtk.cc +++ b/chrome/browser/renderer_host/render_widget_host_view_gtk.cc @@ -79,13 +79,6 @@ class RenderWidgetHostViewGtkWidget { RenderWidgetHostViewGtk* host_view) { WebKeyboardEvent wke(event); host_view->GetRenderWidgetHost()->ForwardKeyboardEvent(wke); - - // See note in webwidget_host_gtk.cc::HandleKeyPress(). - if (event->type == GDK_KEY_PRESS) { - wke.type = WebKeyboardEvent::CHAR; - host_view->GetRenderWidgetHost()->ForwardKeyboardEvent(wke); - } - return FALSE; } diff --git a/chrome/browser/tab_contents/web_contents_view_win.cc b/chrome/browser/tab_contents/web_contents_view_win.cc index 73602d7..b4e03dd 100644 --- a/chrome/browser/tab_contents/web_contents_view_win.cc +++ b/chrome/browser/tab_contents/web_contents_view_win.cc @@ -259,13 +259,13 @@ void WebContentsViewWin::HandleKeyboardEvent(const WebKeyboardEvent& event) { // The renderer returned a keyboard event it did not process. This may be // a keyboard shortcut that we have to process. - if (event.type == WebInputEvent::KEY_DOWN) { + if (event.type == WebInputEvent::RAW_KEY_DOWN) { views::FocusManager* focus_manager = views::FocusManager::GetFocusManager(GetHWND()); // We may not have a focus_manager at this point (if the tab has been // switched by the time this message returned). if (focus_manager) { - views::Accelerator accelerator(event.key_code, + views::Accelerator accelerator(event.windows_key_code, (event.modifiers & WebInputEvent::SHIFT_KEY) == WebInputEvent::SHIFT_KEY, (event.modifiers & WebInputEvent::CTRL_KEY) == diff --git a/chrome/common/render_messages.h b/chrome/common/render_messages.h index 7fa88de..c56ba49 100755 --- a/chrome/common/render_messages.h +++ b/chrome/common/render_messages.h @@ -495,6 +495,9 @@ struct ParamTraits<WebInputEvent::Type> { case WebInputEvent::MOUSE_WHEEL: type = L"MOUSE_WHEEL"; break; + case WebInputEvent::RAW_KEY_DOWN: + type = L"RAW_KEY_DOWN"; + break; case WebInputEvent::KEY_DOWN: type = L"KEY_DOWN"; break; |