Telecomm: Add DND & Rate settings to flash on call [2/3]
diff --git a/src/com/android/server/telecom/Ringer.java b/src/com/android/server/telecom/Ringer.java
index ff9d01a..5e9ba82 100644
--- a/src/com/android/server/telecom/Ringer.java
+++ b/src/com/android/server/telecom/Ringer.java
@@ -353,6 +353,15 @@
}
}
+ boolean ignoreDND = Settings.System.getIntForUser(mContext.getContentResolver(),
+ Settings.System.FLASHLIGHT_ON_CALL_IGNORE_DND, 0,
+ UserHandle.USER_CURRENT) == 1;
+ if (!ignoreDND && shouldFlash) { // respect DND
+ int zenMode = Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.ZEN_MODE, Settings.Global.ZEN_MODE_OFF);
+ shouldFlash = zenMode == Settings.Global.ZEN_MODE_OFF;
+ }
+
if (shouldFlash) {
blinkFlashlight();
}
@@ -642,7 +651,7 @@
private boolean shouldStop = false;
private CameraManager cameraManager;
- private int duration = 500;
+ private int duration;
private boolean hasFlash = true;
private Context context;
@@ -654,6 +663,8 @@
private void init() {
cameraManager = (CameraManager) context.getSystemService(Context.CAMERA_SERVICE);
hasFlash = context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
+ duration = 500 / Settings.System.getIntForUser(context.getContentResolver(),
+ Settings.System.FLASHLIGHT_ON_CALL_RATE, 1, UserHandle.USER_CURRENT);
}
void stop() {