Allow turning off currently active modes
Even if they don't allow manual invocation. The button will disappear afterwards -- maybe not perfect but good enough. Fixes: 355613076 Test: atest ZenModeButtonPreferenceControllerTest Flag: android.app.modes_ui Change-Id: I36cc96f7da78266be1a03e947304fc8e600899de
This commit is contained in:
@@ -89,6 +89,16 @@ public final class ZenModeButtonPreferenceControllerTest {
|
||||
assertThat(mController.isAvailable()).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isAvailable_ifModeActiveEvenIfAppOptsOut() {
|
||||
ZenMode zenMode = new TestModeBuilder()
|
||||
.setManualInvocationAllowed(false)
|
||||
.setActive(true)
|
||||
.build();
|
||||
mController.setZenMode(zenMode);
|
||||
assertThat(mController.isAvailable()).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isAvailable_notIfModeDisabled() {
|
||||
ZenMode zenMode = new TestModeBuilder()
|
||||
@@ -119,7 +129,6 @@ public final class ZenModeButtonPreferenceControllerTest {
|
||||
LayoutPreference pref = mock(LayoutPreference.class);
|
||||
when(pref.findViewById(anyInt())).thenReturn(button);
|
||||
ZenMode zenMode = new TestModeBuilder()
|
||||
.setManualInvocationAllowed(true)
|
||||
.setActive(true)
|
||||
.build();
|
||||
|
||||
@@ -151,7 +160,6 @@ public final class ZenModeButtonPreferenceControllerTest {
|
||||
LayoutPreference pref = mock(LayoutPreference.class);
|
||||
when(pref.findViewById(anyInt())).thenReturn(button);
|
||||
ZenMode zenMode = new TestModeBuilder()
|
||||
.setManualInvocationAllowed(true)
|
||||
.setActive(true)
|
||||
.build();
|
||||
|
||||
|
Reference in New Issue
Block a user