Commit 0de3efc5 authored by Ioana Pandele's avatar Ioana Pandele Committed by Commit Bot

[PwdCheckAndroid] Remove password check button illustration

Bug: 1141082
Change-Id: I95a97c34668f2e7eda78aa6a52f844dc6c73e590
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2529549Reviewed-by: default avatarJan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: default avatarDominic Battré <battre@chromium.org>
Reviewed-by: default avatarFriedrich [CET] <fhorschig@chromium.org>
Commit-Queue: Ioana Pandele <ioanap@chromium.org>
Cr-Commit-Position: refs/heads/master@{#826710}
parent a8b7dc95
......@@ -32,7 +32,6 @@ import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.password_check.PasswordCheck;
import org.chromium.chrome.browser.password_check.PasswordCheckFactory;
import org.chromium.chrome.browser.password_check.PasswordCheckPreference;
import org.chromium.chrome.browser.password_check.PasswordCheckReferrer;
import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer;
import org.chromium.chrome.browser.password_manager.PasswordManagerHelper;
......@@ -106,7 +105,7 @@ public class PasswordSettings
private Preference mSecurityKey;
private ChromeSwitchPreference mSavePasswordsSwitch;
private ChromeSwitchPreference mAutoSignInSwitch;
private PasswordCheckPreference mCheckPasswords;
private ChromeBasePreference mCheckPasswords;
private TextMessagePreference mEmptyView;
private boolean mSearchRecorded;
private Menu mMenu;
......@@ -516,17 +515,13 @@ public class PasswordSettings
}
private void createCheckPasswords() {
final int numCheckLaunched =
getPrefService().getInteger(Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS);
mCheckPasswords = new PasswordCheckPreference(getStyledContext(), numCheckLaunched < 3);
mCheckPasswords = new ChromeBasePreference(getStyledContext());
mCheckPasswords.setKey(PREF_CHECK_PASSWORDS);
mCheckPasswords.setTitle(R.string.passwords_check_title);
mCheckPasswords.setOrder(ORDER_CHECK_PASSWORDS);
mCheckPasswords.setSummary(R.string.passwords_check_description);
// Add a listener which launches a settings page for the leak password check
mCheckPasswords.setOnPreferenceClickListener(preference -> {
getPrefService().setInteger(
Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS, numCheckLaunched + 1);
PasswordCheck passwordCheck =
PasswordCheckFactory.getOrCreate(new SettingsLauncherImpl());
passwordCheck.showUi(getStyledContext(), PasswordCheckReferrer.PASSWORD_SETTINGS);
......
......@@ -96,7 +96,6 @@ import org.chromium.chrome.browser.history.HistoryManager;
import org.chromium.chrome.browser.history.StubbedHistoryProvider;
import org.chromium.chrome.browser.password_check.PasswordCheck;
import org.chromium.chrome.browser.password_check.PasswordCheckFactory;
import org.chromium.chrome.browser.password_check.PasswordCheckPreference;
import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer;
import org.chromium.chrome.browser.password_manager.PasswordManagerHelper;
import org.chromium.chrome.browser.preferences.Pref;
......@@ -738,74 +737,6 @@ public class PasswordSettingsTest {
});
}
/**
* Check that Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS is being correctly incremented when
* the Check passwords preference is clicked.
*/
@Test
@SmallTest
@Feature({"Preferences"})
@EnableFeatures(ChromeFeatureList.PASSWORD_CHECK)
public void testCheckPasswordsPrefIncremented() {
TestThreadUtils.runOnUiThreadBlocking(
() -> { getPrefService().setInteger(Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS, 0); });
startPasswordSettingsDirectly();
PasswordSettings passwordPrefs = mSettingsActivityTestRule.getFragment();
PasswordCheckPreference passwordCheck =
passwordPrefs.findPreference(PasswordSettings.PREF_CHECK_PASSWORDS);
Assert.assertNotNull(passwordCheck);
TestThreadUtils.runOnUiThreadBlocking(() -> {
passwordCheck.performClick();
Assert.assertEquals(
getPrefService().getInteger(Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS), 1);
});
}
/**
* Check that the image above the Check passwords preference is shown if the value of
* Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS is less than 3.
*/
@Test
@SmallTest
@Feature({"Preferences"})
@EnableFeatures(ChromeFeatureList.PASSWORD_CHECK)
public void testCheckPasswordsImageShown() {
TestThreadUtils.runOnUiThreadBlocking(
() -> { getPrefService().setInteger(Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS, 2); });
startPasswordSettingsDirectly();
PasswordSettings passwordPrefs = mSettingsActivityTestRule.getFragment();
PasswordCheckPreference passwordCheck =
passwordPrefs.findPreference(PasswordSettings.PREF_CHECK_PASSWORDS);
Assert.assertNotNull(passwordCheck);
int promoImageVisibility =
passwordCheck.getPromoImageView(passwordPrefs.getActivity()).getVisibility();
Assert.assertEquals(promoImageVisibility, View.VISIBLE);
}
/**
* Check that the image above the Check passwords preference is not shown if the value of
* Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS is greater than or equal to 3.
*/
@Test
@SmallTest
@Feature({"Preferences"})
@EnableFeatures(ChromeFeatureList.PASSWORD_CHECK)
public void testCheckPasswordsImageNotShown() {
TestThreadUtils.runOnUiThreadBlocking(
() -> { getPrefService().setInteger(Pref.SETTINGS_LAUNCHED_PASSWORD_CHECKS, 3); });
startPasswordSettingsDirectly();
PasswordSettings passwordPrefs = mSettingsActivityTestRule.getFragment();
PasswordCheckPreference passwordCheck =
passwordPrefs.findPreference(PasswordSettings.PREF_CHECK_PASSWORDS);
Assert.assertNotNull(passwordCheck);
int promoImageVisibility =
passwordCheck.getPromoImageView(passwordPrefs.getActivity()).getVisibility();
Assert.assertEquals(promoImageVisibility, View.GONE);
}
/**
* Check that the check passwords preference is not shown when the corresponding feature is
* disabled.
......@@ -816,7 +747,7 @@ public class PasswordSettingsTest {
@DisableFeatures(ChromeFeatureList.PASSWORD_CHECK)
public void testCheckPasswordsDisabled() {
mBrowserTestRule.addTestAccountThenSigninAndEnableSync();
final SettingsActivity settingsActivity = startPasswordSettingsFromMainSettings();
startPasswordSettingsFromMainSettings();
TestThreadUtils.runOnUiThreadBlocking(() -> {
PasswordSettings passwordPrefs = mSettingsActivityTestRule.getFragment();
......
......@@ -52,7 +52,6 @@ android_library("public_java") {
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckEditFragmentView.java",
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckFragmentView.java",
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckMetricsRecorder.java",
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckPreference.java",
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckReferrer.java",
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckResolutionAction.java",
"java/src/org/chromium/chrome/browser/password_check/PasswordCheckUserAction.java",
......@@ -160,7 +159,6 @@ android_resources("java_resources") {
"java/res/drawable/password_check_neutral.xml",
"java/res/drawable/password_checkup_warning.xml",
"java/res/layout/password_check_edit_fragment.xml",
"java/res/layout/password_check_preference_button.xml",
"java/res/menu/password_check_editor_action_bar_menu.xml",
"java/res/values-night/colors.xml",
"java/res/values/colors.xml",
......
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright 2020 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file. -->
<!-- Layout for a preference with a title and a compound drawable above. -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/PreferenceLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?android:attr/selectableItemBackground"
android:orientation="vertical"
android:scaleType="center">
<ImageView android:id="@+id/password_check_preference_image"
android:importantForAccessibility="no"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom ="12dp"
android:background="@color/password_check_neutral_background"
android:src="@drawable/password_check_neutral"
android:visibility="visible"/>
<TextView
android:id="@android:id/title"
style="@style/PreferenceTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
android:id="@android:id/summary"
style="@style/PreferenceSummary"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
......@@ -120,7 +120,6 @@
#include "components/optimization_guide/optimization_guide_prefs.h"
#include "components/password_manager/core/browser/password_bubble_experiment.h"
#include "components/password_manager/core/browser/password_manager.h"
#include "components/password_manager/core/common/password_manager_pref_names.h"
#include "components/payments/core/payment_prefs.h"
#include "components/policy/core/browser/browser_policy_connector.h"
#include "components/policy/core/browser/url_blocklist_manager.h"
......@@ -487,6 +486,10 @@ const char kHistoryMenuPromoShown[] = "history.menu_promo_shown";
const char kMigrationToLoginDBStep[] = "profile.migration_to_logindb_step";
#endif
// Deprecated 11/2020
const char kSettingsLaunchedPasswordChecks[] =
"profile.settings_launched_password_checks";
// Register local state used only for migration (clearing or moving to a new
// key).
void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
......@@ -562,6 +565,8 @@ void RegisterProfilePrefsForMigration(
registry->RegisterBooleanPref(prefs::kLocalDiscoveryNotificationsEnabled,
false);
#endif
registry->RegisterIntegerPref(kSettingsLaunchedPasswordChecks, 0);
}
} // namespace
......@@ -1159,4 +1164,7 @@ void MigrateObsoleteProfilePrefs(Profile* profile) {
profile_prefs->ClearPref(prefs::kLocalDiscoveryEnabled);
profile_prefs->ClearPref(prefs::kLocalDiscoveryNotificationsEnabled);
#endif
// Added 11/2020
profile_prefs->ClearPref(kSettingsLaunchedPasswordChecks);
}
......@@ -229,8 +229,6 @@ void PasswordManager::RegisterProfilePrefs(
registry->RegisterTimePref(prefs::kAccountStoreDateLastUsedForFilling,
base::Time());
registry->RegisterIntegerPref(prefs::kSettingsLaunchedPasswordChecks, 0);
#if defined(OS_APPLE)
registry->RegisterIntegerPref(prefs::kKeychainMigrationStatus,
4 /* MIGRATED_DELETED */);
......
......@@ -60,8 +60,5 @@ const char kProfileStoreDateLastUsedForFilling[] =
const char kAccountStoreDateLastUsedForFilling[] =
"password_manager.account_store_date_last_used_for_filling";
const char kSettingsLaunchedPasswordChecks[] =
"profile.settings_launched_password_checks";
} // namespace prefs
} // namespace password_manager
......@@ -95,10 +95,6 @@ extern const char kPasswordLeakDetectionEnabled[];
extern const char kProfileStoreDateLastUsedForFilling[];
extern const char kAccountStoreDateLastUsedForFilling[];
// Number of times the check for leaked password has been performed from the
// password settings.
extern const char kSettingsLaunchedPasswordChecks[];
} // namespace prefs
} // namespace password_manager
......
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