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

Issue 184103016: Autofill: Refactoring to support fetching password after a username is selected (Closed)

Created:
6 years, 9 months ago by Patrick Dubroy
Modified:
6 years, 8 months ago
CC:
chromium-reviews, benquan, jam, browser-components-watch_chromium.org, joi+watch-content_chromium.org, darin-cc_chromium.org, Dane Wallinga, dyu1, estade+watch_chromium.org, rouslan+autofillwatch_chromium.org
Visibility:
Public.

Description

Refactor password autofill to make it possible to delay fetching passwords from the OS password store (e.g., Keychain) until after the user has selected a username from the dropdown. Note that delayed fetching is not yet implemented; this is just a first step to make it possible. BUG=178358 R=avi@chromium.org, blundell@chromium.org, gcasto@chromium.org, isherman@chromium.org, nkostylev@chromium.org, palmer@chromium.org TBR=ben@chromium.org (for DEPS change) Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=265993

Patch Set 1 : #

Total comments: 6

Patch Set 2 : Re-upload #

Patch Set 3 : Address gcasto's comments. #

Total comments: 5

Patch Set 4 : Refactor PasswordAutofillManager in password_manager component. #

Total comments: 12

Patch Set 5 : Address gcasto's comments, and fix tests. #

Patch Set 6 : Merge with ToT #

Patch Set 7 : Get unit tests compiling. #

Total comments: 14

Patch Set 8 : Address gcasto's comments. #

Total comments: 29

Patch Set 9 : Address comments. #

Total comments: 9

Patch Set 10 : Merge with ToT. #

Patch Set 11 : Address isherman's comments. #

Total comments: 2

Patch Set 12 : Fix formatting nit. #

Patch Set 13 : Fix broken unit test. #

Patch Set 14 : Fix hopefully last broken unit test. #

Patch Set 15 : Fix compile failure on linux_chromium_chromeos_rel #

Patch Set 16 : Fix compile error on Chrome OS. #

Total comments: 4

Patch Set 17 : Nits #

Patch Set 18 : Merge with ToT. #

Patch Set 19 : Actually fix compile failure. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+667 lines, -505 lines) Patch
M chrome/browser/chromeos/login/simple_web_view_dialog.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +4 lines, -1 line 0 comments Download
M chrome/browser/chromeos/login/webui_login_view.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 2 chunks +4 lines, -1 line 0 comments Download
M chrome/browser/password_manager/chrome_password_manager_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +7 lines, -1 line 0 comments Download
M chrome/browser/password_manager/chrome_password_manager_client.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +15 lines, -2 lines 0 comments Download
M chrome/browser/password_manager/chrome_password_manager_client_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/ui/tab_helpers.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +3 lines, -1 line 0 comments Download
M chrome/renderer/autofill/password_autofill_agent_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 6 chunks +38 lines, -7 lines 0 comments Download
M components/autofill.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +0 lines, -2 lines 0 comments Download
M components/autofill/content/browser/content_autofill_driver.h View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -2 lines 0 comments Download
M components/autofill/content/browser/content_autofill_driver.cc View 1 2 3 4 5 6 7 8 9 2 chunks +0 lines, -15 lines 0 comments Download
M components/autofill/content/browser/content_autofill_driver_unittest.cc View 1 2 3 4 5 6 7 8 9 2 chunks +0 lines, -14 lines 0 comments Download
M components/autofill/content/common/autofill_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +5 lines, -3 lines 0 comments Download
M components/autofill/content/renderer/autofill_agent.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -1 line 0 comments Download
M components/autofill/content/renderer/autofill_agent.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +5 lines, -6 lines 0 comments Download
M components/autofill/content/renderer/password_autofill_agent.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +6 lines, -4 lines 0 comments Download
M components/autofill/content/renderer/password_autofill_agent.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +20 lines, -12 lines 0 comments Download
M components/autofill/core/browser/autofill_driver.h View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -5 lines 0 comments Download
M components/autofill/core/browser/autofill_external_delegate.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +0 lines, -19 lines 0 comments Download
M components/autofill/core/browser/autofill_external_delegate.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +1 line, -38 lines 0 comments Download
M components/autofill/core/browser/autofill_external_delegate_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -46 lines 0 comments Download
M components/autofill/core/browser/autofill_manager.h View 1 2 3 4 5 1 chunk +0 lines, -8 lines 0 comments Download
M components/autofill/core/browser/autofill_manager.cc View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -26 lines 0 comments Download
M components/autofill/core/browser/password_autofill_manager.h View 1 2 3 4 1 chunk +0 lines, -72 lines 0 comments Download
M components/autofill/core/browser/password_autofill_manager.cc View 1 2 3 4 1 chunk +0 lines, -90 lines 0 comments Download
M components/autofill/core/browser/password_autofill_manager_unittest.cc View 1 2 3 4 1 chunk +0 lines, -102 lines 0 comments Download
M components/autofill/core/browser/test_autofill_driver.h View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -2 lines 0 comments Download
M components/autofill/core/browser/test_autofill_driver.cc View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -4 lines 0 comments Download
M components/components_tests.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +1 line, -1 line 0 comments Download
M components/password_manager.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +2 lines, -0 lines 0 comments Download
M components/password_manager/DEPS View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M components/password_manager/content/browser/content_password_manager_driver.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +13 lines, -4 lines 0 comments Download
M components/password_manager/content/browser/content_password_manager_driver.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +25 lines, -2 lines 0 comments Download
A components/password_manager/core/browser/password_autofill_manager.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +101 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/password_autofill_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +177 lines, -0 lines 0 comments Download
A components/password_manager/core/browser/password_autofill_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +191 lines, -0 lines 0 comments Download
M components/password_manager/core/browser/password_form_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +3 lines, -0 lines 0 comments Download
M components/password_manager/core/browser/password_generation_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 5 chunks +10 lines, -0 lines 0 comments Download
M components/password_manager/core/browser/password_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +4 lines, -1 line 0 comments Download
M components/password_manager/core/browser/password_manager_driver.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +17 lines, -7 lines 0 comments Download
M components/password_manager/core/browser/password_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 6 chunks +9 lines, -4 lines 0 comments Download
M components/password_manager/core/browser/test_password_store.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 40 (0 generated)
Patrick Dubroy
Garrett, PTAL.
6 years, 9 months ago (2014-03-03 18:18:06 UTC) #1
Patrick Dubroy
Garrett: ping.
6 years, 9 months ago (2014-03-04 13:56:35 UTC) #2
Garrett Casto
I'm not wild about the AutofillDriver -> PasswordManagerDriver conversion as is. Having better separation between ...
6 years, 9 months ago (2014-03-05 07:36:08 UTC) #3
Patrick Dubroy
Ok, I see your point about the code moved from AutofillDriver -> PasswordManagerDriver, so I ...
6 years, 9 months ago (2014-03-05 16:31:50 UTC) #4
Garrett Casto
Adding Ilya on in case he has thoughts on the componentization issues. https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc File components/autofill/core/browser/password_autofill_manager.cc ...
6 years, 9 months ago (2014-03-06 00:42:04 UTC) #5
Ilya Sherman
On 2014/03/06 00:42:04, Garrett Casto wrote: > Adding Ilya on in case he has thoughts ...
6 years, 9 months ago (2014-03-06 01:28:36 UTC) #6
Garrett Casto
On 2014/03/06 01:28:36, Ilya Sherman wrote: > On 2014/03/06 00:42:04, Garrett Casto wrote: > > ...
6 years, 9 months ago (2014-03-06 23:49:27 UTC) #7
Ilya Sherman
On 2014/03/06 23:49:27, Garrett Casto wrote: > On 2014/03/06 01:28:36, Ilya Sherman wrote: > > ...
6 years, 9 months ago (2014-03-06 23:51:53 UTC) #8
Garrett Casto
On 2014/03/06 23:51:53, Ilya Sherman wrote: > On 2014/03/06 23:49:27, Garrett Casto wrote: > > ...
6 years, 9 months ago (2014-03-06 23:59:38 UTC) #9
Patrick Dubroy
https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc File components/autofill/core/browser/password_autofill_manager.cc (right): https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc#newcode58 components/autofill/core/browser/password_autofill_manager.cc:58: // TODO(dubroy): When password access requires some kind of ...
6 years, 9 months ago (2014-03-10 14:29:56 UTC) #10
Patrick Dubroy
On 2014/03/06 23:51:53, Ilya Sherman wrote: > On 2014/03/06 23:49:27, Garrett Casto wrote: > > ...
6 years, 9 months ago (2014-03-10 14:48:49 UTC) #11
Ilya Sherman
https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc File components/autofill/core/browser/password_autofill_manager.cc (right): https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc#newcode58 components/autofill/core/browser/password_autofill_manager.cc:58: // TODO(dubroy): When password access requires some kind of ...
6 years, 9 months ago (2014-03-10 21:44:06 UTC) #12
Garrett Casto
On 2014/03/10 14:29:56, Patrick Dubroy wrote: > https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc > File components/autofill/core/browser/password_autofill_manager.cc (right): > > https://codereview.chromium.org/184103016/diff/100001/components/autofill/core/browser/password_autofill_manager.cc#newcode58 ...
6 years, 9 months ago (2014-03-10 22:30:17 UTC) #13
Garrett Casto
On 2014/03/10 14:48:49, Patrick Dubroy wrote: > On 2014/03/06 23:51:53, Ilya Sherman wrote: > > ...
6 years, 9 months ago (2014-03-10 22:34:44 UTC) #14
Patrick Dubroy
Ok, the latest patch set attempts to move PasswordAutofillManager and its related IPCs into the ...
6 years, 9 months ago (2014-03-11 17:38:21 UTC) #15
Garrett Casto
It looks like this patch is in an in between state (e.g. autofill::PasswordAutofillManager hasn't been ...
6 years, 9 months ago (2014-03-12 01:09:22 UTC) #16
Patrick Dubroy
> It looks like this patch is in an in between state (e.g. > autofill::PasswordAutofillManager ...
6 years, 9 months ago (2014-03-12 16:47:08 UTC) #17
Garrett Casto
Looks good. Just a few minor nits. Keeping the IPCs definitions in autofill:: for now ...
6 years, 9 months ago (2014-03-14 08:25:21 UTC) #18
Patrick Dubroy
https://codereview.chromium.org/184103016/diff/110001/components/password_manager/core/browser/password_manager.cc File components/password_manager/core/browser/password_manager.cc (right): https://codereview.chromium.org/184103016/diff/110001/components/password_manager/core/browser/password_manager.cc#newcode317 components/password_manager/core/browser/password_manager.cc:317: void PasswordManager::OnAddPasswordFormMapping( On 2014/03/14 08:25:22, Garrett Casto wrote: > ...
6 years, 9 months ago (2014-03-14 12:07:18 UTC) #19
Patrick Dubroy
+blundell for owner review of the components/components_tests.gyp change.
6 years, 9 months ago (2014-03-14 12:11:14 UTC) #20
blundell
components_tests.gyp LGTM
6 years, 9 months ago (2014-03-14 12:15:18 UTC) #21
Garrett Casto
LGTM https://codereview.chromium.org/184103016/diff/190001/components/password_manager/core/browser/password_autofill_manager.h File components/password_manager/core/browser/password_autofill_manager.h (right): https://codereview.chromium.org/184103016/diff/190001/components/password_manager/core/browser/password_autofill_manager.h#newcode13 components/password_manager/core/browser/password_autofill_manager.h:13: // http://crbug.com/51644 On 2014/03/14 12:07:19, Patrick Dubroy wrote: ...
6 years, 9 months ago (2014-03-14 23:24:21 UTC) #22
Ilya Sherman
I only skimmed the new //components/password_manager files. Let me know if you'd like me to ...
6 years, 9 months ago (2014-03-18 00:14:27 UTC) #23
Patrick Dubroy
https://codereview.chromium.org/184103016/diff/200037/components/autofill/content/common/autofill_messages.h File components/autofill/content/common/autofill_messages.h (right): https://codereview.chromium.org/184103016/diff/200037/components/autofill/content/common/autofill_messages.h#newcode141 components/autofill/content/common/autofill_messages.h:141: base::string16 /* password value */) On 2014/03/18 00:14:27, Ilya ...
6 years, 9 months ago (2014-03-28 15:44:21 UTC) #24
Ilya Sherman
https://codereview.chromium.org/184103016/diff/200037/components/autofill/content/renderer/password_autofill_agent.h File components/autofill/content/renderer/password_autofill_agent.h (right): https://codereview.chromium.org/184103016/diff/200037/components/autofill/content/renderer/password_autofill_agent.h#newcode43 components/autofill/content/renderer/password_autofill_agent.h:43: bool AcceptAutofillSuggestionWithPassword(const blink::WebNode& node, On 2014/03/28 15:44:22, Patrick Dubroy ...
6 years, 9 months ago (2014-03-28 21:33:33 UTC) #25
Patrick Dubroy
https://codereview.chromium.org/184103016/diff/200037/components/autofill/content/renderer/password_autofill_agent.h File components/autofill/content/renderer/password_autofill_agent.h (right): https://codereview.chromium.org/184103016/diff/200037/components/autofill/content/renderer/password_autofill_agent.h#newcode43 components/autofill/content/renderer/password_autofill_agent.h:43: bool AcceptAutofillSuggestionWithPassword(const blink::WebNode& node, On 2014/03/28 21:33:34, Ilya Sherman ...
6 years, 8 months ago (2014-04-01 16:08:47 UTC) #26
Garrett Casto
https://codereview.chromium.org/184103016/diff/220001/components/autofill/content/renderer/password_autofill_agent.cc File components/autofill/content/renderer/password_autofill_agent.cc (right): https://codereview.chromium.org/184103016/diff/220001/components/autofill/content/renderer/password_autofill_agent.cc#newcode376 components/autofill/content/renderer/password_autofill_agent.cc:376: } On 2014/04/01 16:08:48, Patrick Dubroy wrote: > On ...
6 years, 8 months ago (2014-04-01 17:32:20 UTC) #27
Ilya Sherman
LGTM, thanks! https://codereview.chromium.org/184103016/diff/280001/components/password_manager/core/browser/password_autofill_manager.cc File components/password_manager/core/browser/password_autofill_manager.cc (right): https://codereview.chromium.org/184103016/diff/280001/components/password_manager/core/browser/password_autofill_manager.cc#newcode145 components/password_manager/core/browser/password_autofill_manager.cc:145: for (autofill::PasswordFormFillData::LoginCollection::const_iterator iter = nit: Alignment is ...
6 years, 8 months ago (2014-04-02 07:08:08 UTC) #28
Patrick Dubroy
https://codereview.chromium.org/184103016/diff/280001/components/password_manager/core/browser/password_autofill_manager.cc File components/password_manager/core/browser/password_autofill_manager.cc (right): https://codereview.chromium.org/184103016/diff/280001/components/password_manager/core/browser/password_autofill_manager.cc#newcode145 components/password_manager/core/browser/password_autofill_manager.cc:145: for (autofill::PasswordFormFillData::LoginCollection::const_iterator iter = On 2014/04/02 07:08:09, Ilya Sherman ...
6 years, 8 months ago (2014-04-02 08:25:34 UTC) #29
Patrick Dubroy
Garrett, can you take another look? I had to make a change to prevent a ...
6 years, 8 months ago (2014-04-02 15:01:59 UTC) #30
Patrick Dubroy
Avi, PTAL for owners review of tab_helpers.cc. palmer - owners review of autofill_messages.h
6 years, 8 months ago (2014-04-02 15:02:46 UTC) #31
Garrett Casto
On 2014/04/02 15:02:46, Patrick Dubroy wrote: > Avi, PTAL for owners review of tab_helpers.cc. > ...
6 years, 8 months ago (2014-04-02 20:50:38 UTC) #32
Patrick Dubroy
avi, palmer: ping.
6 years, 8 months ago (2014-04-03 13:53:00 UTC) #33
Avi (use Gerrit)
tab contents lgtm
6 years, 8 months ago (2014-04-03 14:59:42 UTC) #34
Patrick Dubroy
nkostylev, PTAL at simple_web_view_dialog.cc change. What is the password manager client required for in SimpleWebViewDialog? ...
6 years, 8 months ago (2014-04-03 15:12:25 UTC) #35
Nikita (slow)
On 2014/04/03 15:12:25, Patrick Dubroy wrote: > nkostylev, PTAL at simple_web_view_dialog.cc change. > > What ...
6 years, 8 months ago (2014-04-03 15:27:35 UTC) #36
Nikita (slow)
lgtm
6 years, 8 months ago (2014-04-03 15:28:21 UTC) #37
palmer
IPC security LGTM. https://codereview.chromium.org/184103016/diff/400001/components/autofill/content/common/autofill_messages.h File components/autofill/content/common/autofill_messages.h (right): https://codereview.chromium.org/184103016/diff/400001/components/autofill/content/common/autofill_messages.h#newcode141 components/autofill/content/common/autofill_messages.h:141: // Tells the renderer that a ...
6 years, 8 months ago (2014-04-03 19:02:38 UTC) #38
Patrick Dubroy
https://codereview.chromium.org/184103016/diff/400001/components/autofill/content/common/autofill_messages.h File components/autofill/content/common/autofill_messages.h (right): https://codereview.chromium.org/184103016/diff/400001/components/autofill/content/common/autofill_messages.h#newcode141 components/autofill/content/common/autofill_messages.h:141: // Tells the renderer that a password autofill suggestion ...
6 years, 8 months ago (2014-04-23 17:57:29 UTC) #39
Patrick Dubroy
6 years, 8 months ago (2014-04-24 21:14:04 UTC) #40
Message was sent while issue was closed.
Committed patchset #19 manually as r265993 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698