showVirtualKeyboard() should be removed from WebViewClient. |
||
Issue descriptionThis method is eventually executed on RenderWidget. In order to make IME properly work with OOPIFs (specifically, on Android), we should remove the implementation from WebViewClient and RenderViewImpl and instead, let ChromeClientImpl call the WebWidgetClient::showVirtualKeyboard. The WebWidgetClient is the one for the focused frame.
,
Mar 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1e2d08a7fc2db1297a7f2a28c40659af534c309e commit 1e2d08a7fc2db1297a7f2a28c40659af534c309e Author: ekaramad <ekaramad@chromium.org> Date: Thu Mar 09 19:06:49 2017 Remove WebViewClient::showVirtualKeyboardOnElementFocus() When an <input> is focused by user gesture, ChildClientImpl calls this method on RenderViewImpl to make sure the proper TextInputState to show IME keyboard is sent to the browser (used for Android). However, for OOPIFs it does not make sense to call this on RenderView and rather, the call should be directed to the RenderWidget corresponding to the local root of the focused element/frame. This CL removes the current override from RenderViewImpl/WebViewClient and directs the call to the frameWidget() of the focused frame instead. This CL also adds a WebFrameTest. BUG= 578168 , 682009 Review-Url: https://codereview.chromium.org/2709813007 Cr-Commit-Position: refs/heads/master@{#455820} [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/content/renderer/render_view_impl.cc [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/content/renderer/render_view_impl.h [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/Source/core/dom/Element.cpp [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/Source/core/page/ChromeClient.h [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/Source/web/ChromeClientImpl.cpp [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/Source/web/ChromeClientImpl.h [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/Source/web/tests/ImeOnFocusTest.cpp [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/Source/web/tests/WebFrameTest.cpp [modify] https://crrev.com/1e2d08a7fc2db1297a7f2a28c40659af534c309e/third_party/WebKit/public/web/WebViewClient.h
,
Mar 10 2017
Marking as fixed baed on comment #2. |
||
►
Sign in to add a comment |
||
Comment 1 by ekaramad@chromium.org
, Feb 21 2017Components: UI>Input>Text Internals>Sandbox>SiteIsolation
Labels: OS-Android
Status: Started (was: Assigned)