Use radio button style for single selection

1. First day of week page
2. Temperature page
3. Numbering system page

Bug: 375979373
Flag: EXEMPT bugfix
Test: atest FirstDayOfWeekItemListControllerTest, TemperatureUnitListControllerTest, NumberingSystemItemControllerTest
Change-Id: I645c5399e49caf880fa83f33a44ff974a602080c
This commit is contained in:
danielwbhuang
2024-10-23 18:12:54 +08:00
committed by Daniel Huang
parent e72b2d2be1
commit 689e0e4a17
5 changed files with 47 additions and 50 deletions

View File

@@ -25,16 +25,15 @@ import android.os.LocaleList;
import android.os.Looper;
import android.provider.Settings;
import com.android.internal.app.LocalePicker;
import com.android.settings.widget.TickButtonPreference;
import androidx.preference.PreferenceManager;
import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import com.android.internal.app.LocalePicker;
import com.android.settingslib.widget.SelectorWithWidgetPreference;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -91,8 +90,9 @@ public class FirstDayOfWeekItemListControllerTest {
@Test
public void displayPreference_setSelectPreferredFirstDayOfWeekIsDefault() {
TickButtonPreference pref = (TickButtonPreference) mPreferenceCategory.getPreference(0);
pref.performClick();
SelectorWithWidgetPreference pref =
(SelectorWithWidgetPreference) mPreferenceCategory.getPreference(0);
pref.onClick();
String record = Settings.System.getString(
mContext.getContentResolver(), Settings.System.LOCALE_PREFERENCES);
@@ -103,8 +103,9 @@ public class FirstDayOfWeekItemListControllerTest {
@Test
public void displayPreference_setSelectPreferredFirstDayOfWeekIsSunday() {
TickButtonPreference pref = (TickButtonPreference) mPreferenceCategory.getPreference(1);
pref.performClick();
SelectorWithWidgetPreference pref =
(SelectorWithWidgetPreference) mPreferenceCategory.getPreference(1);
pref.onClick();
String record = Settings.System.getString(
mContext.getContentResolver(), Settings.System.LOCALE_PREFERENCES);
@@ -114,8 +115,9 @@ public class FirstDayOfWeekItemListControllerTest {
@Test
public void displayPreference_setSelectPreferredFirstDayOfWeekIsMonday() {
TickButtonPreference pref = (TickButtonPreference) mPreferenceCategory.getPreference(2);
pref.performClick();
SelectorWithWidgetPreference pref =
(SelectorWithWidgetPreference) mPreferenceCategory.getPreference(2);
pref.onClick();
String record = Settings.System.getString(
mContext.getContentResolver(), Settings.System.LOCALE_PREFERENCES);

View File

@@ -38,7 +38,7 @@ import androidx.test.core.app.ApplicationProvider;
import com.android.internal.app.LocalePicker;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.widget.TickButtonPreference;
import com.android.settingslib.widget.SelectorWithWidgetPreference;
import org.junit.After;
import org.junit.Before;
@@ -82,7 +82,8 @@ public class NumberingSystemItemControllerTest {
NumberingSystemItemController.ARG_VALUE_LANGUAGE_SELECT);
bundle.putString(
NumberingSystemItemController.KEY_SELECTED_LANGUAGE, Locale.US.toLanguageTag());
TickButtonPreference preference = new TickButtonPreference(mApplicationContext);
SelectorWithWidgetPreference preference =
new SelectorWithWidgetPreference(mApplicationContext);
preference.setKey("I_am_the_key");
mPreferenceScreen.addPreference(preference);
mController = new NumberingSystemItemController(mApplicationContext, bundle);
@@ -110,7 +111,8 @@ public class NumberingSystemItemControllerTest {
NumberingSystemItemController.ARG_VALUE_NUMBERING_SYSTEM_SELECT);
bundle.putString(
NumberingSystemItemController.KEY_SELECTED_LANGUAGE, Locale.US.toLanguageTag());
TickButtonPreference preference = new TickButtonPreference(mApplicationContext);
SelectorWithWidgetPreference preference =
new SelectorWithWidgetPreference(mApplicationContext);
preference.setKey("test_key");
mPreferenceScreen.addPreference(preference);
mController = new NumberingSystemItemController(mApplicationContext, bundle);
@@ -133,8 +135,10 @@ public class NumberingSystemItemControllerTest {
NumberingSystemItemController.ARG_VALUE_NUMBERING_SYSTEM_SELECT);
bundle.putString(
NumberingSystemItemController.KEY_SELECTED_LANGUAGE, "ar-BH");
TickButtonPreference defaultPreference = new TickButtonPreference(mApplicationContext);
TickButtonPreference numberPreference = new TickButtonPreference(mApplicationContext);
SelectorWithWidgetPreference defaultPreference =
new SelectorWithWidgetPreference(mApplicationContext);
SelectorWithWidgetPreference numberPreference =
new SelectorWithWidgetPreference(mApplicationContext);
defaultPreference.setKey("default");
numberPreference.setKey("latn");
mPreferenceScreen.addPreference(defaultPreference);

View File

@@ -17,6 +17,7 @@
package com.android.settings.regionalpreferences;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.spy;
import android.content.Context;
@@ -24,16 +25,15 @@ import android.os.LocaleList;
import android.os.Looper;
import android.provider.Settings;
import com.android.internal.app.LocalePicker;
import com.android.settings.widget.TickButtonPreference;
import androidx.preference.PreferenceManager;
import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import com.android.internal.app.LocalePicker;
import com.android.settingslib.widget.SelectorWithWidgetPreference;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -88,8 +88,9 @@ public class TemperatureUnitListControllerTest {
@Test
public void displayPreference_setSelectPreferredTemperatureUnitIsDefault() {
TickButtonPreference pref = (TickButtonPreference) mPreferenceCategory.getPreference(0);
pref.performClick();
SelectorWithWidgetPreference pref =
(SelectorWithWidgetPreference) mPreferenceCategory.getPreference(0);
pref.onClick();
String record = Settings.System.getString(
mContext.getContentResolver(), Settings.System.LOCALE_PREFERENCES);
@@ -101,8 +102,9 @@ public class TemperatureUnitListControllerTest {
@Test
public void displayPreference_setSelectPreferredTemperatureUnitIsCelsius() {
TickButtonPreference pref = (TickButtonPreference) mPreferenceCategory.getPreference(1);
pref.performClick();
SelectorWithWidgetPreference pref =
(SelectorWithWidgetPreference) mPreferenceCategory.getPreference(1);
pref.onClick();
String record = Settings.System.getString(
mContext.getContentResolver(), Settings.System.LOCALE_PREFERENCES);
@@ -112,8 +114,9 @@ public class TemperatureUnitListControllerTest {
@Test
public void displayPreference_setSelectPreferredTemperatureUnitIsFahrenhe() {
TickButtonPreference pref = (TickButtonPreference) mPreferenceCategory.getPreference(2);
pref.performClick();
SelectorWithWidgetPreference pref =
(SelectorWithWidgetPreference) mPreferenceCategory.getPreference(2);
pref.onClick();
String record = Settings.System.getString(
mContext.getContentResolver(), Settings.System.LOCALE_PREFERENCES);