Updates to use flash notification settings keys in settings provider
Previously we hard-coded the settings key in FlashNotificationUtils. Change to use internal system settings key for retrieving flash notification settings from the database. Bug: 266775683 Test: make RunSettingsRoboTests ROBOTEST_FILTER=CameraFlashNotificationPreferenceControllerTest Test: make RunSettingsRoboTests ROBOTEST_FILTER=ScreenFlashNotificationPreferenceControllerTest Test: make RunSettingsRoboTests ROBOTEST_FILTER=FlashNotificationsPreviewPreferenceControllerTest Test: make RunSettingsRoboTests ROBOTEST_FILTER=FlashNotificationsUtilTest Change-Id: I1e7a0c4ed58505cfb3c06e43af866744fa1b2d41
This commit is contained in:
@@ -18,7 +18,6 @@ package com.android.settings.accessibility;
|
||||
|
||||
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
|
||||
import static com.android.settings.accessibility.AccessibilityUtil.State.ON;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.SETTING_KEY_CAMERA_FLASH_NOTIFICATION;
|
||||
|
||||
import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
@@ -45,13 +44,13 @@ public class CameraFlashNotificationPreferenceController extends TogglePreferenc
|
||||
@Override
|
||||
public boolean isChecked() {
|
||||
return Settings.System.getInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_CAMERA_FLASH_NOTIFICATION, OFF) != OFF;
|
||||
Settings.System.CAMERA_FLASH_NOTIFICATION, OFF) != OFF;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean setChecked(boolean isChecked) {
|
||||
return Settings.System.putInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_CAMERA_FLASH_NOTIFICATION, (isChecked ? ON : OFF));
|
||||
Settings.System.CAMERA_FLASH_NOTIFICATION, (isChecked ? ON : OFF));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -19,8 +19,6 @@ package com.android.settings.accessibility;
|
||||
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.ACTION_FLASH_NOTIFICATION_START_PREVIEW;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.EXTRA_FLASH_NOTIFICATION_PREVIEW_TYPE;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.SETTING_KEY_CAMERA_FLASH_NOTIFICATION;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.SETTING_KEY_SCREEN_FLASH_NOTIFICATION;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.TYPE_SHORT_PREVIEW;
|
||||
|
||||
import android.content.ContentResolver;
|
||||
@@ -95,10 +93,10 @@ public class FlashNotificationsPreviewPreferenceController extends
|
||||
@NonNull Lifecycle.Event event) {
|
||||
if (event == Lifecycle.Event.ON_RESUME) {
|
||||
mContentResolver.registerContentObserver(
|
||||
Settings.System.getUriFor(SETTING_KEY_CAMERA_FLASH_NOTIFICATION),
|
||||
Settings.System.getUriFor(Settings.System.CAMERA_FLASH_NOTIFICATION),
|
||||
/* notifyForDescendants= */ false, mContentObserver);
|
||||
mContentResolver.registerContentObserver(
|
||||
Settings.System.getUriFor(SETTING_KEY_SCREEN_FLASH_NOTIFICATION),
|
||||
Settings.System.getUriFor(Settings.System.SCREEN_FLASH_NOTIFICATION),
|
||||
/* notifyForDescendants= */ false, mContentObserver);
|
||||
} else if (event == Lifecycle.Event.ON_PAUSE) {
|
||||
mContentResolver.unregisterContentObserver(mContentObserver);
|
||||
|
@@ -16,8 +16,6 @@
|
||||
|
||||
package com.android.settings.accessibility;
|
||||
|
||||
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
|
||||
|
||||
import android.content.Context;
|
||||
import android.hardware.camera2.CameraAccessException;
|
||||
import android.hardware.camera2.CameraCharacteristics;
|
||||
@@ -43,19 +41,10 @@ class FlashNotificationsUtil {
|
||||
static final String EXTRA_FLASH_NOTIFICATION_PREVIEW_TYPE =
|
||||
"com.android.internal.intent.extra.FLASH_NOTIFICATION_PREVIEW_TYPE";
|
||||
|
||||
static final String SETTING_KEY_CAMERA_FLASH_NOTIFICATION =
|
||||
"camera_flash_notification";
|
||||
static final String SETTING_KEY_SCREEN_FLASH_NOTIFICATION =
|
||||
"screen_flash_notification";
|
||||
static final String SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR =
|
||||
"screen_flash_notification_color_global";
|
||||
|
||||
static final int TYPE_SHORT_PREVIEW = 0;
|
||||
static final int TYPE_LONG_PREVIEW = 1;
|
||||
|
||||
static final int DEFAULT_SCREEN_FLASH_COLOR =
|
||||
ScreenFlashNotificationColor.YELLOW.mColorInt;
|
||||
|
||||
static final int DEFAULT_SCREEN_FLASH_COLOR = ScreenFlashNotificationColor.YELLOW.mColorInt;
|
||||
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@IntDef({
|
||||
@@ -128,9 +117,9 @@ class FlashNotificationsUtil {
|
||||
|
||||
final boolean isTorchAvailable = FlashNotificationsUtil.isTorchAvailable(context);
|
||||
final boolean isCameraFlashEnabled = Settings.System.getInt(context.getContentResolver(),
|
||||
SETTING_KEY_CAMERA_FLASH_NOTIFICATION, State.OFF) != State.OFF;
|
||||
Settings.System.CAMERA_FLASH_NOTIFICATION, State.OFF) != State.OFF;
|
||||
final boolean isScreenFlashEnabled = Settings.System.getInt(context.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION, State.OFF) != State.OFF;
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION, State.OFF) != State.OFF;
|
||||
|
||||
return ((isTorchAvailable && isCameraFlashEnabled) ? State.CAMERA : State.OFF)
|
||||
| (isScreenFlashEnabled ? State.SCREEN : State.OFF);
|
||||
|
@@ -19,8 +19,6 @@ package com.android.settings.accessibility;
|
||||
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
|
||||
import static com.android.settings.accessibility.AccessibilityUtil.State.ON;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.DEFAULT_SCREEN_FLASH_COLOR;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.SETTING_KEY_SCREEN_FLASH_NOTIFICATION;
|
||||
import static com.android.settings.accessibility.FlashNotificationsUtil.SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
@@ -59,7 +57,7 @@ public class ScreenFlashNotificationPreferenceController extends TogglePreferenc
|
||||
@Override
|
||||
public boolean isChecked() {
|
||||
return Settings.System.getInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION, OFF) != OFF;
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION, OFF) != OFF;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -67,7 +65,7 @@ public class ScreenFlashNotificationPreferenceController extends TogglePreferenc
|
||||
if (isChecked) checkAndSetInitialColor();
|
||||
|
||||
return Settings.System.putInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION, (isChecked ? ON : OFF));
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION, (isChecked ? ON : OFF));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -79,7 +77,8 @@ public class ScreenFlashNotificationPreferenceController extends TogglePreferenc
|
||||
public CharSequence getSummary() {
|
||||
return FlashNotificationsUtil.getColorDescriptionText(mContext,
|
||||
Settings.System.getInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR, DEFAULT_SCREEN_FLASH_COLOR));
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION_COLOR,
|
||||
DEFAULT_SCREEN_FLASH_COLOR));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -94,12 +93,12 @@ public class ScreenFlashNotificationPreferenceController extends TogglePreferenc
|
||||
if (getPreferenceKey().equals(preference.getKey()) && mParentFragment != null) {
|
||||
|
||||
final int initialColor = Settings.System.getInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR,
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION_COLOR,
|
||||
DEFAULT_SCREEN_FLASH_COLOR);
|
||||
|
||||
final Consumer<Integer> consumer = color -> {
|
||||
Settings.System.putInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR, color);
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION_COLOR, color);
|
||||
refreshColorSummary();
|
||||
};
|
||||
|
||||
@@ -115,10 +114,10 @@ public class ScreenFlashNotificationPreferenceController extends TogglePreferenc
|
||||
|
||||
private void checkAndSetInitialColor() {
|
||||
if (Settings.System.getInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR, Color.TRANSPARENT)
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION_COLOR, Color.TRANSPARENT)
|
||||
== Color.TRANSPARENT) {
|
||||
Settings.System.putInt(mContext.getContentResolver(),
|
||||
SETTING_KEY_SCREEN_FLASH_NOTIFICATION_COLOR, DEFAULT_SCREEN_FLASH_COLOR);
|
||||
Settings.System.SCREEN_FLASH_NOTIFICATION_COLOR, DEFAULT_SCREEN_FLASH_COLOR);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user