Chromium Code Reviews
DescriptionMove Autofill Payments integration checkbox to the sync settings page.
Based on results of discussions between privacy, pm, and UI review. Mock available at: https://screenshot.googleplex.com/59eiPNOvZAS.png
Notes on the implementation:
The mechanism for handling the availability of the payments integration setting has changed. Previously it was changed by events from the personal data manager and the sync service. This was because it depended on the state of those services and because the setting was on a different page than the sync settings.
With the new upload feature, the availability of the integration setting depends *only* on whether Autofill sync is enabled. (It no longer depends on the rollout flag governed by the sync service nor on whether the user currently has server cards in the personal data manager.)
Because of this and since the setting is on the same page/dialog as the Autofill sync setting, the availability of the integration setting can simply be changed in a click handler on the Autofill sync setting.
"Availability" is also now implemented via disabling (greying out) rather than visibility to avoid a dialog size change and relayout whenever the user clicks the Autofill sync setting.
One final detail: on the Autofill settings dialog, the magic "pref=" mechanism was used to read/write the integration setting. Because the sync settings dialog uses an ok/cancel design, we can't immediately write the value of the checkbox to the setting. Instead, it's manually set along with the rest of the sync settings after the user clicks ok.
BUG=535784
Committed: https://crrev.com/b4ddb6b439ded116b61d77dc6ed0f0e8a3bad4b9
Cr-Commit-Position: refs/heads/master@{#369857}
Patch Set 1 : #
Total comments: 2
Patch Set 2 : Fix tests, git cl format #Patch Set 3 : Inline function and fix 'sync everything' behavior #Patch Set 4 : Add "Learn more" link #
Total comments: 2
Patch Set 5 : Replace bool with enum in tests #Messages
Total messages: 22 (11 generated)
|