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[] = {
#endif // defined(OS_CHROMEOS)
#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.
const FeatureEntry::FeatureParam
kPasswordChangeVariationWithForcedDialogAfterEverySuccessfulSubmission[] = {
......@@ -5808,11 +5823,18 @@ const FeatureEntry kFeatureEntries[] = {
#endif // defined(OS_CHROMEOS)
#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,
flag_descriptions::kPasswordChangeDescription, kOsAndroid,
FEATURE_WITH_PARAMS_VALUE_TYPE(password_manager::features::kPasswordChange,
kPasswordChangeFeatureVariations,
"PasswordChangeFeatureVariations.")},
"PasswordChangeFeatureVariations")},
{"context-menu-performance-info-and-remote-hints-fetching",
flag_descriptions::kContextMenuPerformanceInfoAndRemoteHintFetchingName,
......@@ -6207,9 +6229,15 @@ bool SkipConditionalFeatureEntry(const FeatureEntry& entry) {
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)) {
return !base::FeatureList::IsEnabled(features::kTeamfoodFlags);
}
#endif // OS_ANDROID
if (flags::IsFlagExpired(entry.internal_name))
return true;
......
......@@ -3457,6 +3457,11 @@
"owners": [ "carlosil", "estark" ],
"expiry_milestone": 83
},
{
"name": "password-change-in-settings",
"owners": [ "kolos" ],
"expiry_milestone": 89
},
{
"name": "password-change-support",
"owners": [ "selakovic" ],
......
......@@ -1768,6 +1768,11 @@ const char kPassiveMixedContentWarningDescription[] =
"Causes a 'Not Secure' chip to be shown in the omnibox if a site contains "
"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 kPasswordChangeDescription[] =
"Change password when password leak is detected.";
......
......@@ -1008,6 +1008,9 @@ extern const char kPaintHoldingDescription[];
extern const char kParallelDownloadingName[];
extern const char kParallelDownloadingDescription[];
extern const char kPasswordChangeInSettingsName[];
extern const char kPasswordChangeInSettingsDescription[];
extern const char kPasswordChangeName[];
extern const char kPasswordChangeDescription[];
......
......@@ -59,6 +59,10 @@ const base::Feature kGooglePasswordManager = {
const base::Feature kPasswordChange = {"PasswordChange",
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.
const base::Feature kPasswordCheck = {"PasswordCheck",
#if defined(OS_ANDROID) || defined(OS_IOS)
......@@ -118,6 +122,11 @@ const char kGenerationRequirementsTimeout[] = "timeout";
const char kPasswordChangeWithForcedDialogAfterEverySuccessfulSubmission[] =
"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 password_manager
......@@ -27,6 +27,7 @@ extern const base::Feature KEnablePasswordGenerationForClearTextFields;
extern const base::Feature kFillOnAccountSelect;
extern const base::Feature kGooglePasswordManager;
extern const base::Feature kPasswordChange;
extern const base::Feature kPasswordChangeInSettings;
extern const base::Feature kPasswordCheck;
extern const base::Feature kPasswordEditingAndroid;
extern const base::Feature kPasswordImport;
......@@ -47,11 +48,10 @@ extern const char kGenerationRequirementsVersion[];
extern const char kGenerationRequirementsPrefixLength[];
extern const char kGenerationRequirementsTimeout[];
// Password change feature variation.
// The new variation will allow showing credential leaked dialog after
// every form submission (helpful for testing).
// Password change feature variations.
extern const char
kPasswordChangeWithForcedDialogAfterEverySuccessfulSubmission[];
extern const char kPasswordChangeInSettingsWithForcedWarningForEverySite[];
} // namespace features
......
......@@ -39965,6 +39965,7 @@ from previous Chrome versions.
<int value="-1867342522" label="MaterialDesignHistory:enabled"/>
<int value="-1865155026" label="AutoFetchOnNetErrorPage:enabled"/>
<int value="-1863962664" label="LockScreenNotifications:enabled"/>
<int value="-1863020461" label="PasswordChangeInSettings:enabled"/>
<int value="-1861814223" label="MidiManagerDynamicInstantiation:enabled"/>
<int value="-1860481724" label="ChromeHomeExpandButton:enabled"/>
<int value="-1859421131" label="BackForwardCache:disabled"/>
......@@ -41948,6 +41949,7 @@ from previous Chrome versions.
<int value="291866104" label="WebAuthenticationPhoneSupport:enabled"/>
<int value="291968978" label="HomepagePromoCard:enabled"/>
<int value="292560715" label="ViewsCastDialog:disabled"/>
<int value="292731264" label="PasswordChangeInSettings:disabled"/>
<int value="293134455" label="AutofillSendBillingCustomerNumber:disabled"/>
<int value="293996306" label="ArrayPrototypeValues:disabled"/>
<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