Loading AndroidManifest.xml +2 −0 Original line number Diff line number Diff line Loading @@ -657,6 +657,7 @@ <activity android:name="Settings$FaceSettingsActivity" android:label="@string/security_settings_face_preference_title" android:exported="true" android:configChanges="orientation|screenSize" android:icon="@drawable/ic_face_header"> <intent-filter> <action android:name="android.settings.FACE_SETTINGS" /> Loading @@ -672,6 +673,7 @@ android:label="@string/security_settings_face_preference_title" android:exported="false" android:icon="@drawable/ic_face_header" android:configChanges="orientation|screenSize" android:taskAffinity="com.android.settings.root"> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.biometrics.face.FaceSettings" /> Loading src/com/android/settings/Settings.java +19 −2 Original line number Diff line number Diff line Loading @@ -52,9 +52,26 @@ public class Settings extends SettingsActivity { public static class AssistGestureSettingsActivity extends SettingsActivity { /* empty */} public static class BluetoothSettingsActivity extends SettingsActivity { /* empty */ } public static class CreateShortcutActivity extends SettingsActivity { /* empty */ } public static class FaceSettingsActivity extends SettingsActivity { /* empty */ } public static class FaceSettingsActivity extends SettingsActivity { @Override protected void onCreate(Bundle savedState) { setTheme(SetupWizardUtils.getTheme(this, getIntent())); setTheme(R.style.SettingsPreferenceTheme_SetupWizard); ThemeHelper.trySetDynamicColor(this); super.onCreate(savedState); } } /** Container for {@link FaceSettings} to use with a pre-defined task affinity. */ public static class FaceSettingsInternalActivity extends SettingsActivity { /* empty */ } public static class FaceSettingsInternalActivity extends SettingsActivity { @Override protected void onCreate(Bundle savedState) { setTheme(SetupWizardUtils.getTheme(this, getIntent())); setTheme(R.style.SettingsPreferenceTheme_SetupWizard); ThemeHelper.trySetDynamicColor(this); super.onCreate(savedState); } } public static class FingerprintSettingsActivity extends SettingsActivity { /* empty */ } public static class CombinedBiometricSettingsActivity extends SettingsActivity { /* empty */ } public static class CombinedBiometricProfileSettingsActivity extends SettingsActivity { /* empty */ } Loading tests/robotests/src/com/android/settings/biometrics/face/FaceSettingsActivityTest.java 0 → 100644 +70 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License */ package com.android.settings.biometrics.face; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.spy; import android.content.res.Resources; import android.os.Bundle; import com.android.settings.Settings; import com.android.settings.testutils.FakeFeatureFactory; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; import org.robolectric.android.controller.ActivityController; @RunWith(RobolectricTestRunner.class) public class FaceSettingsActivityTest { private static final String APPLIED_SETUP_WIZARD_THEME = "SettingsPreferenceTheme.SetupWizard"; private Settings.FaceSettingsActivity mActivity; private Resources.Theme mTheme; @Before public void setUp() { FakeFeatureFactory.setupForTest(); mActivity = spy(Settings.FaceSettingsActivity.class); } @Test public void verifyFaceSettingsActivity_shouldAppliedSetupWizardTheme() { createActivity(); assertThat(isThemeApplied(APPLIED_SETUP_WIZARD_THEME)).isTrue(); } private boolean isThemeApplied(String themeName) { final String [] appliedThemes = mTheme.getTheme(); for (String theme : appliedThemes) { if (theme.contains(themeName)) { return true; } } return false; } private void createActivity() { ActivityController.of(mActivity).create(new Bundle()); mTheme = mActivity.getTheme(); } } Loading
AndroidManifest.xml +2 −0 Original line number Diff line number Diff line Loading @@ -657,6 +657,7 @@ <activity android:name="Settings$FaceSettingsActivity" android:label="@string/security_settings_face_preference_title" android:exported="true" android:configChanges="orientation|screenSize" android:icon="@drawable/ic_face_header"> <intent-filter> <action android:name="android.settings.FACE_SETTINGS" /> Loading @@ -672,6 +673,7 @@ android:label="@string/security_settings_face_preference_title" android:exported="false" android:icon="@drawable/ic_face_header" android:configChanges="orientation|screenSize" android:taskAffinity="com.android.settings.root"> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.biometrics.face.FaceSettings" /> Loading
src/com/android/settings/Settings.java +19 −2 Original line number Diff line number Diff line Loading @@ -52,9 +52,26 @@ public class Settings extends SettingsActivity { public static class AssistGestureSettingsActivity extends SettingsActivity { /* empty */} public static class BluetoothSettingsActivity extends SettingsActivity { /* empty */ } public static class CreateShortcutActivity extends SettingsActivity { /* empty */ } public static class FaceSettingsActivity extends SettingsActivity { /* empty */ } public static class FaceSettingsActivity extends SettingsActivity { @Override protected void onCreate(Bundle savedState) { setTheme(SetupWizardUtils.getTheme(this, getIntent())); setTheme(R.style.SettingsPreferenceTheme_SetupWizard); ThemeHelper.trySetDynamicColor(this); super.onCreate(savedState); } } /** Container for {@link FaceSettings} to use with a pre-defined task affinity. */ public static class FaceSettingsInternalActivity extends SettingsActivity { /* empty */ } public static class FaceSettingsInternalActivity extends SettingsActivity { @Override protected void onCreate(Bundle savedState) { setTheme(SetupWizardUtils.getTheme(this, getIntent())); setTheme(R.style.SettingsPreferenceTheme_SetupWizard); ThemeHelper.trySetDynamicColor(this); super.onCreate(savedState); } } public static class FingerprintSettingsActivity extends SettingsActivity { /* empty */ } public static class CombinedBiometricSettingsActivity extends SettingsActivity { /* empty */ } public static class CombinedBiometricProfileSettingsActivity extends SettingsActivity { /* empty */ } Loading
tests/robotests/src/com/android/settings/biometrics/face/FaceSettingsActivityTest.java 0 → 100644 +70 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License */ package com.android.settings.biometrics.face; import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.spy; import android.content.res.Resources; import android.os.Bundle; import com.android.settings.Settings; import com.android.settings.testutils.FakeFeatureFactory; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; import org.robolectric.android.controller.ActivityController; @RunWith(RobolectricTestRunner.class) public class FaceSettingsActivityTest { private static final String APPLIED_SETUP_WIZARD_THEME = "SettingsPreferenceTheme.SetupWizard"; private Settings.FaceSettingsActivity mActivity; private Resources.Theme mTheme; @Before public void setUp() { FakeFeatureFactory.setupForTest(); mActivity = spy(Settings.FaceSettingsActivity.class); } @Test public void verifyFaceSettingsActivity_shouldAppliedSetupWizardTheme() { createActivity(); assertThat(isThemeApplied(APPLIED_SETUP_WIZARD_THEME)).isTrue(); } private boolean isThemeApplied(String themeName) { final String [] appliedThemes = mTheme.getTheme(); for (String theme : appliedThemes) { if (theme.contains(themeName)) { return true; } } return false; } private void createActivity() { ActivityController.of(mActivity).create(new Bundle()); mTheme = mActivity.getTheme(); } }