From 9990f397220703f4d2c922560a8e29e60bcce39f Mon Sep 17 00:00:00 2001 From: Maurice Lam Date: Wed, 28 Jun 2017 15:06:09 -0700 Subject: [PATCH] Read theme for lock screen flows Move the applyThemeResource calls up from the setup wizard specific subclasses up to the settings classes so that it will get GLIF v2 theme on devices that request it. Test: Manual Bug: 62906814 Change-Id: I6ff4ff8d9ed3e6090b35b4ae7197e5d01f5a61f8 --- src/com/android/settings/EncryptionInterstitial.java | 7 +++++++ src/com/android/settings/SetupEncryptionInterstitial.java | 7 ------- src/com/android/settings/SetupRedactionInterstitial.java | 6 ------ .../settings/fingerprint/FingerprintEnrollBase.java | 8 ++++++++ .../fingerprint/SetupFingerprintEnrollEnrolling.java | 7 ------- .../fingerprint/SetupFingerprintEnrollFindSensor.java | 7 ------- .../fingerprint/SetupFingerprintEnrollFinish.java | 7 ------- .../fingerprint/SetupFingerprintEnrollIntroduction.java | 7 ------- .../settings/notification/RedactionInterstitial.java | 8 ++++++++ src/com/android/settings/password/ChooseLockPassword.java | 8 ++++++++ src/com/android/settings/password/ChooseLockPattern.java | 8 ++++++++ .../settings/password/SetupChooseLockPassword.java | 8 -------- .../android/settings/password/SetupChooseLockPattern.java | 8 -------- 13 files changed, 39 insertions(+), 57 deletions(-) diff --git a/src/com/android/settings/EncryptionInterstitial.java b/src/com/android/settings/EncryptionInterstitial.java index c352bf0b93d..f0115b8ef3c 100644 --- a/src/com/android/settings/EncryptionInterstitial.java +++ b/src/com/android/settings/EncryptionInterstitial.java @@ -24,6 +24,7 @@ import android.app.admin.DevicePolicyManager; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; +import android.content.res.Resources; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; @@ -56,6 +57,12 @@ public class EncryptionInterstitial extends SettingsActivity { return modIntent; } + @Override + protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { + resid = SetupWizardUtils.getTheme(getIntent()); + super.onApplyThemeResource(theme, resid, first); + } + @Override protected boolean isValidFragment(String fragmentName) { return EncryptionInterstitialFragment.class.getName().equals(fragmentName); diff --git a/src/com/android/settings/SetupEncryptionInterstitial.java b/src/com/android/settings/SetupEncryptionInterstitial.java index 4f30cc0d295..989cc2b12cc 100644 --- a/src/com/android/settings/SetupEncryptionInterstitial.java +++ b/src/com/android/settings/SetupEncryptionInterstitial.java @@ -18,7 +18,6 @@ package com.android.settings; import android.content.Context; import android.content.Intent; -import android.content.res.Resources; import android.os.Bundle; import android.widget.LinearLayout; @@ -54,12 +53,6 @@ public class SetupEncryptionInterstitial extends EncryptionInterstitial { return SetupEncryptionInterstitialFragment.class.getName().equals(fragmentName); } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - @Override protected void onCreate(Bundle savedInstance) { super.onCreate(savedInstance); diff --git a/src/com/android/settings/SetupRedactionInterstitial.java b/src/com/android/settings/SetupRedactionInterstitial.java index 321040eb0e7..ac1db15bdc8 100644 --- a/src/com/android/settings/SetupRedactionInterstitial.java +++ b/src/com/android/settings/SetupRedactionInterstitial.java @@ -60,12 +60,6 @@ public class SetupRedactionInterstitial extends RedactionInterstitial { return SetupRedactionInterstitialFragment.class.getName().equals(fragmentName); } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - public static class SetupRedactionInterstitialFragment extends RedactionInterstitialFragment { // Setup wizard specific UI customizations can be done here diff --git a/src/com/android/settings/fingerprint/FingerprintEnrollBase.java b/src/com/android/settings/fingerprint/FingerprintEnrollBase.java index df7bf3c3c1f..7c34f2da267 100644 --- a/src/com/android/settings/fingerprint/FingerprintEnrollBase.java +++ b/src/com/android/settings/fingerprint/FingerprintEnrollBase.java @@ -18,6 +18,7 @@ package com.android.settings.fingerprint; import android.annotation.Nullable; import android.content.Intent; +import android.content.res.Resources; import android.graphics.Color; import android.os.Bundle; import android.os.UserHandle; @@ -27,6 +28,7 @@ import android.widget.Button; import android.widget.TextView; import com.android.settings.R; +import com.android.settings.SetupWizardUtils; import com.android.settings.core.InstrumentedActivity; import com.android.settings.password.ChooseLockSettingsHelper; import com.android.setupwizardlib.GlifLayout; @@ -56,6 +58,12 @@ public abstract class FingerprintEnrollBase extends InstrumentedActivity mUserId = getIntent().getIntExtra(Intent.EXTRA_USER_ID, UserHandle.myUserId()); } + @Override + protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { + resid = SetupWizardUtils.getTheme(getIntent()); + super.onApplyThemeResource(theme, resid, first); + } + @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); diff --git a/src/com/android/settings/fingerprint/SetupFingerprintEnrollEnrolling.java b/src/com/android/settings/fingerprint/SetupFingerprintEnrollEnrolling.java index 5d0152c76c2..fbbf033aa3f 100644 --- a/src/com/android/settings/fingerprint/SetupFingerprintEnrollEnrolling.java +++ b/src/com/android/settings/fingerprint/SetupFingerprintEnrollEnrolling.java @@ -17,7 +17,6 @@ package com.android.settings.fingerprint; import android.content.Intent; -import android.content.res.Resources; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.SetupWizardUtils; @@ -31,12 +30,6 @@ public class SetupFingerprintEnrollEnrolling extends FingerprintEnrollEnrolling return intent; } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - @Override public int getMetricsCategory() { return MetricsEvent.FINGERPRINT_ENROLLING_SETUP; diff --git a/src/com/android/settings/fingerprint/SetupFingerprintEnrollFindSensor.java b/src/com/android/settings/fingerprint/SetupFingerprintEnrollFindSensor.java index d7a4a7399e4..f62b7012401 100644 --- a/src/com/android/settings/fingerprint/SetupFingerprintEnrollFindSensor.java +++ b/src/com/android/settings/fingerprint/SetupFingerprintEnrollFindSensor.java @@ -17,7 +17,6 @@ package com.android.settings.fingerprint; import android.content.Intent; -import android.content.res.Resources; import android.os.UserHandle; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; @@ -43,12 +42,6 @@ public class SetupFingerprintEnrollFindSensor extends FingerprintEnrollFindSenso return intent; } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - @Override public int getMetricsCategory() { return MetricsEvent.FINGERPRINT_FIND_SENSOR_SETUP; diff --git a/src/com/android/settings/fingerprint/SetupFingerprintEnrollFinish.java b/src/com/android/settings/fingerprint/SetupFingerprintEnrollFinish.java index 02f6cb83b3b..e81203fb7a6 100644 --- a/src/com/android/settings/fingerprint/SetupFingerprintEnrollFinish.java +++ b/src/com/android/settings/fingerprint/SetupFingerprintEnrollFinish.java @@ -17,7 +17,6 @@ package com.android.settings.fingerprint; import android.content.Intent; -import android.content.res.Resources; import android.os.UserHandle; import android.widget.Button; @@ -39,12 +38,6 @@ public class SetupFingerprintEnrollFinish extends FingerprintEnrollFinish { return intent; } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - @Override protected void initViews() { super.initViews(); diff --git a/src/com/android/settings/fingerprint/SetupFingerprintEnrollIntroduction.java b/src/com/android/settings/fingerprint/SetupFingerprintEnrollIntroduction.java index e6688127f85..8f93bca573e 100644 --- a/src/com/android/settings/fingerprint/SetupFingerprintEnrollIntroduction.java +++ b/src/com/android/settings/fingerprint/SetupFingerprintEnrollIntroduction.java @@ -19,7 +19,6 @@ package com.android.settings.fingerprint; import android.app.KeyguardManager; import android.app.admin.DevicePolicyManager; import android.content.Intent; -import android.content.res.Resources; import android.os.UserHandle; import android.widget.Button; import android.widget.TextView; @@ -52,12 +51,6 @@ public class SetupFingerprintEnrollIntroduction extends FingerprintEnrollIntrodu return intent; } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - @Override protected void initViews() { super.initViews(); diff --git a/src/com/android/settings/notification/RedactionInterstitial.java b/src/com/android/settings/notification/RedactionInterstitial.java index b2690629167..93c14c7429f 100644 --- a/src/com/android/settings/notification/RedactionInterstitial.java +++ b/src/com/android/settings/notification/RedactionInterstitial.java @@ -23,6 +23,7 @@ import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; import android.content.Context; import android.content.Intent; +import android.content.res.Resources; import android.os.Bundle; import android.os.UserManager; import android.provider.Settings; @@ -41,6 +42,7 @@ import com.android.settings.RestrictedRadioButton; import com.android.settings.SettingsActivity; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.SetupRedactionInterstitial; +import com.android.settings.SetupWizardUtils; import com.android.settings.Utils; import com.android.settingslib.RestrictedLockUtils; @@ -53,6 +55,12 @@ public class RedactionInterstitial extends SettingsActivity { return modIntent; } + @Override + protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { + resid = SetupWizardUtils.getTheme(getIntent()); + super.onApplyThemeResource(theme, resid, first); + } + @Override protected boolean isValidFragment(String fragmentName) { return RedactionInterstitialFragment.class.getName().equals(fragmentName); diff --git a/src/com/android/settings/password/ChooseLockPassword.java b/src/com/android/settings/password/ChooseLockPassword.java index 2f359d179ca..b646360b213 100644 --- a/src/com/android/settings/password/ChooseLockPassword.java +++ b/src/com/android/settings/password/ChooseLockPassword.java @@ -28,6 +28,7 @@ import android.app.admin.DevicePolicyManager; import android.app.admin.PasswordMetrics; import android.content.Context; import android.content.Intent; +import android.content.res.Resources.Theme; import android.graphics.Insets; import android.os.Bundle; import android.os.Handler; @@ -61,6 +62,7 @@ import com.android.internal.widget.TextViewInputDisabler; import com.android.settings.EncryptionInterstitial; import com.android.settings.R; import com.android.settings.SettingsActivity; +import com.android.settings.SetupWizardUtils; import com.android.settings.Utils; import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.notification.RedactionInterstitial; @@ -88,6 +90,12 @@ public class ChooseLockPassword extends SettingsActivity { return modIntent; } + @Override + protected void onApplyThemeResource(Theme theme, int resid, boolean first) { + resid = SetupWizardUtils.getTheme(getIntent()); + super.onApplyThemeResource(theme, resid, first); + } + public static class IntentBuilder { private final Intent mIntent; diff --git a/src/com/android/settings/password/ChooseLockPattern.java b/src/com/android/settings/password/ChooseLockPattern.java index 51c15690806..d1964b49871 100644 --- a/src/com/android/settings/password/ChooseLockPattern.java +++ b/src/com/android/settings/password/ChooseLockPattern.java @@ -20,6 +20,7 @@ import android.app.Activity; import android.app.Fragment; import android.content.Context; import android.content.Intent; +import android.content.res.Resources.Theme; import android.os.Bundle; import android.util.Log; import android.view.KeyEvent; @@ -40,6 +41,7 @@ import com.android.internal.widget.LockPatternView.DisplayMode; import com.android.settings.EncryptionInterstitial; import com.android.settings.R; import com.android.settings.SettingsActivity; +import com.android.settings.SetupWizardUtils; import com.android.settings.Utils; import com.android.settings.core.InstrumentedPreferenceFragment; import com.android.settings.notification.RedactionInterstitial; @@ -80,6 +82,12 @@ public class ChooseLockPattern extends SettingsActivity { return modIntent; } + @Override + protected void onApplyThemeResource(Theme theme, int resid, boolean first) { + resid = SetupWizardUtils.getTheme(getIntent()); + super.onApplyThemeResource(theme, resid, first); + } + public static class IntentBuilder { private final Intent mIntent; diff --git a/src/com/android/settings/password/SetupChooseLockPassword.java b/src/com/android/settings/password/SetupChooseLockPassword.java index b8ded5e7c9f..f23ab6d1156 100644 --- a/src/com/android/settings/password/SetupChooseLockPassword.java +++ b/src/com/android/settings/password/SetupChooseLockPassword.java @@ -20,7 +20,6 @@ import android.app.Activity; import android.app.Fragment; import android.content.Context; import android.content.Intent; -import android.content.res.Resources; import android.os.Bundle; import android.view.View; import android.widget.Button; @@ -30,7 +29,6 @@ import com.android.internal.annotations.VisibleForTesting; import com.android.internal.widget.LockPatternUtils; import com.android.settings.R; import com.android.settings.SetupRedactionInterstitial; -import com.android.settings.SetupWizardUtils; import com.android.settings.password.ChooseLockGeneric.ChooseLockGenericFragment; import com.android.settings.password.ChooseLockTypeDialogFragment.OnLockTypeSelectedListener; import com.android.setupwizardlib.util.WizardManagerHelper; @@ -69,12 +67,6 @@ public class SetupChooseLockPassword extends ChooseLockPassword { layout.setFitsSystemWindows(false); } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - public static class SetupChooseLockPasswordFragment extends ChooseLockPasswordFragment implements OnLockTypeSelectedListener { diff --git a/src/com/android/settings/password/SetupChooseLockPattern.java b/src/com/android/settings/password/SetupChooseLockPattern.java index 7cb5afbd947..b1e3d0d89ca 100644 --- a/src/com/android/settings/password/SetupChooseLockPattern.java +++ b/src/com/android/settings/password/SetupChooseLockPattern.java @@ -19,10 +19,8 @@ package com.android.settings.password; import android.app.Fragment; import android.content.Context; import android.content.Intent; -import android.content.res.Resources; import com.android.settings.SetupRedactionInterstitial; -import com.android.settings.SetupWizardUtils; /** * Setup Wizard's version of ChooseLockPattern screen. It inherits the logic and basic structure @@ -48,12 +46,6 @@ public class SetupChooseLockPattern extends ChooseLockPattern { return SetupChooseLockPatternFragment.class; } - @Override - protected void onApplyThemeResource(Resources.Theme theme, int resid, boolean first) { - resid = SetupWizardUtils.getTheme(getIntent()); - super.onApplyThemeResource(theme, resid, first); - } - public static class SetupChooseLockPatternFragment extends ChooseLockPatternFragment { @Override