Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(103)

Issue 2853623002: [refactor] Fix autofill features for payments when the form is inside an OOPIF (Closed)

Created:
3 years, 7 months ago by EhsanK
Modified:
3 years, 7 months ago
Reviewers:
CC:
chromium-reviews
Target Ref:
refs/branch-heads/3071
Project:
chromium
Visibility:
Public.

Description

[refactor] Fix autofill features for payments when the form is inside an OOPIF Currently, clicking into a credit card information <input> field inside an OOPIF does not pop up the autofill window. The root cause is simply because the call to RenderWidget::FocusChangeComplete() is dropped for OOPIFs. Moreover, for the main frame, this call is forwarded throught RenderViewObserver calls to the corresponding PageClickTracker. On the other hand, both PageClickTracker and AutofillAgent use a internal Legacy class to observe RenderView for updates in element focus and mouse down down inside a node. This is unfortunate given that the actual classes are RenderFrameObservers. This CL will make the following changes: A) FocusChangeComplete: This call is now forwarded to the observers of the RenderWidget which are RenderFrames. They will then notify their own observers, e.g., AutofillAgent and PageClickTracker. In line with this, the Legacy classes inside these classes will be removed. Also, there is no longer a need for RenderViewImpl::RenderWidgetFocusChangeComplete. B) MouseDown: Currently, in response to a left mouse button down or a gesture tap, ChromeClient notifies the WebViewClient (RenderViewImpl). This is solely used in PageClickTracker. This CL will remove the call from WebViewClient to the WebWidgetClient (RenderWidget) which similarly to FocusChangeComplete, will be forwarded to the observer RenderFrames and eventually the RenderFrameObservers. The change in A) will also fix a bug with credit card payment autofill in OOPIFs. BUG=712754, 703800, 583347, 433486 Review-Url: https://codereview.chromium.org/2766053002 Cr-Commit-Position: refs/heads/master@{#466078} (cherry picked from commit 27ca69b1e049f9f86e15f34420eeef224335f075) Review-Url: https://codereview.chromium.org/2853623002 . Cr-Commit-Position: refs/branch-heads/3071@{#304} Cr-Branched-From: a106f0abbf69dad349d4aaf4bcc4f5d376dd2377-refs/heads/master@{#464641} Committed: https://chromium.googlesource.com/chromium/src/+/ca19e7c02d4e92fbf88d3d52b25d1e5760e408eb

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+148 lines, -198 lines) Patch
M chrome/browser/autofill/autofill_interactive_uitest.cc View 1 chunk +36 lines, -0 lines 0 comments Download
M chrome/renderer/autofill/page_click_tracker_browsertest.cc View 3 chunks +8 lines, -6 lines 0 comments Download
M components/autofill/content/renderer/autofill_agent.h View 7 chunks +11 lines, -31 lines 0 comments Download
M components/autofill/content/renderer/autofill_agent.cc View 7 chunks +28 lines, -52 lines 0 comments Download
M components/autofill/content/renderer/page_click_tracker.h View 3 chunks +13 lines, -29 lines 0 comments Download
M components/autofill/content/renderer/page_click_tracker.cc View 5 chunks +13 lines, -38 lines 0 comments Download
M content/public/renderer/render_view_observer.h View 1 chunk +0 lines, -7 lines 0 comments Download
M content/renderer/render_view_impl.h View 2 chunks +0 lines, -2 lines 0 comments Download
M content/renderer/render_view_impl.cc View 6 chunks +13 lines, -14 lines 0 comments Download
M content/renderer/render_widget.cc View 2 chunks +10 lines, -2 lines 0 comments Download
M content/renderer/render_widget_owner_delegate.h View 1 chunk +1 line, -2 lines 0 comments Download
M third_party/WebKit/Source/core/input/EventHandler.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/input/GestureManager.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/page/ChromeClient.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/web/ChromeClientImpl.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/web/ChromeClientImpl.cpp View 1 chunk +7 lines, -3 lines 0 comments Download
M third_party/WebKit/public/web/WebAutofillClient.h View 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/public/web/WebViewClient.h View 1 chunk +0 lines, -8 lines 0 comments Download

Messages

Total messages: 2 (1 generated)
EhsanK
3 years, 7 months ago (2017-04-28 21:46:29 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
ca19e7c02d4e92fbf88d3d52b25d1e5760e408eb.

Powered by Google App Engine
This is Rietveld 408576698