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:
@@ -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