diff --git a/res/values/strings.xml b/res/values/strings.xml
index 66b3b8ca057..28562ffc8b7 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -13446,7 +13446,7 @@
Violet
- Done
+ Save
Cancel
diff --git a/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceController.java b/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceController.java
index ae1adfa85a7..fe69b2b4675 100644
--- a/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceController.java
+++ b/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceController.java
@@ -110,7 +110,7 @@ public class FlashNotificationsPreviewPreferenceController extends
if (preference == null) {
return;
}
- preference.setEnabled(FlashNotificationsUtil.getFlashNotificationsState(mContext)
+ preference.setVisible(FlashNotificationsUtil.getFlashNotificationsState(mContext)
!= FlashNotificationsUtil.State.OFF);
}
}
diff --git a/src/com/android/settings/accessibility/ScreenFlashNotificationColorDialogFragment.java b/src/com/android/settings/accessibility/ScreenFlashNotificationColorDialogFragment.java
index ca77f16f104..5094154eb9b 100644
--- a/src/com/android/settings/accessibility/ScreenFlashNotificationColorDialogFragment.java
+++ b/src/com/android/settings/accessibility/ScreenFlashNotificationColorDialogFragment.java
@@ -65,8 +65,7 @@ public class ScreenFlashNotificationColorDialogFragment extends DialogFragment i
final ScreenFlashNotificationColorDialogFragment result =
new ScreenFlashNotificationColorDialogFragment();
result.mCurrentColor = initialColor;
- result.mConsumer = colorConsumer != null ? colorConsumer : i -> {
- };
+ result.mConsumer = colorConsumer != null ? colorConsumer : i -> {};
return result;
}
@@ -89,7 +88,7 @@ public class ScreenFlashNotificationColorDialogFragment extends DialogFragment i
.setNeutralButton(R.string.flash_notifications_preview, null)
.setNegativeButton(R.string.color_selector_dialog_cancel, (dialog, which) -> {
})
- .setPositiveButton(R.string.color_selector_dialog_done, (dialog, which) -> {
+ .setPositiveButton(R.string.color_selector_dialog_save, (dialog, which) -> {
mCurrentColor = colorSelectorLayout.getCheckedColor(DEFAULT_SCREEN_FLASH_COLOR);
mConsumer.accept(mCurrentColor);
})
diff --git a/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceControllerTest.java
index 0f32f31ac1b..6432a171434 100644
--- a/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/FlashNotificationsPreviewPreferenceControllerTest.java
@@ -67,22 +67,23 @@ public class FlashNotificationsPreviewPreferenceControllerTest {
public MockitoRule mMockitoRule = MockitoJUnit.rule();
@Spy
private final Context mContext = ApplicationProvider.getApplicationContext();
- @Mock
- private PreferenceScreen mPreferenceScreen;
- @Mock
- private Preference mPreference;
@Spy
private ContentResolver mContentResolver = mContext.getContentResolver();
-
+ @Mock
+ private PreferenceScreen mPreferenceScreen;
+ private Preference mPreference;
private FlashNotificationsPreviewPreferenceController mController;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
- when(mPreferenceScreen.findPreference(PREFERENCE_KEY)).thenReturn(mPreference);
- when(mPreference.getKey()).thenReturn(PREFERENCE_KEY);
when(mContext.getContentResolver()).thenReturn(mContentResolver);
+
+ mPreference = new Preference(mContext);
+ mPreference.setKey(PREFERENCE_KEY);
+ when(mPreferenceScreen.findPreference(PREFERENCE_KEY)).thenReturn(mPreference);
+
mController = new FlashNotificationsPreviewPreferenceController(mContext, PREFERENCE_KEY);
}
@@ -97,40 +98,45 @@ public class FlashNotificationsPreviewPreferenceControllerTest {
}
@Test
- public void testDisplayPreference_torchPresent_cameraOff_screenOff_verifyDisabled() {
+ public void testDisplayPreference_torchPresent_cameraOff_screenOff_notVisible() {
setFlashNotificationsState(FlashNotificationsUtil.State.OFF);
mController.displayPreference(mPreferenceScreen);
- verify(mPreference).setEnabled(eq(false));
+
+ assertThat(mPreference.isVisible()).isFalse();
}
@Test
- public void testDisplayPreference_torchPresent_cameraOn_screenOff_verifyEnabled() {
+ public void testDisplayPreference_torchPresent_cameraOn_screenOff_isVisible() {
setFlashNotificationsState(FlashNotificationsUtil.State.CAMERA);
mController.displayPreference(mPreferenceScreen);
- verify(mPreference).setEnabled(eq(true));
+
+ assertThat(mPreference.isVisible()).isTrue();
}
@Test
- public void testDisplayPreference_torchPresent_cameraOff_screenOn_verifyEnabled() {
+ public void testDisplayPreference_torchPresent_cameraOff_screenOn_isVisible() {
setFlashNotificationsState(FlashNotificationsUtil.State.SCREEN);
mController.displayPreference(mPreferenceScreen);
- verify(mPreference).setEnabled(eq(true));
+
+ assertThat(mPreference.isVisible()).isTrue();
}
@Test
- public void testDisplayPreference_torchPresent_cameraOn_screenOn_verifyEnabled() {
+ public void testDisplayPreference_torchPresent_cameraOn_screenOn_isVisible() {
setFlashNotificationsState(FlashNotificationsUtil.State.CAMERA_SCREEN);
mController.displayPreference(mPreferenceScreen);
- verify(mPreference).setEnabled(eq(true));
+
+ assertThat(mPreference.isVisible()).isTrue();
}
@Test
public void testHandlePreferenceTreeClick_invalidPreference() {
mController.handlePreferenceTreeClick(mock(Preference.class));
+
verify(mContext, never()).sendBroadcastAsUser(any(), any());
}
@@ -160,6 +166,7 @@ public class FlashNotificationsPreviewPreferenceControllerTest {
@Test
public void onStateChanged_onResume_cameraUri_verifyRegister() {
mController.onStateChanged(mock(LifecycleOwner.class), Lifecycle.Event.ON_RESUME);
+
verify(mContentResolver).registerContentObserver(
eq(Settings.System.getUriFor(Settings.System.CAMERA_FLASH_NOTIFICATION)),
anyBoolean(), eq(mController.mContentObserver));
@@ -168,6 +175,7 @@ public class FlashNotificationsPreviewPreferenceControllerTest {
@Test
public void onStateChanged_onResume_screenUri_verifyRegister() {
mController.onStateChanged(mock(LifecycleOwner.class), Lifecycle.Event.ON_RESUME);
+
verify(mContentResolver).registerContentObserver(
eq(Settings.System.getUriFor(Settings.System.SCREEN_FLASH_NOTIFICATION)),
anyBoolean(), eq(mController.mContentObserver));
@@ -176,6 +184,7 @@ public class FlashNotificationsPreviewPreferenceControllerTest {
@Test
public void onStateChanged_onPause_verifyUnregister() {
mController.onStateChanged(mock(LifecycleOwner.class), Lifecycle.Event.ON_PAUSE);
+
verify(mContentResolver).unregisterContentObserver(eq(mController.mContentObserver));
}
}