Merge "Update check boxes to switches" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
3f208db1dd
@@ -24,15 +24,15 @@
|
||||
android:title="@string/zen_mode_block_effects_screen_off"
|
||||
android:key="zen_mode_block_screen_off">
|
||||
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_intent"
|
||||
android:title="@string/zen_mode_block_effect_intent" />
|
||||
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_light"
|
||||
android:title="@string/zen_mode_block_effect_light" />
|
||||
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_ambient"
|
||||
android:title="@string/zen_mode_block_effect_ambient" />
|
||||
|
||||
@@ -40,19 +40,19 @@
|
||||
<PreferenceCategory
|
||||
android:title="@string/zen_mode_block_effects_screen_on"
|
||||
android:key="zen_mode_block_screen_on">
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_badge"
|
||||
android:title="@string/zen_mode_block_effect_badge" />
|
||||
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_status"
|
||||
android:title="@string/zen_mode_block_effect_status" />
|
||||
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_peek"
|
||||
android:title="@string/zen_mode_block_effect_peek" />
|
||||
|
||||
<com.android.settings.widget.DisabledCheckBoxPreference
|
||||
<SwitchPreferenceCompat
|
||||
android:key="zen_effect_list"
|
||||
android:title="@string/zen_mode_block_effect_list" />
|
||||
</PreferenceCategory>
|
||||
|
@@ -23,6 +23,7 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.CheckBoxPreference;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.TwoStatePreference;
|
||||
|
||||
import com.android.settings.widget.DisabledCheckBoxPreference;
|
||||
|
||||
@@ -57,7 +58,6 @@ public class ZenModeNotifVisPreferenceController extends AbstractZenModePreferen
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference, @NonNull ZenMode zenMode) {
|
||||
|
||||
boolean suppressed = !zenMode.getPolicy().isVisualEffectAllowed(mEffect, false);
|
||||
boolean parentSuppressed = false;
|
||||
if (mParentSuppressedEffects != null) {
|
||||
@@ -68,12 +68,12 @@ public class ZenModeNotifVisPreferenceController extends AbstractZenModePreferen
|
||||
}
|
||||
}
|
||||
if (parentSuppressed) {
|
||||
((CheckBoxPreference) preference).setChecked(true);
|
||||
((TwoStatePreference) preference).setChecked(true);
|
||||
onPreferenceChange(preference, true);
|
||||
((DisabledCheckBoxPreference) preference).enableCheckbox(false);
|
||||
preference.setEnabled(false);
|
||||
} else {
|
||||
((DisabledCheckBoxPreference) preference).enableCheckbox(true);
|
||||
((CheckBoxPreference) preference).setChecked(suppressed);
|
||||
preference.setEnabled(true);
|
||||
((TwoStatePreference) preference).setChecked(suppressed);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -41,7 +41,7 @@ import android.platform.test.annotations.EnableFlags;
|
||||
import android.platform.test.flag.junit.SetFlagsRule;
|
||||
import android.service.notification.ZenPolicy;
|
||||
|
||||
import com.android.settings.widget.DisabledCheckBoxPreference;
|
||||
import androidx.preference.TwoStatePreference;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Rule;
|
||||
@@ -95,7 +95,7 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
|
||||
@Test
|
||||
public void updateState_notChecked() {
|
||||
DisabledCheckBoxPreference preference = mock(DisabledCheckBoxPreference.class);
|
||||
TwoStatePreference preference = mock(TwoStatePreference.class);
|
||||
ZenMode zenMode = new ZenMode("id",
|
||||
new AutomaticZenRule.Builder("Driving", Uri.parse("drive"))
|
||||
.setType(AutomaticZenRule.TYPE_DRIVING)
|
||||
@@ -109,12 +109,12 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
mController.updateZenMode(preference, zenMode);
|
||||
|
||||
verify(preference).setChecked(false);
|
||||
verify(preference).enableCheckbox(true);
|
||||
verify(preference).setEnabled(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateState_checked() {
|
||||
DisabledCheckBoxPreference preference = mock(DisabledCheckBoxPreference.class);
|
||||
TwoStatePreference preference = mock(TwoStatePreference.class);
|
||||
ZenMode zenMode = new ZenMode("id",
|
||||
new AutomaticZenRule.Builder("Driving", Uri.parse("drive"))
|
||||
.setType(AutomaticZenRule.TYPE_DRIVING)
|
||||
@@ -128,12 +128,12 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
mController.updateZenMode(preference, zenMode);
|
||||
|
||||
verify(preference).setChecked(true);
|
||||
verify(preference).enableCheckbox(true);
|
||||
verify(preference).setEnabled(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateState_checkedFalse_parentChecked() {
|
||||
DisabledCheckBoxPreference preference = mock(DisabledCheckBoxPreference.class);
|
||||
TwoStatePreference preference = mock(TwoStatePreference.class);
|
||||
mController = new ZenModeNotifVisPreferenceController(mContext,
|
||||
"zen_effect_status", VISUAL_EFFECT_STATUS_BAR,
|
||||
new int[]{VISUAL_EFFECT_NOTIFICATION_LIST}, mBackend);
|
||||
@@ -152,7 +152,7 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
mController.updateZenMode(preference, zenMode);
|
||||
|
||||
verify(preference).setChecked(true);
|
||||
verify(preference).enableCheckbox(false);
|
||||
verify(preference).setEnabled(false);
|
||||
ArgumentCaptor<ZenMode> captor = ArgumentCaptor.forClass(ZenMode.class);
|
||||
verify(mBackend).updateMode(captor.capture());
|
||||
assertThat(captor.getValue().getPolicy().getVisualEffectStatusBar())
|
||||
@@ -163,7 +163,7 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
|
||||
@Test
|
||||
public void updateState_checkedFalse_parentNotChecked() {
|
||||
DisabledCheckBoxPreference preference = mock(DisabledCheckBoxPreference.class);
|
||||
TwoStatePreference preference = mock(TwoStatePreference.class);
|
||||
mController = new ZenModeNotifVisPreferenceController(mContext,
|
||||
"zen_effect_status", VISUAL_EFFECT_STATUS_BAR,
|
||||
new int[]{VISUAL_EFFECT_NOTIFICATION_LIST}, mBackend);
|
||||
@@ -181,13 +181,13 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
mController.updateZenMode(preference, zenMode);
|
||||
|
||||
verify(preference).setChecked(false);
|
||||
verify(preference).enableCheckbox(true);
|
||||
verify(preference).setEnabled(true);
|
||||
verify(mBackend, never()).updateMode(any());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onPreferenceChanged_checkedFalse() {
|
||||
DisabledCheckBoxPreference preference = mock(DisabledCheckBoxPreference.class);
|
||||
TwoStatePreference preference = mock(TwoStatePreference.class);
|
||||
ZenMode zenMode = new ZenMode("id",
|
||||
new AutomaticZenRule.Builder("Driving", Uri.parse("drive"))
|
||||
.setType(AutomaticZenRule.TYPE_DRIVING)
|
||||
@@ -212,7 +212,7 @@ public final class ZenModeNotifVisPreferenceControllerTest {
|
||||
|
||||
@Test
|
||||
public void onPreferenceChanged_checkedTrue() {
|
||||
DisabledCheckBoxPreference preference = mock(DisabledCheckBoxPreference.class);
|
||||
TwoStatePreference preference = mock(TwoStatePreference.class);
|
||||
ZenMode zenMode = new ZenMode("id",
|
||||
new AutomaticZenRule.Builder("Driving", Uri.parse("drive"))
|
||||
.setType(AutomaticZenRule.TYPE_DRIVING)
|
||||
|
Reference in New Issue
Block a user