Clean-up after com.android.settings.flags.revamp_toggles rollout

Flag: EXEMPT refactoring / flag clean-up
Test: refactoring CL. Existing unit tests still pass.
Bug: 296835792

Change-Id: Ib57ee270c8b5d540cb19997fe1863dd6d782cbe4
This commit is contained in:
Geoffrey Boullanger
2024-11-21 11:54:47 +00:00
parent efcb4dfddf
commit 842a337291
12 changed files with 21 additions and 439 deletions

View File

@@ -1,73 +0,0 @@
/*
* Copyright (C) 2017 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.datetime;
import android.content.Context;
import android.provider.Settings;
import android.provider.Settings.System;
import android.text.format.DateFormat;
import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;
import java.util.Locale;
public class AutoTimeFormatPreferenceController extends TogglePreferenceController {
public AutoTimeFormatPreferenceController(Context context, String preferenceKey) {
super(context, preferenceKey);
}
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
}
@Override
public boolean isChecked() {
return isAutoTimeFormatSelection(mContext);
}
@Override
public boolean setChecked(boolean isChecked) {
Boolean is24Hour;
if (isChecked) {
is24Hour = null;
} else {
is24Hour = is24HourLocale(mContext.getResources().getConfiguration().locale);
}
TimeFormatPreferenceController.update24HourFormat(mContext, is24Hour);
return true;
}
@Override
public int getSliceHighlightMenuRes() {
return R.string.menu_key_system;
}
boolean is24HourLocale(Locale locale) {
return DateFormat.is24HourLocale(locale);
}
/**
* Returns if the system is currently configured to pick the time format automatically based on
* the locale.
*/
static boolean isAutoTimeFormatSelection(Context context) {
return Settings.System.getString(context.getContentResolver(), System.TIME_12_24) == null;
}
}

View File

@@ -32,7 +32,6 @@ import androidx.preference.Preference;
import com.android.internal.annotations.VisibleForTesting;
import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;
import com.android.settings.flags.Flags;
public class AutoTimeZonePreferenceController extends TogglePreferenceController {
@@ -107,19 +106,17 @@ public class AutoTimeZonePreferenceController extends TogglePreferenceController
TimeZoneConfiguration.Builder configuration = new TimeZoneConfiguration.Builder()
.setAutoDetectionEnabled(isChecked);
if (Flags.revampToggles()) {
// "Use location for time zone" is only used if "Automatic time zone" is enabled. If
// the user toggles off automatic time zone, set the toggle off and disable the toggle.
int geoDetectionCapability = mTimeManager
.getTimeZoneCapabilitiesAndConfig()
.getCapabilities()
.getConfigureGeoDetectionEnabledCapability();
// "Use location for time zone" is only used if "Automatic time zone" is enabled. If
// the user toggles off automatic time zone, set the toggle off and disable the toggle.
int geoDetectionCapability = mTimeManager
.getTimeZoneCapabilitiesAndConfig()
.getCapabilities()
.getConfigureGeoDetectionEnabledCapability();
if (!isChecked
&& (geoDetectionCapability == CAPABILITY_NOT_APPLICABLE
|| geoDetectionCapability == CAPABILITY_POSSESSED)) {
configuration.setGeoDetectionEnabled(false);
}
if (!isChecked
&& (geoDetectionCapability == CAPABILITY_NOT_APPLICABLE
|| geoDetectionCapability == CAPABILITY_POSSESSED)) {
configuration.setGeoDetectionEnabled(false);
}
boolean result = mTimeManager.updateTimeZoneConfiguration(configuration.build());

View File

@@ -23,7 +23,6 @@ import android.content.Context;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.flags.Flags;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.search.SearchIndexable;
@@ -50,9 +49,6 @@ public class DateTimeSettings extends DashboardFragment implements
@Override
protected int getPreferenceScreenResId() {
if (Flags.revampToggles()) {
return R.xml.date_time_prefs_revamped;
}
return R.xml.date_time_prefs;
}
@@ -123,6 +119,5 @@ public class DateTimeSettings extends DashboardFragment implements
}
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
new BaseSearchIndexProvider(
Flags.revampToggles() ? R.xml.date_time_prefs_revamped : R.xml.date_time_prefs);
new BaseSearchIndexProvider(R.xml.date_time_prefs);
}

View File

@@ -32,7 +32,6 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.core.TogglePreferenceController;
import com.android.settings.flags.Flags;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
@@ -68,7 +67,7 @@ public class LocationTimeZoneDetectionPreferenceController
// forceRefresh set to true as the location toggle may have been turned off by switching off
// automatic time zone
TimeZoneCapabilitiesAndConfig capabilitiesAndConfig =
getTimeZoneCapabilitiesAndConfig(/*forceRefresh=*/ Flags.revampToggles());
getTimeZoneCapabilitiesAndConfig(/*forceRefresh=*/ true);
TimeZoneConfiguration configuration = capabilitiesAndConfig.getConfiguration();
return configuration.isGeoDetectionEnabled();
}
@@ -137,11 +136,7 @@ public class LocationTimeZoneDetectionPreferenceController
if (capability == CAPABILITY_NOT_SUPPORTED || capability == CAPABILITY_NOT_ALLOWED) {
return UNSUPPORTED_ON_DEVICE;
} else if (capability == CAPABILITY_NOT_APPLICABLE || capability == CAPABILITY_POSSESSED) {
if (Flags.revampToggles()) {
return isAutoTimeZoneEnabled() ? AVAILABLE : DISABLED_DEPENDENT_SETTING;
} else {
return AVAILABLE;
}
return isAutoTimeZoneEnabled() ? AVAILABLE : DISABLED_DEPENDENT_SETTING;
} else {
throw new IllegalStateException("Unknown capability=" + capability);
}
@@ -151,10 +146,8 @@ public class LocationTimeZoneDetectionPreferenceController
public void updateState(Preference preference) {
super.updateState(preference);
if (Flags.revampToggles()) {
// enable / disable the toggle based on automatic time zone being enabled or not
preference.setEnabled(isAutoTimeZoneEnabled());
}
// enable / disable the toggle based on automatic time zone being enabled or not
preference.setEnabled(isAutoTimeZoneEnabled());
}
@Override

View File

@@ -25,7 +25,6 @@ import androidx.preference.Preference;
import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;
import com.android.settings.flags.Flags;
import java.util.Calendar;
import java.util.Date;
@@ -73,11 +72,6 @@ public class TimeFormatPreferenceController extends TogglePreferenceController {
if (mIsFromSUW) {
return DISABLED_DEPENDENT_SETTING;
}
if (!Flags.revampToggles()) {
if (AutoTimeFormatPreferenceController.isAutoTimeFormatSelection(mContext)) {
return DISABLED_DEPENDENT_SETTING;
}
}
return AVAILABLE;
}
@@ -120,12 +114,12 @@ public class TimeFormatPreferenceController extends TogglePreferenceController {
return DateFormat.is24HourFormat(mContext);
}
static void update24HourFormat(Context context, Boolean is24Hour) {
private static void update24HourFormat(Context context, Boolean is24Hour) {
set24Hour(context, is24Hour);
timeUpdated(context, is24Hour);
}
static void timeUpdated(Context context, Boolean is24Hour) {
private static void timeUpdated(Context context, Boolean is24Hour) {
Intent timeChanged = new Intent(Intent.ACTION_TIME_CHANGED);
timeChanged.addFlags(Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND);
int timeFormatPreference;
@@ -139,9 +133,8 @@ public class TimeFormatPreferenceController extends TogglePreferenceController {
context.sendBroadcast(timeChanged);
}
static void set24Hour(Context context, Boolean is24Hour) {
String value = is24Hour == null ? null :
is24Hour ? HOURS_24 : HOURS_12;
private static void set24Hour(Context context, boolean is24Hour) {
String value = is24Hour ? HOURS_24 : HOURS_12;
Settings.System.putString(context.getContentResolver(),
Settings.System.TIME_12_24, value);
}