diff options
4 files changed, 18 insertions, 24 deletions
diff --git a/services/core/java/com/android/server/display/BrightnessTracker.java b/services/core/java/com/android/server/display/BrightnessTracker.java index 6e1640d545fe..0307f84c9de7 100644 --- a/services/core/java/com/android/server/display/BrightnessTracker.java +++ b/services/core/java/com/android/server/display/BrightnessTracker.java @@ -35,7 +35,6 @@ import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.hardware.display.AmbientBrightnessDayStats; import android.hardware.display.BrightnessChangeEvent; -import android.hardware.display.BrightnessConfiguration; import android.hardware.display.ColorDisplayManager; import android.hardware.display.DisplayManager; import android.hardware.display.DisplayManagerInternal; @@ -126,7 +125,7 @@ public class BrightnessTracker { private static final int MSG_BRIGHTNESS_CHANGED = 1; private static final int MSG_STOP_SENSOR_LISTENER = 2; private static final int MSG_START_SENSOR_LISTENER = 3; - private static final int MSG_BRIGHTNESS_CONFIG_CHANGED = 4; + private static final int MSG_SHOULD_COLLECT_COLOR_SAMPLE_CHANGED = 4; private static final int MSG_SENSOR_CHANGED = 5; private static final SimpleDateFormat FORMAT = new SimpleDateFormat("MM-dd HH:mm:ss.SSS"); @@ -162,7 +161,7 @@ public class BrightnessTracker { private boolean mColorSamplingEnabled; private int mNoFramesToSample; private float mFrameRate; - private BrightnessConfiguration mBrightnessConfiguration; + private boolean mShouldCollectColorSample = false; // End of block of members that should only be accessed on the mBgHandler thread. private @UserIdInt int mCurrentUserId = UserHandle.USER_NULL; @@ -208,9 +207,9 @@ public class BrightnessTracker { /** * Update tracker with new brightness configuration. */ - public void setBrightnessConfiguration(BrightnessConfiguration brightnessConfiguration) { - mBgHandler.obtainMessage(MSG_BRIGHTNESS_CONFIG_CHANGED, - brightnessConfiguration).sendToTarget(); + public void setShouldCollectColorSample(boolean shouldCollectColorSample) { + mBgHandler.obtainMessage(MSG_SHOULD_COLLECT_COLOR_SAMPLE_CHANGED, + shouldCollectColorSample).sendToTarget(); } private void backgroundStart(float initialBrightness) { @@ -827,8 +826,7 @@ public class BrightnessTracker { if (!mInjector.isBrightnessModeAutomatic(mContentResolver) || !mInjector.isInteractive(mContext) || mColorSamplingEnabled - || mBrightnessConfiguration == null - || !mBrightnessConfiguration.shouldCollectColorSamples()) { + || !mShouldCollectColorSample) { return; } @@ -1009,14 +1007,11 @@ public class BrightnessTracker { stopSensorListener(); disableColorSampling(); break; - case MSG_BRIGHTNESS_CONFIG_CHANGED: - mBrightnessConfiguration = (BrightnessConfiguration) msg.obj; - boolean shouldCollectColorSamples = - mBrightnessConfiguration != null - && mBrightnessConfiguration.shouldCollectColorSamples(); - if (shouldCollectColorSamples && !mColorSamplingEnabled) { + case MSG_SHOULD_COLLECT_COLOR_SAMPLE_CHANGED: + mShouldCollectColorSample = (boolean) msg.obj; + if (mShouldCollectColorSample && !mColorSamplingEnabled) { enableColorSampling(); - } else if (!shouldCollectColorSamples && mColorSamplingEnabled) { + } else if (!mShouldCollectColorSample && mColorSamplingEnabled) { disableColorSampling(); } break; diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index 9917bfc3aca6..48dc226db1cf 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -1555,7 +1555,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call : AutomaticBrightnessController.AUTO_BRIGHTNESS_DISABLED); if (mBrightnessTracker != null) { - mBrightnessTracker.setBrightnessConfiguration(mBrightnessConfiguration); + mBrightnessTracker.setShouldCollectColorSample(mBrightnessConfiguration != null + && mBrightnessConfiguration.shouldCollectColorSamples()); } boolean updateScreenBrightnessSetting = false; diff --git a/services/core/java/com/android/server/display/DisplayPowerController2.java b/services/core/java/com/android/server/display/DisplayPowerController2.java index f49419cf789e..ad7d5a8feea7 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController2.java +++ b/services/core/java/com/android/server/display/DisplayPowerController2.java @@ -1267,7 +1267,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal : AutomaticBrightnessController.AUTO_BRIGHTNESS_DISABLED); if (mBrightnessTracker != null) { - mBrightnessTracker.setBrightnessConfiguration(mBrightnessConfiguration); + mBrightnessTracker.setShouldCollectColorSample(mBrightnessConfiguration != null + && mBrightnessConfiguration.shouldCollectColorSamples()); } boolean updateScreenBrightnessSetting = false; diff --git a/services/tests/servicestests/src/com/android/server/display/BrightnessTrackerTest.java b/services/tests/servicestests/src/com/android/server/display/BrightnessTrackerTest.java index 6def7b1c8c35..8981160d1f25 100644 --- a/services/tests/servicestests/src/com/android/server/display/BrightnessTrackerTest.java +++ b/services/tests/servicestests/src/com/android/server/display/BrightnessTrackerTest.java @@ -176,21 +176,18 @@ public class BrightnessTrackerTest { assertFalse(mInjector.mColorSamplingEnabled); // Update brightness config to enabled color sampling. - mTracker.setBrightnessConfiguration(buildBrightnessConfiguration( - /* collectColorSamples= */ true)); + mTracker.setShouldCollectColorSample(/* collectColorSamples= */ true); mInjector.waitForHandler(); assertTrue(mInjector.mColorSamplingEnabled); // Update brightness config to disable color sampling. - mTracker.setBrightnessConfiguration(buildBrightnessConfiguration( - /* collectColorSamples= */ false)); + mTracker.setShouldCollectColorSample(/* collectColorSamples= */ false); mInjector.waitForHandler(); assertFalse(mInjector.mColorSamplingEnabled); // Pretend screen is off, update config to turn on color sampling. mInjector.sendScreenChange(/* screenOn= */ false); - mTracker.setBrightnessConfiguration(buildBrightnessConfiguration( - /* collectColorSamples= */ true)); + mTracker.setShouldCollectColorSample(/* collectColorSamples= */ true); mInjector.waitForHandler(); assertFalse(mInjector.mColorSamplingEnabled); @@ -883,7 +880,7 @@ public class BrightnessTrackerTest { private void startTracker(BrightnessTracker tracker, float initialBrightness, boolean collectColorSamples) { tracker.start(initialBrightness); - tracker.setBrightnessConfiguration(buildBrightnessConfiguration(collectColorSamples)); + tracker.setShouldCollectColorSample(collectColorSamples); mInjector.waitForHandler(); } |