diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 9bbcf2341a4..86cb3f2c5da 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -935,6 +935,24 @@ android:value="true" /> + + + + + + + + + + + + + mControllers; private List mTogglePreferences; @@ -129,7 +130,7 @@ public class FaceSettings extends DashboardFragment { Preference attentionPref = findPreference(FaceSettingsAttentionPreferenceController.KEY); Preference confirmPref = findPreference(FaceSettingsConfirmPreferenceController.KEY); Preference bypassPref = - findPreference(FaceSettingsLockscreenBypassPreferenceController.KEY); + findPreference(mLockscreenController.getPreferenceKey()); mTogglePreferences = new ArrayList<>( Arrays.asList(keyguardPref, appPref, attentionPref, confirmPref, bypassPref)); @@ -138,12 +139,10 @@ public class FaceSettings extends DashboardFragment { // There is no better way to do this :/ for (AbstractPreferenceController controller : mControllers) { - if (controller instanceof FaceSettingsPreferenceController) { + if (controller instanceof FaceSettingsPreferenceController) { ((FaceSettingsPreferenceController) controller).setUserId(mUserId); } else if (controller instanceof FaceSettingsEnrollButtonPreferenceController) { ((FaceSettingsEnrollButtonPreferenceController) controller).setUserId(mUserId); - } else if (controller instanceof FaceSettingsLockscreenBypassPreferenceController) { - ((FaceSettingsLockscreenBypassPreferenceController) controller).setUserId(mUserId); } } mRemoveController.setUserId(mUserId); @@ -151,7 +150,7 @@ public class FaceSettings extends DashboardFragment { // Don't show keyguard controller for work profile settings. if (mUserManager.isManagedProfile(mUserId)) { removePreference(FaceSettingsKeyguardPreferenceController.KEY); - removePreference(FaceSettingsLockscreenBypassPreferenceController.KEY); + removePreference(mLockscreenController.getPreferenceKey()); } if (savedInstanceState != null) { @@ -159,6 +158,14 @@ public class FaceSettings extends DashboardFragment { } } + @Override + public void onAttach(Context context) { + super.onAttach(context); + + mLockscreenController = use(FaceSettingsLockscreenBypassPreferenceController.class); + mLockscreenController.setUserId(mUserId); + } + @Override public void onResume() { super.onResume(); @@ -263,7 +270,6 @@ public class FaceSettings extends DashboardFragment { final List controllers = new ArrayList<>(); controllers.add(new FaceSettingsVideoPreferenceController(context)); controllers.add(new FaceSettingsKeyguardPreferenceController(context)); - controllers.add(new FaceSettingsLockscreenBypassPreferenceController(context)); controllers.add(new FaceSettingsAppPreferenceController(context)); controllers.add(new FaceSettingsAttentionPreferenceController(context)); controllers.add(new FaceSettingsRemoveButtonPreferenceController(context)); diff --git a/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java b/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java index 44165b8211a..cef174d5243 100644 --- a/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java +++ b/src/com/android/settings/biometrics/face/FaceSettingsLockscreenBypassPreferenceController.java @@ -30,16 +30,10 @@ import com.android.internal.annotations.VisibleForTesting; public class FaceSettingsLockscreenBypassPreferenceController extends FaceSettingsPreferenceController { - static final String KEY = "security_lockscreen_bypass"; - @VisibleForTesting protected FaceManager mFaceManager; private UserManager mUserManager; - public FaceSettingsLockscreenBypassPreferenceController(Context context) { - this(context, KEY); - } - public FaceSettingsLockscreenBypassPreferenceController(Context context, String preferenceKey) { super(context, preferenceKey); if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) { diff --git a/src/com/android/settings/core/gateway/SettingsGateway.java b/src/com/android/settings/core/gateway/SettingsGateway.java index 384f262a718..fd036976e50 100644 --- a/src/com/android/settings/core/gateway/SettingsGateway.java +++ b/src/com/android/settings/core/gateway/SettingsGateway.java @@ -74,6 +74,7 @@ import com.android.settings.deviceinfo.aboutphone.MyDeviceInfoFragment; import com.android.settings.deviceinfo.firmwareversion.FirmwareVersionSettings; import com.android.settings.deviceinfo.legal.ModuleLicensesDashboard; import com.android.settings.display.NightDisplaySettings; +import com.android.settings.display.darkmode.DarkModeSettingsFragment; import com.android.settings.dream.DreamSettings; import com.android.settings.enterprise.EnterprisePrivacySettings; import com.android.settings.fuelgauge.AdvancedPowerUsageDetail; @@ -281,7 +282,8 @@ public class SettingsGateway { PreviouslyConnectedDeviceDashboardFragment.class.getName(), BatterySaverScheduleSettings.class.getName(), MobileNetworkListFragment.class.getName(), - GlobalActionsPanelSettings.class.getName() + GlobalActionsPanelSettings.class.getName(), + DarkModeSettingsFragment.class.getName() }; public static final String[] SETTINGS_FOR_RESTRICTED = {