diff options
| author | 2023-01-04 18:32:18 +0000 | |
|---|---|---|
| committer | 2023-01-04 18:32:18 +0000 | |
| commit | 536bd4abf5d756980ffeb8f93d90d6cbd7648055 (patch) | |
| tree | fe497b2a240234f6a85b6522e2731cdb51102b49 | |
| parent | c7341bb7e05abd1be1780aa328df51581ceace7a (diff) | |
| parent | 52d2e66e1f10b0da177e3fb466cf3a2ab4eb3385 (diff) | |
Merge "Stop the screen off brightness sensor controller" into tm-qpr-dev am: 3fce317e59 am: 52d2e66e1f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20869684
Change-Id: If835aac79a700dd0f909f72d9476ab6a5b639a7a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
3 files changed, 21 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index f4eed2b47ec4..affeef1bb666 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -852,6 +852,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mAutomaticBrightnessController.stop(); } + if (mScreenOffBrightnessSensorController != null) { + mScreenOffBrightnessSensorController.stop(); + } + if (mBrightnessSetting != null) { mBrightnessSetting.unregisterListener(mBrightnessSettingListener); } @@ -1093,6 +1097,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mBrightnessEventRingBuffer = new RingBuffer<>(BrightnessEvent.class, RINGBUFFER_MAX); + if (mScreenOffBrightnessSensorController != null) { + mScreenOffBrightnessSensorController.stop(); + } loadScreenOffBrightnessSensor(); int[] sensorValueToLux = mDisplayDeviceConfig.getScreenOffBrightnessSensorValueToLux(); if (mScreenOffBrightnessSensor != null && sensorValueToLux != null) { diff --git a/services/core/java/com/android/server/display/ScreenOffBrightnessSensorController.java b/services/core/java/com/android/server/display/ScreenOffBrightnessSensorController.java index 6f50dac07b99..4d394c2546be 100644 --- a/services/core/java/com/android/server/display/ScreenOffBrightnessSensorController.java +++ b/services/core/java/com/android/server/display/ScreenOffBrightnessSensorController.java @@ -92,6 +92,10 @@ public class ScreenOffBrightnessSensorController implements SensorEventListener } } + void stop() { + setLightSensorEnabled(false); + } + float getAutomaticScreenBrightness() { if (mLastSensorValue < 0 || mLastSensorValue >= mSensorValueToLux.length || (!mRegistered diff --git a/services/tests/servicestests/src/com/android/server/display/ScreenOffBrightnessSensorControllerTest.java b/services/tests/servicestests/src/com/android/server/display/ScreenOffBrightnessSensorControllerTest.java index ea04a193e569..5b10dc4e0bab 100644 --- a/services/tests/servicestests/src/com/android/server/display/ScreenOffBrightnessSensorControllerTest.java +++ b/services/tests/servicestests/src/com/android/server/display/ScreenOffBrightnessSensorControllerTest.java @@ -35,6 +35,7 @@ import androidx.test.runner.AndroidJUnit4; import com.android.server.testutils.OffsettableClock; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -73,6 +74,15 @@ public class ScreenOffBrightnessSensorControllerTest { ); } + @After + public void tearDown() { + if (mController != null) { + // Stop the update Brightness loop. + mController.stop(); + mController = null; + } + } + @Test public void testBrightness() throws Exception { when(mSensorManager.registerListener(any(SensorEventListener.class), eq(mLightSensor), |