Remove BrightnessConfiguration from BrightnessTracker
This will help in decouling the depedency between BrightnessTracker and BrightnessConfiguration. In future, with the introduction of AutomaticBrightnessStrategy, this will help in keeping DisplayBrightnessController independent of BrightnessConfiguration Bug: 270793321 Test: atest BrightnessTracker Change-Id: Icce9d6a45911fadc9ec215f9b251103bcfd1e35d
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user