Rename RadioButtonPreference -> SelectorWithWidgetPreference.
This change is to reduce ambiguity as we're adding the option to style the preference like a checkbox as well. Bug: 190180868 Test: SelectorWithWidgetPreferenceTest, RunSettingsLibRoboTests Change-Id: Ie414347bf67ed394ef495604890c5851fc42dbc7
This commit is contained in:
@@ -29,7 +29,7 @@ import com.android.settings.R;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import com.google.common.primitives.Ints;
|
||||
|
||||
@@ -40,7 +40,7 @@ import java.util.Map;
|
||||
* Controller class that control accessibility time out settings.
|
||||
*/
|
||||
public class AccessibilityTimeoutController extends AbstractPreferenceController implements
|
||||
LifecycleObserver, RadioButtonPreference.OnClickListener, PreferenceControllerMixin {
|
||||
LifecycleObserver, SelectorWithWidgetPreference.OnClickListener, PreferenceControllerMixin {
|
||||
static final String CONTENT_TIMEOUT_SETTINGS_SECURE =
|
||||
Settings.Secure.ACCESSIBILITY_NON_INTERACTIVE_UI_TIMEOUT_MS;
|
||||
static final String CONTROL_TIMEOUT_SETTINGS_SECURE =
|
||||
@@ -54,7 +54,7 @@ public class AccessibilityTimeoutController extends AbstractPreferenceController
|
||||
private final ContentResolver mContentResolver;
|
||||
private final Resources mResources;
|
||||
private OnChangeListener mOnChangeListener;
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
private int mAccessibilityUiTimeoutValue;
|
||||
|
||||
public AccessibilityTimeoutController(Context context, Lifecycle lifecycle,
|
||||
@@ -124,13 +124,13 @@ public class AccessibilityTimeoutController extends AbstractPreferenceController
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
|
||||
mPreference = (RadioButtonPreference)
|
||||
mPreference = (SelectorWithWidgetPreference)
|
||||
screen.findPreference(getPreferenceKey());
|
||||
mPreference.setOnClickListener(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
int value = getTimeoutValueToKeyMap().get(mPreferenceKey);
|
||||
handlePreferenceChange(String.valueOf(value));
|
||||
if (mOnChangeListener != null) {
|
||||
|
||||
@@ -30,7 +30,7 @@ import androidx.preference.PreferenceScreen;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import com.google.common.primitives.Ints;
|
||||
|
||||
@@ -39,7 +39,7 @@ import java.util.Map;
|
||||
|
||||
/** Controller class that control radio button of accessibility daltonizer settings. */
|
||||
public class DaltonizerRadioButtonPreferenceController extends BasePreferenceController implements
|
||||
LifecycleObserver, RadioButtonPreference.OnClickListener {
|
||||
LifecycleObserver, SelectorWithWidgetPreference.OnClickListener {
|
||||
private static final String TYPE = Settings.Secure.ACCESSIBILITY_DISPLAY_DALTONIZER;
|
||||
|
||||
// pair the preference key and daltonizer value.
|
||||
@@ -49,7 +49,7 @@ public class DaltonizerRadioButtonPreferenceController extends BasePreferenceCon
|
||||
private final ContentResolver mContentResolver;
|
||||
private final Resources mResources;
|
||||
private DaltonizerRadioButtonPreferenceController.OnChangeListener mOnChangeListener;
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
private int mAccessibilityDaltonizerValue;
|
||||
|
||||
public DaltonizerRadioButtonPreferenceController(Context context, String preferenceKey) {
|
||||
@@ -120,7 +120,7 @@ public class DaltonizerRadioButtonPreferenceController extends BasePreferenceCon
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
mPreference = (RadioButtonPreference)
|
||||
mPreference = (SelectorWithWidgetPreference)
|
||||
screen.findPreference(getPreferenceKey());
|
||||
mPreference.setOnClickListener(this);
|
||||
mPreference.setAppendixVisibility(View.GONE);
|
||||
@@ -128,7 +128,7 @@ public class DaltonizerRadioButtonPreferenceController extends BasePreferenceCon
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
final int value = getDaltonizerValueToKeyMap().get(mPreferenceKey);
|
||||
handlePreferenceChange(String.valueOf(value));
|
||||
if (mOnChangeListener != null) {
|
||||
|
||||
@@ -35,7 +35,7 @@ import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.LayoutPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@@ -43,7 +43,7 @@ import java.util.Map;
|
||||
* Controller class that controls accessibility autoclick settings.
|
||||
*/
|
||||
public class ToggleAutoclickPreferenceController extends BasePreferenceController implements
|
||||
LifecycleObserver, RadioButtonPreference.OnClickListener, PreferenceControllerMixin {
|
||||
LifecycleObserver, SelectorWithWidgetPreference.OnClickListener, PreferenceControllerMixin {
|
||||
|
||||
@VisibleForTesting
|
||||
static final String CONTROL_AUTOCLICK_DELAY_SECURE =
|
||||
@@ -67,7 +67,7 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
||||
private final ContentResolver mContentResolver;
|
||||
private final Resources mResources;
|
||||
private OnChangeListener mOnChangeListener;
|
||||
private RadioButtonPreference mDelayModePref;
|
||||
private SelectorWithWidgetPreference mDelayModePref;
|
||||
|
||||
/**
|
||||
* Seek bar preference for autoclick delay value. The seek bar has values between 0 and
|
||||
@@ -109,7 +109,7 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
|
||||
mDelayModePref = (RadioButtonPreference)
|
||||
mDelayModePref = (SelectorWithWidgetPreference)
|
||||
screen.findPreference(getPreferenceKey());
|
||||
mDelayModePref.setOnClickListener(this);
|
||||
mSeekBerPreference = (LayoutPreference) screen.findPreference(KEY_AUTOCLICK_CUSTOM_SEEKBAR);
|
||||
@@ -117,7 +117,7 @@ public class ToggleAutoclickPreferenceController extends BasePreferenceControlle
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
final int value = mAccessibilityAutoclickKeyToValueMap.get(mPreferenceKey);
|
||||
handleRadioButtonPreferenceChange(value);
|
||||
if (mOnChangeListener != null) {
|
||||
|
||||
@@ -34,13 +34,13 @@ import androidx.preference.PreferenceCategory;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
/**
|
||||
* Display the Open Supported Links page. Allow users choose what kind supported links they need.
|
||||
*/
|
||||
public class OpenSupportedLinks extends AppInfoWithHeader implements
|
||||
RadioButtonPreference.OnClickListener {
|
||||
SelectorWithWidgetPreference.OnClickListener {
|
||||
private static final String TAG = "OpenSupportedLinks";
|
||||
private static final String RADIO_GROUP_KEY = "supported_links_radio_group";
|
||||
private static final String FOOTER_KEY = "supported_links_footer";
|
||||
@@ -60,11 +60,11 @@ public class OpenSupportedLinks extends AppInfoWithHeader implements
|
||||
@VisibleForTesting
|
||||
PreferenceCategory mPreferenceCategory;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mAllowOpening;
|
||||
SelectorWithWidgetPreference mAllowOpening;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mAskEveryTime;
|
||||
SelectorWithWidgetPreference mAskEveryTime;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mNotAllowed;
|
||||
SelectorWithWidgetPreference mNotAllowed;
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
@@ -101,7 +101,7 @@ public class OpenSupportedLinks extends AppInfoWithHeader implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
final int clickedIndex = preferenceKeyToIndex(preference.getKey());
|
||||
if (mCurrentIndex != clickedIndex) {
|
||||
mCurrentIndex = clickedIndex;
|
||||
@@ -110,8 +110,8 @@ public class OpenSupportedLinks extends AppInfoWithHeader implements
|
||||
}
|
||||
}
|
||||
|
||||
private RadioButtonPreference makeRadioPreference(String key, int stringId) {
|
||||
final RadioButtonPreference pref = new RadioButtonPreference(
|
||||
private SelectorWithWidgetPreference makeRadioPreference(String key, int stringId) {
|
||||
final SelectorWithWidgetPreference pref = new SelectorWithWidgetPreference(
|
||||
mPreferenceCategory.getContext());
|
||||
pref.setKey(key);
|
||||
pref.setTitle(stringId);
|
||||
|
||||
@@ -35,7 +35,7 @@ import com.android.settings.fuelgauge.BatteryUtils;
|
||||
import com.android.settings.widget.RadioButtonPickerFragment;
|
||||
import com.android.settingslib.applications.DefaultAppInfo;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
/**
|
||||
* A generic app picker fragment that shows a list of app as radio button group.
|
||||
@@ -53,7 +53,7 @@ public abstract class DefaultAppPickerFragment extends RadioButtonPickerFragment
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference selected) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference selected) {
|
||||
final String selectedKey = selected.getKey();
|
||||
final CharSequence confirmationMessage = getConfirmationMessage(getCandidate(selectedKey));
|
||||
final FragmentActivity activity = getActivity();
|
||||
@@ -78,7 +78,7 @@ public abstract class DefaultAppPickerFragment extends RadioButtonPickerFragment
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindPreferenceExtra(RadioButtonPreference pref,
|
||||
public void bindPreferenceExtra(SelectorWithWidgetPreference pref,
|
||||
String key, CandidateInfo info, String defaultKey, String systemDefaultKey) {
|
||||
if (!(info instanceof DefaultAppInfo)) {
|
||||
return;
|
||||
|
||||
@@ -26,7 +26,6 @@ import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageItemInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.UserInfo;
|
||||
import android.os.UserHandle;
|
||||
import android.util.Log;
|
||||
import android.util.Pair;
|
||||
import android.view.View;
|
||||
@@ -35,13 +34,12 @@ import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.applications.defaultapps.DefaultAppPickerFragment;
|
||||
import com.android.settingslib.applications.DefaultAppInfo;
|
||||
import com.android.settingslib.development.DevelopmentSettingsEnabler;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -169,7 +167,7 @@ public class BugReportHandlerPicker extends DefaultAppPickerFragment {
|
||||
|
||||
|
||||
@Override
|
||||
public void bindPreferenceExtra(RadioButtonPreference pref,
|
||||
public void bindPreferenceExtra(SelectorWithWidgetPreference pref,
|
||||
String key, CandidateInfo info, String defaultKey, String systemDefaultKey) {
|
||||
super.bindPreferenceExtra(pref, key, info, defaultKey, systemDefaultKey);
|
||||
pref.setAppendixVisibility(View.GONE);
|
||||
|
||||
@@ -36,7 +36,7 @@ import com.android.settings.Utils;
|
||||
import com.android.settings.widget.RadioButtonPickerFragment;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import com.google.android.collect.Lists;
|
||||
|
||||
@@ -214,7 +214,7 @@ public class UsbDefaultFragment extends RadioButtonPickerFragment {
|
||||
private void refresh(long functions) {
|
||||
final PreferenceScreen screen = getPreferenceScreen();
|
||||
for (long option : UsbDetailsFunctionsController.FUNCTIONS_MAP.keySet()) {
|
||||
final RadioButtonPreference pref =
|
||||
final SelectorWithWidgetPreference pref =
|
||||
screen.findPreference(UsbBackend.usbFunctionsToString(option));
|
||||
if (pref != null) {
|
||||
final boolean isSupported = mUsbBackend.areFunctionsSupported(option);
|
||||
|
||||
@@ -27,20 +27,20 @@ import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
/**
|
||||
* This class controls the radio buttons for switching between
|
||||
* USB device and host mode.
|
||||
*/
|
||||
public class UsbDetailsDataRoleController extends UsbDetailsController
|
||||
implements RadioButtonPreference.OnClickListener {
|
||||
implements SelectorWithWidgetPreference.OnClickListener {
|
||||
|
||||
private PreferenceCategory mPreferenceCategory;
|
||||
private RadioButtonPreference mDevicePref;
|
||||
private RadioButtonPreference mHostPref;
|
||||
private SelectorWithWidgetPreference mDevicePref;
|
||||
private SelectorWithWidgetPreference mHostPref;
|
||||
|
||||
private RadioButtonPreference mNextRolePref;
|
||||
private SelectorWithWidgetPreference mNextRolePref;
|
||||
|
||||
private final Runnable mFailureCallback = () -> {
|
||||
if (mNextRolePref != null) {
|
||||
@@ -97,7 +97,7 @@ public class UsbDetailsDataRoleController extends UsbDetailsController
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
int role = UsbBackend.dataRoleFromString(preference.getKey());
|
||||
if (role != mUsbBackend.getDataRole() && mNextRolePref == null
|
||||
&& !Utils.isMonkeyRunning()) {
|
||||
@@ -121,8 +121,9 @@ public class UsbDetailsDataRoleController extends UsbDetailsController
|
||||
return "usb_details_data_role";
|
||||
}
|
||||
|
||||
private RadioButtonPreference makeRadioPreference(String key, int titleId) {
|
||||
RadioButtonPreference pref = new RadioButtonPreference(mPreferenceCategory.getContext());
|
||||
private SelectorWithWidgetPreference makeRadioPreference(String key, int titleId) {
|
||||
SelectorWithWidgetPreference pref = new SelectorWithWidgetPreference(
|
||||
mPreferenceCategory.getContext());
|
||||
pref.setKey(key);
|
||||
pref.setTitle(titleId);
|
||||
pref.setOnClickListener(this);
|
||||
|
||||
@@ -31,7 +31,7 @@ import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
@@ -40,7 +40,7 @@ import java.util.Map;
|
||||
* This class controls the radio buttons for choosing between different USB functions.
|
||||
*/
|
||||
public class UsbDetailsFunctionsController extends UsbDetailsController
|
||||
implements RadioButtonPreference.OnClickListener {
|
||||
implements SelectorWithWidgetPreference.OnClickListener {
|
||||
|
||||
private static final String TAG = "UsbFunctionsCtrl";
|
||||
private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
|
||||
@@ -83,10 +83,10 @@ public class UsbDetailsFunctionsController extends UsbDetailsController
|
||||
/**
|
||||
* Gets a switch preference for the particular option, creating it if needed.
|
||||
*/
|
||||
private RadioButtonPreference getProfilePreference(String key, int titleId) {
|
||||
RadioButtonPreference pref = mProfilesContainer.findPreference(key);
|
||||
private SelectorWithWidgetPreference getProfilePreference(String key, int titleId) {
|
||||
SelectorWithWidgetPreference pref = mProfilesContainer.findPreference(key);
|
||||
if (pref == null) {
|
||||
pref = new RadioButtonPreference(mProfilesContainer.getContext());
|
||||
pref = new SelectorWithWidgetPreference(mProfilesContainer.getContext());
|
||||
pref.setKey(key);
|
||||
pref.setTitle(titleId);
|
||||
pref.setSingleLineTitle(false);
|
||||
@@ -108,7 +108,7 @@ public class UsbDetailsFunctionsController extends UsbDetailsController
|
||||
// Functions are only available in device mode
|
||||
mProfilesContainer.setEnabled(true);
|
||||
}
|
||||
RadioButtonPreference pref;
|
||||
SelectorWithWidgetPreference pref;
|
||||
for (long option : FUNCTIONS_MAP.keySet()) {
|
||||
int title = FUNCTIONS_MAP.get(option);
|
||||
pref = getProfilePreference(UsbBackend.usbFunctionsToString(option), title);
|
||||
@@ -128,7 +128,7 @@ public class UsbDetailsFunctionsController extends UsbDetailsController
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
final long function = UsbBackend.usbFunctionsFromString(preference.getKey());
|
||||
final long previousFunction = mUsbBackend.getCurrentFunctions();
|
||||
if (DEBUG) {
|
||||
@@ -142,8 +142,8 @@ public class UsbDetailsFunctionsController extends UsbDetailsController
|
||||
mPreviousFunction = previousFunction;
|
||||
|
||||
//Update the UI in advance to make it looks smooth
|
||||
final RadioButtonPreference prevPref =
|
||||
(RadioButtonPreference) mProfilesContainer.findPreference(
|
||||
final SelectorWithWidgetPreference prevPref =
|
||||
(SelectorWithWidgetPreference) mProfilesContainer.findPreference(
|
||||
UsbBackend.usbFunctionsToString(mPreviousFunction));
|
||||
if (prevPref != null) {
|
||||
prevPref.setChecked(false);
|
||||
|
||||
@@ -53,7 +53,7 @@ import com.android.settingslib.search.SearchIndexable;
|
||||
import com.android.settingslib.search.SearchIndexableRaw;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
|
||||
@@ -181,8 +181,8 @@ public class ScreenTimeoutSettings extends RadioButtonPickerFragment implements
|
||||
}
|
||||
|
||||
for (CandidateInfo info : candidateList) {
|
||||
RadioButtonPreference pref =
|
||||
new RadioButtonPreference(getPrefContext());
|
||||
SelectorWithWidgetPreference pref =
|
||||
new SelectorWithWidgetPreference(getPrefContext());
|
||||
bindPreference(pref, info.getKey(), info, defaultKey);
|
||||
screen.addPreference(pref);
|
||||
}
|
||||
@@ -192,8 +192,8 @@ public class ScreenTimeoutSettings extends RadioButtonPickerFragment implements
|
||||
if (!candidateList.isEmpty() && (selectedTimeout > maxTimeout)) {
|
||||
// The selected time out value is longer than the max timeout allowed by the admin.
|
||||
// Select the largest value from the list by default.
|
||||
final RadioButtonPreference preferenceWithLargestTimeout =
|
||||
(RadioButtonPreference) screen.getPreference(candidateList.size() - 1);
|
||||
final SelectorWithWidgetPreference preferenceWithLargestTimeout =
|
||||
(SelectorWithWidgetPreference) screen.getPreference(candidateList.size() - 1);
|
||||
preferenceWithLargestTimeout.setChecked(true);
|
||||
}
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
import com.android.settingslib.widget.LayoutPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -66,7 +66,8 @@ import java.util.List;
|
||||
*/
|
||||
public class AdvancedPowerUsageDetail extends DashboardFragment implements
|
||||
ButtonActionDialogFragment.AppButtonsDialogListener,
|
||||
BatteryTipPreferenceController.BatteryTipListener, RadioButtonPreference.OnClickListener {
|
||||
BatteryTipPreferenceController.BatteryTipListener,
|
||||
SelectorWithWidgetPreference.OnClickListener {
|
||||
|
||||
public static final String TAG = "AdvancedPowerDetail";
|
||||
public static final String EXTRA_UID = "extra_uid";
|
||||
@@ -107,11 +108,11 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
|
||||
@VisibleForTesting
|
||||
FooterPreference mFooterPreference;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mRestrictedPreference;
|
||||
SelectorWithWidgetPreference mRestrictedPreference;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mOptimizePreference;
|
||||
SelectorWithWidgetPreference mOptimizePreference;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mUnrestrictedPreference;
|
||||
SelectorWithWidgetPreference mUnrestrictedPreference;
|
||||
@VisibleForTesting
|
||||
boolean enableTriState = true;
|
||||
|
||||
@@ -385,8 +386,8 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
|
||||
final String packageName = bundle.getString(EXTRA_PACKAGE_NAME);
|
||||
|
||||
mAppButtonsPreferenceController = new AppButtonsPreferenceController(
|
||||
(SettingsActivity) getActivity(), this, getSettingsLifecycle(), packageName,
|
||||
mState, REQUEST_UNINSTALL, REQUEST_REMOVE_DEVICE_ADMIN);
|
||||
(SettingsActivity) getActivity(), this, getSettingsLifecycle(),
|
||||
packageName, mState, REQUEST_UNINSTALL, REQUEST_REMOVE_DEVICE_ADMIN);
|
||||
controllers.add(mAppButtonsPreferenceController);
|
||||
if (enableTriState) {
|
||||
controllers.add(new UnrestrictedPreferenceController(context, uid, packageName));
|
||||
@@ -425,7 +426,7 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference selected) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference selected) {
|
||||
final String selectedKey = selected.getKey();
|
||||
updatePreferenceState(mUnrestrictedPreference, selectedKey);
|
||||
updatePreferenceState(mOptimizePreference, selectedKey);
|
||||
@@ -452,7 +453,8 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
|
||||
}
|
||||
}
|
||||
|
||||
private void updatePreferenceState(RadioButtonPreference preference, String selectedKey) {
|
||||
private void updatePreferenceState(SelectorWithWidgetPreference preference,
|
||||
String selectedKey) {
|
||||
preference.setChecked(selectedKey.equals(preference.getKey()));
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ import androidx.preference.Preference;
|
||||
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class OptimizedPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
@@ -51,19 +51,19 @@ public class OptimizedPreferenceController extends AbstractPreferenceController
|
||||
if (!mBatteryOptimizeUtils.isValidPackageName()) {
|
||||
Log.d(TAG, "invalid package name, optimized states only");
|
||||
preference.setEnabled(true);
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
return;
|
||||
}
|
||||
|
||||
if (mBatteryOptimizeUtils.isSystemOrDefaultApp()) {
|
||||
Log.d(TAG, "is system or default app, disable pref");
|
||||
((RadioButtonPreference) preference).setChecked(false);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(false);
|
||||
preference.setEnabled(false);
|
||||
} else if (mBatteryOptimizeUtils.getAppUsageState() == OPTIMIZED) {
|
||||
Log.d(TAG, "is optimized states");
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
} else {
|
||||
((RadioButtonPreference) preference).setChecked(false);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ import androidx.preference.Preference;
|
||||
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class RestrictedPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
@@ -55,13 +55,13 @@ public class RestrictedPreferenceController extends AbstractPreferenceController
|
||||
|
||||
if (mBatteryOptimizeUtils.isSystemOrDefaultApp()) {
|
||||
Log.d(TAG, "is system or default app, disable pref");
|
||||
((RadioButtonPreference) preference).setChecked(false);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(false);
|
||||
preference.setEnabled(false);
|
||||
} else if (mBatteryOptimizeUtils.getAppUsageState() == RESTRICTED) {
|
||||
Log.d(TAG, "is restricted states");
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
} else {
|
||||
((RadioButtonPreference) preference).setChecked(false);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ import androidx.preference.Preference;
|
||||
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class UnrestrictedPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
@@ -54,12 +54,12 @@ public class UnrestrictedPreferenceController extends AbstractPreferenceControll
|
||||
|
||||
if (mBatteryOptimizeUtils.isSystemOrDefaultApp()) {
|
||||
Log.d(TAG, "is system or default app, unrestricted states only");
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
} else if (mBatteryOptimizeUtils.getAppUsageState() == UNRESTRICTED) {
|
||||
Log.d(TAG, "is unrestricted states");
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
} else {
|
||||
((RadioButtonPreference) preference).setChecked(false);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ import com.android.settings.R;
|
||||
import com.android.settings.widget.RadioButtonPickerFragment;
|
||||
import com.android.settingslib.fuelgauge.BatterySaverUtils;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
@@ -142,8 +142,8 @@ public class BatterySaverScheduleSettings extends RadioButtonPickerFragment {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindPreferenceExtra(RadioButtonPreference pref, String key, CandidateInfo info,
|
||||
String defaultKey, String systemDefaultKey) {
|
||||
public void bindPreferenceExtra(SelectorWithWidgetPreference pref, String key,
|
||||
CandidateInfo info, String defaultKey, String systemDefaultKey) {
|
||||
final BatterySaverScheduleCandidateInfo candidateInfo =
|
||||
(BatterySaverScheduleCandidateInfo) info;
|
||||
final CharSequence summary = candidateInfo.getSummary();
|
||||
|
||||
@@ -26,7 +26,7 @@ import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
/**
|
||||
* The controller to handle one-handed mode pull screen into reach preference.
|
||||
@@ -46,8 +46,8 @@ public class OneHandedActionPullDownPrefController extends BasePreferenceControl
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
super.updateState(preference);
|
||||
if (preference instanceof RadioButtonPreference) {
|
||||
((RadioButtonPreference) preference).setChecked(
|
||||
if (preference instanceof SelectorWithWidgetPreference) {
|
||||
((SelectorWithWidgetPreference) preference).setChecked(
|
||||
!OneHandedSettingsUtils.isSwipeDownNotificationEnabled(mContext));
|
||||
}
|
||||
}
|
||||
@@ -65,8 +65,8 @@ public class OneHandedActionPullDownPrefController extends BasePreferenceControl
|
||||
return false;
|
||||
}
|
||||
OneHandedSettingsUtils.setSwipeDownNotificationEnabled(mContext, false);
|
||||
if (preference instanceof RadioButtonPreference) {
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
if (preference instanceof SelectorWithWidgetPreference) {
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
/**
|
||||
* The controller to handle one-handed mode show notification preference.
|
||||
@@ -46,8 +46,8 @@ public class OneHandedActionShowNotificationPrefController extends BasePreferenc
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
super.updateState(preference);
|
||||
if (preference instanceof RadioButtonPreference) {
|
||||
((RadioButtonPreference) preference).setChecked(
|
||||
if (preference instanceof SelectorWithWidgetPreference) {
|
||||
((SelectorWithWidgetPreference) preference).setChecked(
|
||||
OneHandedSettingsUtils.isSwipeDownNotificationEnabled(mContext));
|
||||
}
|
||||
}
|
||||
@@ -65,8 +65,8 @@ public class OneHandedActionShowNotificationPrefController extends BasePreferenc
|
||||
return false;
|
||||
}
|
||||
OneHandedSettingsUtils.setSwipeDownNotificationEnabled(mContext, true);
|
||||
if (preference instanceof RadioButtonPreference) {
|
||||
((RadioButtonPreference) preference).setChecked(true);
|
||||
if (preference instanceof SelectorWithWidgetPreference) {
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -35,10 +35,10 @@ import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnPause;
|
||||
import com.android.settingslib.core.lifecycle.events.OnResume;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class PreventRingingGesturePreferenceController extends AbstractPreferenceController
|
||||
implements RadioButtonPreference.OnClickListener, LifecycleObserver,
|
||||
implements SelectorWithWidgetPreference.OnClickListener, LifecycleObserver,
|
||||
OnResume, OnPause, PreferenceControllerMixin {
|
||||
|
||||
@VisibleForTesting
|
||||
@@ -54,9 +54,9 @@ public class PreventRingingGesturePreferenceController extends AbstractPreferenc
|
||||
@VisibleForTesting
|
||||
PreferenceCategory mPreferenceCategory;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mVibratePref;
|
||||
SelectorWithWidgetPreference mVibratePref;
|
||||
@VisibleForTesting
|
||||
RadioButtonPreference mMutePref;
|
||||
SelectorWithWidgetPreference mMutePref;
|
||||
|
||||
private SettingObserver mSettingObserver;
|
||||
|
||||
@@ -100,7 +100,7 @@ public class PreventRingingGesturePreferenceController extends AbstractPreferenc
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
int preventRingingSetting = keyToSetting(preference.getKey());
|
||||
if (preventRingingSetting != Settings.Secure.getInt(mContext.getContentResolver(),
|
||||
Settings.Secure.VOLUME_HUSH_GESTURE, Settings.Secure.VOLUME_HUSH_VIBRATE)) {
|
||||
@@ -157,8 +157,9 @@ public class PreventRingingGesturePreferenceController extends AbstractPreferenc
|
||||
}
|
||||
}
|
||||
|
||||
private RadioButtonPreference makeRadioPreference(String key, int titleId) {
|
||||
RadioButtonPreference pref = new RadioButtonPreference(mPreferenceCategory.getContext());
|
||||
private SelectorWithWidgetPreference makeRadioPreference(String key, int titleId) {
|
||||
SelectorWithWidgetPreference pref = new SelectorWithWidgetPreference(
|
||||
mPreferenceCategory.getContext());
|
||||
pref.setKey(key);
|
||||
pref.setTitle(titleId);
|
||||
pref.setOnClickListener(this);
|
||||
|
||||
@@ -44,7 +44,7 @@ import com.android.settings.widget.RadioButtonPickerFragment;
|
||||
import com.android.settingslib.search.SearchIndexable;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.IllustrationPreference;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -105,8 +105,8 @@ public class SystemNavigationGestureSettings extends RadioButtonPickerFragment i
|
||||
return;
|
||||
}
|
||||
for (CandidateInfo info : candidateList) {
|
||||
RadioButtonPreference pref =
|
||||
new RadioButtonPreference(getPrefContext());
|
||||
SelectorWithWidgetPreference pref =
|
||||
new SelectorWithWidgetPreference(getPrefContext());
|
||||
bindPreference(pref, info.getKey(), info, defaultKey);
|
||||
bindPreferenceExtra(pref, info.getKey(), info, defaultKey, systemDefaultKey);
|
||||
screen.addPreference(pref);
|
||||
@@ -115,7 +115,7 @@ public class SystemNavigationGestureSettings extends RadioButtonPickerFragment i
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindPreferenceExtra(RadioButtonPreference pref,
|
||||
public void bindPreferenceExtra(SelectorWithWidgetPreference pref,
|
||||
String key, CandidateInfo info, String defaultKey, String systemDefaultKey) {
|
||||
if (!(info instanceof CandidateInfoExtra)) {
|
||||
return;
|
||||
|
||||
@@ -35,7 +35,7 @@ import com.android.settings.core.SubSettingLauncher;
|
||||
import com.android.settings.notification.NotificationBackend;
|
||||
import com.android.settings.notification.app.ConversationListSettings;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@@ -58,7 +58,7 @@ public class ZenModePriorityConversationsPreferenceController
|
||||
private int mNumImportantConversations = UNSET;
|
||||
private int mNumConversations = UNSET;
|
||||
private PreferenceCategory mPreferenceCategory;
|
||||
private List<RadioButtonPreference> mRadioButtonPreferences = new ArrayList<>();
|
||||
private List<SelectorWithWidgetPreference> mSelectorWithWidgetPreferences = new ArrayList<>();
|
||||
private Context mPreferenceScreenContext;
|
||||
|
||||
public ZenModePriorityConversationsPreferenceController(Context context, String key,
|
||||
@@ -101,7 +101,7 @@ public class ZenModePriorityConversationsPreferenceController
|
||||
public void updateState(Preference preference) {
|
||||
final int currSetting = mBackend.getPriorityConversationSenders();
|
||||
|
||||
for (RadioButtonPreference pref : mRadioButtonPreferences) {
|
||||
for (SelectorWithWidgetPreference pref : mSelectorWithWidgetPreferences) {
|
||||
pref.setChecked(keyToSetting(pref.getKey()) == currSetting);
|
||||
pref.setSummary(getSummary(pref.getKey()));
|
||||
}
|
||||
@@ -181,9 +181,9 @@ public class ZenModePriorityConversationsPreferenceController
|
||||
}.execute();
|
||||
}
|
||||
|
||||
private RadioButtonPreference makeRadioPreference(String key, int titleId) {
|
||||
final RadioButtonPreference pref =
|
||||
new RadioButtonPreference(mPreferenceCategory.getContext());
|
||||
private SelectorWithWidgetPreference makeRadioPreference(String key, int titleId) {
|
||||
final SelectorWithWidgetPreference pref =
|
||||
new SelectorWithWidgetPreference(mPreferenceCategory.getContext());
|
||||
if (KEY_ALL.equals(key) || KEY_IMPORTANT.equals(key)) {
|
||||
pref.setExtraWidgetOnClickListener(mConversationSettingsWidgetClickListener);
|
||||
}
|
||||
@@ -191,7 +191,7 @@ public class ZenModePriorityConversationsPreferenceController
|
||||
pref.setTitle(titleId);
|
||||
pref.setOnClickListener(mRadioButtonClickListener);
|
||||
mPreferenceCategory.addPreference(pref);
|
||||
mRadioButtonPreferences.add(pref);
|
||||
mSelectorWithWidgetPreferences.add(pref);
|
||||
return pref;
|
||||
}
|
||||
|
||||
@@ -206,10 +206,10 @@ public class ZenModePriorityConversationsPreferenceController
|
||||
}
|
||||
};
|
||||
|
||||
private RadioButtonPreference.OnClickListener mRadioButtonClickListener =
|
||||
new RadioButtonPreference.OnClickListener() {
|
||||
private SelectorWithWidgetPreference.OnClickListener mRadioButtonClickListener =
|
||||
new SelectorWithWidgetPreference.OnClickListener() {
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
int selectedConversationSetting = keyToSetting(preference.getKey());
|
||||
if (selectedConversationSetting != mBackend.getPriorityConversationSenders()) {
|
||||
mBackend.saveConversationSenders(selectedConversationSetting);
|
||||
|
||||
@@ -33,7 +33,7 @@ import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -63,7 +63,7 @@ public class ZenModePrioritySendersPreferenceController
|
||||
private final boolean mIsMessages; // if this is false, then this preference is for calls
|
||||
|
||||
private PreferenceCategory mPreferenceCategory;
|
||||
private List<RadioButtonPreference> mRadioButtonPreferences = new ArrayList<>();
|
||||
private List<SelectorWithWidgetPreference> mSelectorWithWidgetPreferences = new ArrayList<>();
|
||||
|
||||
public ZenModePrioritySendersPreferenceController(Context context, String key,
|
||||
Lifecycle lifecycle, boolean isMessages) {
|
||||
@@ -110,7 +110,7 @@ public class ZenModePrioritySendersPreferenceController
|
||||
public void updateState(Preference preference) {
|
||||
final int currSetting = getPrioritySenders();
|
||||
|
||||
for (RadioButtonPreference pref : mRadioButtonPreferences) {
|
||||
for (SelectorWithWidgetPreference pref : mSelectorWithWidgetPreferences) {
|
||||
pref.setChecked(keyToSetting(pref.getKey()) == currSetting);
|
||||
}
|
||||
}
|
||||
@@ -122,7 +122,7 @@ public class ZenModePrioritySendersPreferenceController
|
||||
}
|
||||
|
||||
private void updateSummaries() {
|
||||
for (RadioButtonPreference pref : mRadioButtonPreferences) {
|
||||
for (SelectorWithWidgetPreference pref : mSelectorWithWidgetPreferences) {
|
||||
pref.setSummary(getSummary(pref.getKey()));
|
||||
}
|
||||
}
|
||||
@@ -165,9 +165,9 @@ public class ZenModePrioritySendersPreferenceController
|
||||
}
|
||||
}
|
||||
|
||||
private RadioButtonPreference makeRadioPreference(String key, int titleId) {
|
||||
final RadioButtonPreference pref =
|
||||
new RadioButtonPreference(mPreferenceCategory.getContext());
|
||||
private SelectorWithWidgetPreference makeRadioPreference(String key, int titleId) {
|
||||
final SelectorWithWidgetPreference pref =
|
||||
new SelectorWithWidgetPreference(mPreferenceCategory.getContext());
|
||||
pref.setKey(key);
|
||||
pref.setTitle(titleId);
|
||||
pref.setOnClickListener(mRadioButtonClickListener);
|
||||
@@ -178,14 +178,14 @@ public class ZenModePrioritySendersPreferenceController
|
||||
}
|
||||
|
||||
mPreferenceCategory.addPreference(pref);
|
||||
mRadioButtonPreferences.add(pref);
|
||||
mSelectorWithWidgetPreferences.add(pref);
|
||||
return pref;
|
||||
}
|
||||
|
||||
private RadioButtonPreference.OnClickListener mRadioButtonClickListener =
|
||||
new RadioButtonPreference.OnClickListener() {
|
||||
private SelectorWithWidgetPreference.OnClickListener mRadioButtonClickListener =
|
||||
new SelectorWithWidgetPreference.OnClickListener() {
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
int selectedSetting = keyToSetting(preference.getKey());
|
||||
if (selectedSetting != getPrioritySenders()) {
|
||||
mBackend.saveSenders(
|
||||
|
||||
@@ -24,13 +24,13 @@ import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenModeVisEffectsAllPreferenceController
|
||||
extends AbstractZenModePreferenceController
|
||||
implements RadioButtonPreference.OnClickListener {
|
||||
implements SelectorWithWidgetPreference.OnClickListener {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
protected static final int EFFECTS = Policy.SUPPRESSED_EFFECT_SCREEN_OFF
|
||||
| Policy.SUPPRESSED_EFFECT_SCREEN_ON
|
||||
@@ -69,7 +69,7 @@ public class ZenModeVisEffectsAllPreferenceController
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference p) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference p) {
|
||||
mMetricsFeatureProvider.action(mContext,
|
||||
SettingsEnums.ACTION_ZEN_SOUND_AND_VIS_EFFECTS, true);
|
||||
mBackend.saveVisualEffectsPolicy(EFFECTS, true);
|
||||
|
||||
@@ -26,12 +26,12 @@ import androidx.preference.PreferenceScreen;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.SubSettingLauncher;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenModeVisEffectsCustomPreferenceController
|
||||
extends AbstractZenModePreferenceController {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
protected static final int INTERRUPTIVE_EFFECTS =
|
||||
NotificationManager.Policy.SUPPRESSED_EFFECT_AMBIENT
|
||||
|
||||
@@ -24,13 +24,13 @@ import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenModeVisEffectsNonePreferenceController
|
||||
extends AbstractZenModePreferenceController
|
||||
implements RadioButtonPreference.OnClickListener {
|
||||
implements SelectorWithWidgetPreference.OnClickListener {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
protected static final int EFFECTS = Policy.SUPPRESSED_EFFECT_SCREEN_OFF
|
||||
| Policy.SUPPRESSED_EFFECT_SCREEN_ON
|
||||
@@ -68,7 +68,7 @@ public class ZenModeVisEffectsNonePreferenceController
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference preference) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference preference) {
|
||||
mMetricsFeatureProvider.action(mContext,
|
||||
SettingsEnums.ACTION_ZEN_SOUND_ONLY, true);
|
||||
mBackend.saveVisualEffectsPolicy(EFFECTS, false);
|
||||
|
||||
@@ -25,12 +25,12 @@ import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.core.SubSettingLauncher;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenRuleCustomPolicyPreferenceController extends
|
||||
AbstractZenCustomRulePreferenceController {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
public ZenRuleCustomPolicyPreferenceController(Context context, Lifecycle lifecycle,
|
||||
String key) {
|
||||
|
||||
@@ -26,12 +26,12 @@ import androidx.preference.PreferenceScreen;
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenRuleDefaultPolicyPreferenceController extends
|
||||
AbstractZenCustomRulePreferenceController implements PreferenceControllerMixin {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
public ZenRuleDefaultPolicyPreferenceController(Context context, Lifecycle lifecycle,
|
||||
String key) {
|
||||
|
||||
@@ -27,12 +27,12 @@ import androidx.preference.PreferenceScreen;
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenRuleVisEffectsAllPreferenceController extends
|
||||
AbstractZenCustomRulePreferenceController implements PreferenceControllerMixin {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
public ZenRuleVisEffectsAllPreferenceController(Context context, Lifecycle lifecycle,
|
||||
String key) {
|
||||
|
||||
@@ -27,12 +27,12 @@ import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.core.SubSettingLauncher;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenRuleVisEffectsCustomPreferenceController extends
|
||||
AbstractZenCustomRulePreferenceController implements PreferenceControllerMixin {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
public ZenRuleVisEffectsCustomPreferenceController(Context context, Lifecycle lifecycle,
|
||||
String key) {
|
||||
|
||||
@@ -27,12 +27,12 @@ import androidx.preference.PreferenceScreen;
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
public class ZenRuleVisEffectsNonePreferenceController extends
|
||||
AbstractZenCustomRulePreferenceController implements PreferenceControllerMixin {
|
||||
|
||||
private RadioButtonPreference mPreference;
|
||||
private SelectorWithWidgetPreference mPreference;
|
||||
|
||||
public ZenRuleVisEffectsNonePreferenceController(Context context, Lifecycle lifecycle,
|
||||
String key) {
|
||||
|
||||
@@ -38,7 +38,7 @@ import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||
import com.android.settings.core.PreferenceXmlParserUtils;
|
||||
import com.android.settings.core.PreferenceXmlParserUtils.MetadataFlag;
|
||||
import com.android.settingslib.widget.CandidateInfo;
|
||||
import com.android.settingslib.widget.RadioButtonPreference;
|
||||
import com.android.settingslib.widget.SelectorWithWidgetPreference;
|
||||
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
@@ -47,7 +47,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFragment implements
|
||||
RadioButtonPreference.OnClickListener {
|
||||
SelectorWithWidgetPreference.OnClickListener {
|
||||
|
||||
@VisibleForTesting
|
||||
static final String EXTRA_FOR_WORK = "for_work";
|
||||
@@ -110,7 +110,7 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
protected abstract int getPreferenceScreenResId();
|
||||
|
||||
@Override
|
||||
public void onRadioButtonClicked(RadioButtonPreference selected) {
|
||||
public void onRadioButtonClicked(SelectorWithWidgetPreference selected) {
|
||||
final String selectedKey = selected.getKey();
|
||||
onRadioButtonConfirmed(selectedKey);
|
||||
}
|
||||
@@ -150,7 +150,7 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
/**
|
||||
* A chance for subclasses to bind additional things to the preference.
|
||||
*/
|
||||
public void bindPreferenceExtra(RadioButtonPreference pref,
|
||||
public void bindPreferenceExtra(SelectorWithWidgetPreference pref,
|
||||
String key, CandidateInfo info, String defaultKey, String systemDefaultKey) {
|
||||
}
|
||||
|
||||
@@ -175,7 +175,8 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
|
||||
final int customLayoutResId = getRadioButtonPreferenceCustomLayoutResId();
|
||||
if (shouldShowItemNone()) {
|
||||
final RadioButtonPreference nonePref = new RadioButtonPreference(getPrefContext());
|
||||
final SelectorWithWidgetPreference nonePref =
|
||||
new SelectorWithWidgetPreference(getPrefContext());
|
||||
if (customLayoutResId > 0) {
|
||||
nonePref.setLayoutResource(customLayoutResId);
|
||||
}
|
||||
@@ -187,7 +188,8 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
}
|
||||
if (candidateList != null) {
|
||||
for (CandidateInfo info : candidateList) {
|
||||
RadioButtonPreference pref = new RadioButtonPreference(getPrefContext());
|
||||
SelectorWithWidgetPreference pref =
|
||||
new SelectorWithWidgetPreference(getPrefContext());
|
||||
if (customLayoutResId > 0) {
|
||||
pref.setLayoutResource(customLayoutResId);
|
||||
}
|
||||
@@ -202,7 +204,7 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
}
|
||||
}
|
||||
|
||||
public RadioButtonPreference bindPreference(RadioButtonPreference pref,
|
||||
public SelectorWithWidgetPreference bindPreference(SelectorWithWidgetPreference pref,
|
||||
String key, CandidateInfo info, String defaultKey) {
|
||||
pref.setTitle(info.loadLabel());
|
||||
pref.setIcon(Utils.getSafeIcon(info.loadIcon()));
|
||||
@@ -221,8 +223,9 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
final int count = screen.getPreferenceCount();
|
||||
for (int i = 0; i < count; i++) {
|
||||
final Preference pref = screen.getPreference(i);
|
||||
if (pref instanceof RadioButtonPreference) {
|
||||
final RadioButtonPreference radioPref = (RadioButtonPreference) pref;
|
||||
if (pref instanceof SelectorWithWidgetPreference) {
|
||||
final SelectorWithWidgetPreference radioPref =
|
||||
(SelectorWithWidgetPreference) pref;
|
||||
final boolean newCheckedState = TextUtils.equals(pref.getKey(), selectedKey);
|
||||
if (radioPref.isChecked() != newCheckedState) {
|
||||
radioPref.setChecked(TextUtils.equals(pref.getKey(), selectedKey));
|
||||
@@ -237,8 +240,8 @@ public abstract class RadioButtonPickerFragment extends InstrumentedPreferenceFr
|
||||
// If there is only 1 thing on screen, select it.
|
||||
if (screen != null && screen.getPreferenceCount() == 1) {
|
||||
final Preference onlyPref = screen.getPreference(0);
|
||||
if (onlyPref instanceof RadioButtonPreference) {
|
||||
((RadioButtonPreference) onlyPref).setChecked(true);
|
||||
if (onlyPref instanceof SelectorWithWidgetPreference) {
|
||||
((SelectorWithWidgetPreference) onlyPref).setChecked(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user