| Index: content/renderer/render_widget.cc
|
| diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
|
| index f3e5a62786140b62f69e66cc9cb1a0c6fa96fb85..bb411d0c9fd379deb6dbaf31e27604c8e815d642 100644
|
| --- a/content/renderer/render_widget.cc
|
| +++ b/content/renderer/render_widget.cc
|
| @@ -1226,8 +1226,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) {
|
| @@ -1238,6 +1239,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) {
|
| @@ -1693,6 +1704,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)
|
|
|