diff options
author | avi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-26 15:36:37 +0000 |
---|---|---|
committer | avi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-26 15:36:37 +0000 |
commit | 6d850f189679e9e60e8ef3135c037915f10cd6a9 (patch) | |
tree | 3b0c8ba2c5672c15880ff774b6d368877e4d8b3f /webkit/tools | |
parent | b8e1f95cf888bba24fe3ef1d357474f23091235d (diff) | |
download | chromium_src-6d850f189679e9e60e8ef3135c037915f10cd6a9.zip chromium_src-6d850f189679e9e60e8ef3135c037915f10cd6a9.tar.gz chromium_src-6d850f189679e9e60e8ef3135c037915f10cd6a9.tar.bz2 |
Reverting key change (again); this breaks every keyboard layout test there is. Will fix and recommit.
Review URL: http://codereview.chromium.org/28186
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10469 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/tools')
-rw-r--r-- | webkit/tools/test_shell/event_sending_controller.cc | 10 | ||||
-rw-r--r-- | webkit/tools/test_shell/keyboard_unittest.cc | 9 | ||||
-rw-r--r-- | webkit/tools/test_shell/mac/webwidget_host.mm | 10 | ||||
-rw-r--r-- | webkit/tools/test_shell/webwidget_host_gtk.cc | 10 |
4 files changed, 29 insertions, 10 deletions
diff --git a/webkit/tools/test_shell/event_sending_controller.cc b/webkit/tools/test_shell/event_sending_controller.cc index 6409433..76e8a06 100644 --- a/webkit/tools/test_shell/event_sending_controller.cc +++ b/webkit/tools/test_shell/event_sending_controller.cc @@ -382,20 +382,16 @@ void EventSendingController::keyDown( // WebKit/WebKitTools/DumpRenderTree/win. We may also need // to generate a keyChar event in certain cases. WebKeyboardEvent event_down, event_up; -#if defined(OS_WIN) - event_down.type = WebInputEvent::RAW_KEY_DOWN; -#else event_down.type = WebInputEvent::KEY_DOWN; -#endif event_down.modifiers = 0; - event_down.windows_key_code = code; -#if defined(OS_MAC) || defined(OS_LINUX) + event_down.key_code = code; +#if defined(OS_LINUX) // TODO(deanm): This code is a confusing mix of different platform key // codes. Since we're not working with a GDK event, we can't use our // GDK -> WebKit converter, which means the Linux specific extra |text| // field goes uninitialized. I don't know how to correctly calculate this // field, but for now we will at least initialize it, even if it's wrong. - event_down.text[0] = code; + event_down.text = code; #endif if (args.size() >= 2 && (args[1].isObject() || args[1].isString())) diff --git a/webkit/tools/test_shell/keyboard_unittest.cc b/webkit/tools/test_shell/keyboard_unittest.cc index 4943341..673edd1 100644 --- a/webkit/tools/test_shell/keyboard_unittest.cc +++ b/webkit/tools/test_shell/keyboard_unittest.cc @@ -46,10 +46,15 @@ class KeyboardTest : public testing::Test { void SetupKeyDownEvent(WebKeyboardEvent* keyboard_event, char key_code, int modifiers) { - keyboard_event->windows_key_code = key_code; + keyboard_event->key_code = key_code; keyboard_event->modifiers = modifiers; keyboard_event->type = WebInputEvent::KEY_DOWN; - keyboard_event->text[0] = key_code; +#if defined(OS_LINUX) + keyboard_event->text = key_code; +#elif defined(OS_MACOSX) + keyboard_event->text.clear(); + keyboard_event->text.push_back(key_code); +#endif } // Like InterpretKeyEvent, but with pressing down OSModifier+|key_code|. diff --git a/webkit/tools/test_shell/mac/webwidget_host.mm b/webkit/tools/test_shell/mac/webwidget_host.mm index b99aca7..dc1b6c6 100644 --- a/webkit/tools/test_shell/mac/webwidget_host.mm +++ b/webkit/tools/test_shell/mac/webwidget_host.mm @@ -221,7 +221,15 @@ void WebWidgetHost::MouseEvent(NSEvent *event) { case WebInputEvent::MOUSE_LEAVE: TrackMouseLeave(false); break; - default: + case WebInputEvent::MOUSE_DOWN: + break; + case WebInputEvent::MOUSE_UP: + break; + case WebInputEvent::MOUSE_DOUBLE_CLICK: + case WebInputEvent::MOUSE_WHEEL: + case WebInputEvent::KEY_DOWN: + case WebInputEvent::KEY_UP: + case WebInputEvent::CHAR: break; } webwidget_->HandleInputEvent(&web_event); diff --git a/webkit/tools/test_shell/webwidget_host_gtk.cc b/webkit/tools/test_shell/webwidget_host_gtk.cc index 57d88d8..c3b5cb6 100644 --- a/webkit/tools/test_shell/webwidget_host_gtk.cc +++ b/webkit/tools/test_shell/webwidget_host_gtk.cc @@ -148,6 +148,16 @@ class WebWidgetHostGtkWidget { WebKeyboardEvent wke(event); host->webwidget()->HandleInputEvent(&wke); + // The WebKeyboardEvent model, when holding down a key, is: + // KEY_DOWN, CHAR, (repeated CHAR as key repeats,) KEY_UP + // The GDK model for the same sequence is just: + // KEY_PRESS, (repeated KEY_PRESS as key repeats,) KEY_RELEASE + // So we must simulate a CHAR event for every key press. + if (event->type == GDK_KEY_PRESS) { + wke.type = WebKeyboardEvent::CHAR; + host->webwidget()->HandleInputEvent(&wke); + } + return FALSE; } |