Commit 411dc874 authored by Maxim Kolosovskiy's avatar Maxim Kolosovskiy Committed by Commit Bot

[Password Manager] Introduce a flag for password change in settings

Bug: 1108692
Change-Id: I86a4d8618cd36563b1819ede1a6c7c734f96a1fd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2315865
Commit-Queue: Maxim Kolosovskiy  <kolos@chromium.org>
Reviewed-by: default avatarIoana Pandele <ioanap@chromium.org>
Cr-Commit-Position: refs/heads/master@{#791424}
parent 1632b411
...@@ -2130,6 +2130,21 @@ const FeatureEntry::Choice kFrameThrottleFpsChoices[] = { ...@@ -2130,6 +2130,21 @@ const FeatureEntry::Choice kFrameThrottleFpsChoices[] = {
#endif // defined(OS_CHROMEOS) #endif // defined(OS_CHROMEOS)
#if defined(OS_ANDROID) #if defined(OS_ANDROID)
// The variations of --password-change-in-settings.
const FeatureEntry::FeatureParam
kPasswordChangeInSettingsVariationWithForcedWarningForEverySite[] = {
{password_manager::features::
kPasswordChangeInSettingsWithForcedWarningForEverySite,
"true"}};
const FeatureEntry::FeatureVariation
kPasswordChangeInSettingsFeatureVariations[] = {
{"Force leak warnings for every site in settings.",
kPasswordChangeInSettingsVariationWithForcedWarningForEverySite,
base::size(
kPasswordChangeInSettingsVariationWithForcedWarningForEverySite),
nullptr}};
// The variations of --password-change-support. // The variations of --password-change-support.
const FeatureEntry::FeatureParam const FeatureEntry::FeatureParam
kPasswordChangeVariationWithForcedDialogAfterEverySuccessfulSubmission[] = { kPasswordChangeVariationWithForcedDialogAfterEverySuccessfulSubmission[] = {
...@@ -5808,11 +5823,18 @@ const FeatureEntry kFeatureEntries[] = { ...@@ -5808,11 +5823,18 @@ const FeatureEntry kFeatureEntries[] = {
#endif // defined(OS_CHROMEOS) #endif // defined(OS_CHROMEOS)
#if defined(OS_ANDROID) #if defined(OS_ANDROID)
{"password-change-in-settings",
flag_descriptions::kPasswordChangeInSettingsName,
flag_descriptions::kPasswordChangeInSettingsDescription, kOsAndroid,
FEATURE_WITH_PARAMS_VALUE_TYPE(
password_manager::features::kPasswordChangeInSettings,
kPasswordChangeInSettingsFeatureVariations,
"PasswordChangeInSettingsFeatureVariations")},
{"password-change-support", flag_descriptions::kPasswordChangeName, {"password-change-support", flag_descriptions::kPasswordChangeName,
flag_descriptions::kPasswordChangeDescription, kOsAndroid, flag_descriptions::kPasswordChangeDescription, kOsAndroid,
FEATURE_WITH_PARAMS_VALUE_TYPE(password_manager::features::kPasswordChange, FEATURE_WITH_PARAMS_VALUE_TYPE(password_manager::features::kPasswordChange,
kPasswordChangeFeatureVariations, kPasswordChangeFeatureVariations,
"PasswordChangeFeatureVariations.")}, "PasswordChangeFeatureVariations")},
{"context-menu-performance-info-and-remote-hints-fetching", {"context-menu-performance-info-and-remote-hints-fetching",
flag_descriptions::kContextMenuPerformanceInfoAndRemoteHintFetchingName, flag_descriptions::kContextMenuPerformanceInfoAndRemoteHintFetchingName,
...@@ -6207,9 +6229,15 @@ bool SkipConditionalFeatureEntry(const FeatureEntry& entry) { ...@@ -6207,9 +6229,15 @@ bool SkipConditionalFeatureEntry(const FeatureEntry& entry) {
return true; return true;
} }
#if defined(OS_ANDROID)
if (!strcmp("password-change-in-settings", entry.internal_name)) {
return !base::FeatureList::IsEnabled(features::kTeamfoodFlags);
}
if (!strcmp("password-change-support", entry.internal_name)) { if (!strcmp("password-change-support", entry.internal_name)) {
return !base::FeatureList::IsEnabled(features::kTeamfoodFlags); return !base::FeatureList::IsEnabled(features::kTeamfoodFlags);
} }
#endif // OS_ANDROID
if (flags::IsFlagExpired(entry.internal_name)) if (flags::IsFlagExpired(entry.internal_name))
return true; return true;
......
...@@ -3457,6 +3457,11 @@ ...@@ -3457,6 +3457,11 @@
"owners": [ "carlosil", "estark" ], "owners": [ "carlosil", "estark" ],
"expiry_milestone": 83 "expiry_milestone": 83
}, },
{
"name": "password-change-in-settings",
"owners": [ "kolos" ],
"expiry_milestone": 89
},
{ {
"name": "password-change-support", "name": "password-change-support",
"owners": [ "selakovic" ], "owners": [ "selakovic" ],
......
...@@ -1768,6 +1768,11 @@ const char kPassiveMixedContentWarningDescription[] = ...@@ -1768,6 +1768,11 @@ const char kPassiveMixedContentWarningDescription[] =
"Causes a 'Not Secure' chip to be shown in the omnibox if a site contains " "Causes a 'Not Secure' chip to be shown in the omnibox if a site contains "
"passive (aka optionally blockable) mixed content."; "passive (aka optionally blockable) mixed content.";
const char kPasswordChangeInSettingsName[] =
"Rework password change flow from settings";
const char kPasswordChangeInSettingsDescription[] =
"Change password when bulk leak check detected an issue.";
const char kPasswordChangeName[] = "Rework password change flow"; const char kPasswordChangeName[] = "Rework password change flow";
const char kPasswordChangeDescription[] = const char kPasswordChangeDescription[] =
"Change password when password leak is detected."; "Change password when password leak is detected.";
......
...@@ -1008,6 +1008,9 @@ extern const char kPaintHoldingDescription[]; ...@@ -1008,6 +1008,9 @@ extern const char kPaintHoldingDescription[];
extern const char kParallelDownloadingName[]; extern const char kParallelDownloadingName[];
extern const char kParallelDownloadingDescription[]; extern const char kParallelDownloadingDescription[];
extern const char kPasswordChangeInSettingsName[];
extern const char kPasswordChangeInSettingsDescription[];
extern const char kPasswordChangeName[]; extern const char kPasswordChangeName[];
extern const char kPasswordChangeDescription[]; extern const char kPasswordChangeDescription[];
......
...@@ -59,6 +59,10 @@ const base::Feature kGooglePasswordManager = { ...@@ -59,6 +59,10 @@ const base::Feature kGooglePasswordManager = {
const base::Feature kPasswordChange = {"PasswordChange", const base::Feature kPasswordChange = {"PasswordChange",
base::FEATURE_DISABLED_BY_DEFAULT}; base::FEATURE_DISABLED_BY_DEFAULT};
// Enables password change flow from bulk leak check in settings.
const base::Feature kPasswordChangeInSettings = {
"PasswordChangeInSettings", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables the bulk Password Check feature for signed in users. // Enables the bulk Password Check feature for signed in users.
const base::Feature kPasswordCheck = {"PasswordCheck", const base::Feature kPasswordCheck = {"PasswordCheck",
#if defined(OS_ANDROID) || defined(OS_IOS) #if defined(OS_ANDROID) || defined(OS_IOS)
...@@ -118,6 +122,11 @@ const char kGenerationRequirementsTimeout[] = "timeout"; ...@@ -118,6 +122,11 @@ const char kGenerationRequirementsTimeout[] = "timeout";
const char kPasswordChangeWithForcedDialogAfterEverySuccessfulSubmission[] = const char kPasswordChangeWithForcedDialogAfterEverySuccessfulSubmission[] =
"should_force_dialog_after_every_sucessful_form_submission"; "should_force_dialog_after_every_sucessful_form_submission";
// Enables showing leaked warning for every site while doing bulk leak check in
// settings.
const char kPasswordChangeInSettingsWithForcedWarningForEverySite[] =
"should_force_warning_for_every_site_in_settings";
} // namespace features } // namespace features
} // namespace password_manager } // namespace password_manager
...@@ -27,6 +27,7 @@ extern const base::Feature KEnablePasswordGenerationForClearTextFields; ...@@ -27,6 +27,7 @@ extern const base::Feature KEnablePasswordGenerationForClearTextFields;
extern const base::Feature kFillOnAccountSelect; extern const base::Feature kFillOnAccountSelect;
extern const base::Feature kGooglePasswordManager; extern const base::Feature kGooglePasswordManager;
extern const base::Feature kPasswordChange; extern const base::Feature kPasswordChange;
extern const base::Feature kPasswordChangeInSettings;
extern const base::Feature kPasswordCheck; extern const base::Feature kPasswordCheck;
extern const base::Feature kPasswordEditingAndroid; extern const base::Feature kPasswordEditingAndroid;
extern const base::Feature kPasswordImport; extern const base::Feature kPasswordImport;
...@@ -47,11 +48,10 @@ extern const char kGenerationRequirementsVersion[]; ...@@ -47,11 +48,10 @@ extern const char kGenerationRequirementsVersion[];
extern const char kGenerationRequirementsPrefixLength[]; extern const char kGenerationRequirementsPrefixLength[];
extern const char kGenerationRequirementsTimeout[]; extern const char kGenerationRequirementsTimeout[];
// Password change feature variation. // Password change feature variations.
// The new variation will allow showing credential leaked dialog after
// every form submission (helpful for testing).
extern const char extern const char
kPasswordChangeWithForcedDialogAfterEverySuccessfulSubmission[]; kPasswordChangeWithForcedDialogAfterEverySuccessfulSubmission[];
extern const char kPasswordChangeInSettingsWithForcedWarningForEverySite[];
} // namespace features } // namespace features
......
...@@ -39965,6 +39965,7 @@ from previous Chrome versions. ...@@ -39965,6 +39965,7 @@ from previous Chrome versions.
<int value="-1867342522" label="MaterialDesignHistory:enabled"/> <int value="-1867342522" label="MaterialDesignHistory:enabled"/>
<int value="-1865155026" label="AutoFetchOnNetErrorPage:enabled"/> <int value="-1865155026" label="AutoFetchOnNetErrorPage:enabled"/>
<int value="-1863962664" label="LockScreenNotifications:enabled"/> <int value="-1863962664" label="LockScreenNotifications:enabled"/>
<int value="-1863020461" label="PasswordChangeInSettings:enabled"/>
<int value="-1861814223" label="MidiManagerDynamicInstantiation:enabled"/> <int value="-1861814223" label="MidiManagerDynamicInstantiation:enabled"/>
<int value="-1860481724" label="ChromeHomeExpandButton:enabled"/> <int value="-1860481724" label="ChromeHomeExpandButton:enabled"/>
<int value="-1859421131" label="BackForwardCache:disabled"/> <int value="-1859421131" label="BackForwardCache:disabled"/>
...@@ -41948,6 +41949,7 @@ from previous Chrome versions. ...@@ -41948,6 +41949,7 @@ from previous Chrome versions.
<int value="291866104" label="WebAuthenticationPhoneSupport:enabled"/> <int value="291866104" label="WebAuthenticationPhoneSupport:enabled"/>
<int value="291968978" label="HomepagePromoCard:enabled"/> <int value="291968978" label="HomepagePromoCard:enabled"/>
<int value="292560715" label="ViewsCastDialog:disabled"/> <int value="292560715" label="ViewsCastDialog:disabled"/>
<int value="292731264" label="PasswordChangeInSettings:disabled"/>
<int value="293134455" label="AutofillSendBillingCustomerNumber:disabled"/> <int value="293134455" label="AutofillSendBillingCustomerNumber:disabled"/>
<int value="293996306" label="ArrayPrototypeValues:disabled"/> <int value="293996306" label="ArrayPrototypeValues:disabled"/>
<int value="295661985" label="video-capture-use-gpu-memory-buffer"/> <int value="295661985" label="video-capture-use-gpu-memory-buffer"/>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment