| Index: content/browser/renderer_host/web_input_event_aura.cc
|
| diff --git a/content/browser/renderer_host/web_input_event_aura.cc b/content/browser/renderer_host/web_input_event_aura.cc
|
| index a4cf12b0e51041a305be9a491011f1d83cef90e9..69c8960fcd541a58f3376b0cc660bb8ce92b1566 100644
|
| --- a/content/browser/renderer_host/web_input_event_aura.cc
|
| +++ b/content/browser/renderer_host/web_input_event_aura.cc
|
| @@ -24,20 +24,16 @@ blink::WebKeyboardEvent MakeWebKeyboardEventFromNativeEvent(
|
| const base::NativeEvent& native_event);
|
| blink::WebGestureEvent MakeWebGestureEventFromNativeEvent(
|
| const base::NativeEvent& native_event);
|
| -#elif defined(USE_X11)
|
| -blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent(
|
| - ui::KeyEvent* event);
|
| -#elif defined(USE_OZONE)
|
| +#endif
|
| +#if defined(USE_X11) || defined(USE_OZONE)
|
| blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent(
|
| ui::KeyEvent* event) {
|
| - const base::NativeEvent& native_event = event->native_event();
|
| - ui::EventType type = ui::EventTypeFromNative(native_event);
|
| blink::WebKeyboardEvent webkit_event;
|
|
|
| webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
|
| webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
|
|
|
| - switch (type) {
|
| + switch (event->type()) {
|
| case ui::ET_KEY_PRESSED:
|
| webkit_event.type = event->is_char() ? blink::WebInputEvent::Char :
|
| blink::WebInputEvent::RawKeyDown;
|
| @@ -52,31 +48,16 @@ blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent(
|
| if (webkit_event.modifiers & blink::WebInputEvent::AltKey)
|
| webkit_event.isSystemKey = true;
|
|
|
| - wchar_t character = ui::KeyboardCodeFromNative(native_event);
|
| - webkit_event.windowsKeyCode = character;
|
| - webkit_event.nativeKeyCode = character;
|
| -
|
| - if (webkit_event.windowsKeyCode == ui::VKEY_RETURN)
|
| - webkit_event.unmodifiedText[0] = '\r';
|
| - else
|
| - webkit_event.unmodifiedText[0] = ui::GetCharacterFromKeyCode(
|
| - ui::KeyboardCodeFromNative(native_event),
|
| - ui::EventFlagsFromNative(native_event));
|
| -
|
| - if (webkit_event.modifiers & blink::WebInputEvent::ControlKey) {
|
| - webkit_event.text[0] = ui::GetControlCharacterForKeycode(
|
| - webkit_event.windowsKeyCode,
|
| - webkit_event.modifiers & blink::WebInputEvent::ShiftKey);
|
| - } else {
|
| - webkit_event.text[0] = webkit_event.unmodifiedText[0];
|
| - }
|
| + webkit_event.windowsKeyCode = event->GetLocatedWindowsKeyboardCode();
|
| + webkit_event.nativeKeyCode = event->platform_keycode();
|
| + webkit_event.unmodifiedText[0] = event->GetUnmodifiedText();
|
| + webkit_event.text[0] = event->GetText();
|
|
|
| webkit_event.setKeyIdentifierFromWindowsKeyCode();
|
|
|
| return webkit_event;
|
| }
|
| -#endif
|
| -#if defined(USE_X11) || defined(USE_OZONE)
|
| +
|
| blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
|
| ui::ScrollEvent* event) {
|
| blink::WebMouseWheelEvent webkit_event;
|
| @@ -240,9 +221,6 @@ blink::WebMouseWheelEvent MakeWebMouseWheelEvent(ui::ScrollEvent* event) {
|
| }
|
|
|
| blink::WebKeyboardEvent MakeWebKeyboardEvent(ui::KeyEvent* event) {
|
| - if (!event->HasNativeEvent())
|
| - return blink::WebKeyboardEvent();
|
| -
|
| // Windows can figure out whether or not to construct a RawKeyDown or a Char
|
| // WebInputEvent based on the type of message carried in
|
| // event->native_event(). X11 is not so fortunate, there is no separate
|
| @@ -250,6 +228,9 @@ blink::WebKeyboardEvent MakeWebKeyboardEvent(ui::KeyEvent* event) {
|
| // is_char() == true. We need to pass the ui::KeyEvent to the X11 function
|
| // to detect this case so the right event type can be constructed.
|
| #if defined(OS_WIN)
|
| + if (!event->HasNativeEvent())
|
| + return blink::WebKeyboardEvent();
|
| +
|
| // Key events require no translation by the aura system.
|
| return MakeWebKeyboardEventFromNativeEvent(event->native_event());
|
| #else
|
|
|