| Index: content/renderer/render_widget.cc
|
| diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
|
| index c2eefbd766a8c00c252c1c06c249675af13d37fa..a22d374e6f796eb808d1c81c466c72b6cef5fc5e 100644
|
| --- a/content/renderer/render_widget.cc
|
| +++ b/content/renderer/render_widget.cc
|
| @@ -1230,8 +1230,9 @@ void RenderWidget::OnHandleInputEvent(const blink::WebInputEvent* input_event,
|
| // Show the virtual keyboard if enabled and a user gesture triggers a focus
|
| // change.
|
| if (processed && (input_event->type == WebInputEvent::TouchEnd ||
|
| - input_event->type == WebInputEvent::MouseUp))
|
| + input_event->type == WebInputEvent::MouseUp)) {
|
| UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_IME);
|
| + }
|
| #endif
|
|
|
| if (!prevent_default) {
|
| @@ -1242,6 +1243,16 @@ void RenderWidget::OnHandleInputEvent(const blink::WebInputEvent* input_event,
|
| if (WebInputEvent::isTouchEventType(input_event->type))
|
| DidHandleTouchEvent(*(static_cast<const WebTouchEvent*>(input_event)));
|
| }
|
| +
|
| +// TODO(rouslan): Fix ChromeOS and Windows 8 behavior of autofill popup with
|
| +// virtual keyboard.
|
| +#if !defined(OS_ANDROID)
|
| + // Virtual keyboard is not supported, so react to focus change immediately.
|
| + if (processed && (input_event->type == WebInputEvent::TouchEnd ||
|
| + input_event->type == WebInputEvent::MouseUp)) {
|
| + FocusChangeComplete();
|
| + }
|
| +#endif
|
| }
|
|
|
| void RenderWidget::OnCursorVisibilityChange(bool is_visible) {
|
| @@ -1697,6 +1708,12 @@ void RenderWidget::OnShowImeIfNeeded() {
|
| #if defined(OS_ANDROID) || defined(USE_AURA)
|
| UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME);
|
| #endif
|
| +
|
| +// TODO(rouslan): Fix ChromeOS and Windows 8 behavior of autofill popup with
|
| +// virtual keyboard.
|
| +#if !defined(OS_ANDROID)
|
| + FocusChangeComplete();
|
| +#endif
|
| }
|
|
|
| #if defined(OS_ANDROID)
|
|
|