summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristine Franks <christyfranks@google.com>2017-10-30 16:22:37 -0700
committerandroid-build-team Robot <android-build-team-robot@google.com>2017-11-02 04:47:19 +0000
commitf0c423b634db370c4cdceacfb905750f476c8d85 (patch)
treea562ebb124ee3d82f611f8d87638ce033cbed5fa
parentde00b62099ee500ad010aab3d35022e2fc96d02a (diff)
downloadbase-f0c423b634db370c4cdceacfb905750f476c8d85.tar.gz
Respect legacy color mode settings
Bug: 68411440 Test: make -j100, verified starting with each of the three options. Change-Id: I73e701a86733e0f8a5d017949052b16cdf58f398 (cherry picked from commit 17947177b38c0b583ce263b1f66454b84cb5959e) (cherry picked from commit 8ab97c1e417620b99a2057b7dd6ad59ecc419853)
-rw-r--r--core/java/com/android/internal/app/NightDisplayController.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/core/java/com/android/internal/app/NightDisplayController.java b/core/java/com/android/internal/app/NightDisplayController.java
index d581777ba5bf..e0e15c818a02 100644
--- a/core/java/com/android/internal/app/NightDisplayController.java
+++ b/core/java/com/android/internal/app/NightDisplayController.java
@@ -25,6 +25,7 @@ import android.database.ContentObserver;
import android.net.Uri;
import android.os.Handler;
import android.os.Looper;
+import android.os.SystemProperties;
import android.provider.Settings.Secure;
import android.provider.Settings.System;
import android.util.Slog;
@@ -100,6 +101,12 @@ public final class NightDisplayController {
*/
public static final int COLOR_MODE_SATURATED = 2;
+ /**
+ * See com.android.server.display.DisplayTransformManager.
+ */
+ private static final String PERSISTENT_PROPERTY_SATURATION = "persist.sys.sf.color_saturation";
+ private static final String PERSISTENT_PROPERTY_NATIVE_MODE = "persist.sys.sf.native_mode";
+
private final Context mContext;
private final int mUserId;
@@ -334,9 +341,15 @@ public final class NightDisplayController {
*/
public int getColorMode() {
final int colorMode = System.getIntForUser(mContext.getContentResolver(),
- System.DISPLAY_COLOR_MODE, COLOR_MODE_BOOSTED, mUserId);
+ System.DISPLAY_COLOR_MODE, -1, mUserId);
if (colorMode < COLOR_MODE_NATURAL || colorMode > COLOR_MODE_SATURATED) {
- return COLOR_MODE_BOOSTED;
+ // There still might be a legacy system property controlling color mode that we need to
+ // respect.
+ if ("1".equals(SystemProperties.get(PERSISTENT_PROPERTY_NATIVE_MODE))) {
+ return COLOR_MODE_SATURATED;
+ }
+ return "1.0".equals(SystemProperties.get(PERSISTENT_PROPERTY_SATURATION))
+ ? COLOR_MODE_NATURAL : COLOR_MODE_BOOSTED;
}
return colorMode;
}