diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index 2010aca7249497a3b46802c0d4249a132a3afb1b..5255ee1bb7cfff661b5b75b4c76aa0b0a1761155 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -95,6 +95,8 @@ import com.android.server.display.whitebalance.DisplayWhiteBalanceFactory; import com.android.server.display.whitebalance.DisplayWhiteBalanceSettings; import com.android.server.policy.WindowManagerPolicy; +import com.libremobileos.providers.LMOSettings; + import java.io.PrintWriter; import java.util.Objects; @@ -995,6 +997,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS_FOR_ALS), /* notifyForDescendants= */ false, mSettingsObserver, UserHandle.USER_CURRENT); } + mContext.getContentResolver().registerContentObserver( + Settings.System.getUriFor(LMOSettings.System.AUTO_BRIGHTNESS_ONE_SHOT), + false /*notifyForDescendants*/, mSettingsObserver, UserHandle.USER_ALL); handleBrightnessModeChange(); } @@ -2419,6 +2424,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call .setPendingScreenBrightness(mDisplayBrightnessController .getScreenBrightnessSetting()); mAutomaticBrightnessStrategy.updatePendingAutoBrightnessAdjustments(); + mAutomaticBrightnessStrategy.setAutoBrightnessOneShotEnabled( + getAutoBrightnessOneShotSetting()); sendUpdatePowerState(); } @@ -2431,6 +2438,11 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC); } + private boolean getAutoBrightnessOneShotSetting() { + return Settings.System.getIntForUser( + mContext.getContentResolver(), LMOSettings.System.AUTO_BRIGHTNESS_ONE_SHOT, + 0, UserHandle.USER_CURRENT) == 1; + } @Override public float getScreenBrightnessSetting() {