summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorFiona Campbell <flc@google.com>2020-10-30 12:26:32 +0000
committerFiona Campbell <flc@google.com>2020-11-10 11:21:33 +0000
commitd7bfe1f31042babcb28c89c454fb7ee93a66b283 (patch)
treed510cb1bd9ab0f6f752a61778afac48af4e55ad4 /core/java
parentc78d56770a4463c90a7dcf59d6a4189c6af06707 (diff)
Clean up BrightnessSynchronizer
Create a startSynchronizing() method rather than having this code in the constructor. This makes it cleaner and its actions more explicit. Bug: none Test: manual Change-Id: I6b84274639ad719ed877f1d04e6621717f860677
Diffstat (limited to 'core/java')
-rw-r--r--core/java/com/android/internal/BrightnessSynchronizer.java28
1 files changed, 17 insertions, 11 deletions
diff --git a/core/java/com/android/internal/BrightnessSynchronizer.java b/core/java/com/android/internal/BrightnessSynchronizer.java
index 15463cb34157..9049ca56bc53 100644
--- a/core/java/com/android/internal/BrightnessSynchronizer.java
+++ b/core/java/com/android/internal/BrightnessSynchronizer.java
@@ -73,18 +73,26 @@ public class BrightnessSynchronizer {
}
};
+ private float mPreferredSettingValue;
+
public BrightnessSynchronizer(Context context) {
- final BrightnessSyncObserver mBrightnessSyncObserver;
mContext = context;
- mBrightnessSyncObserver = new BrightnessSyncObserver(mHandler);
- mBrightnessSyncObserver.startObserving();
+ }
+
+ /**
+ * Starts brightnessSyncObserver to ensure that the float and int brightness values stay
+ * in sync.
+ * This also ensures that values are synchronized at system start up too.
+ * So we force an update to the int value, since float is the source of truth. Fallback to int
+ * value, if float is invalid. If both are invalid, use default float value from config.
+ */
+ public void startSynchronizing() {
+ final BrightnessSyncObserver brightnessSyncObserver;
+ brightnessSyncObserver = new BrightnessSyncObserver(mHandler);
+ brightnessSyncObserver.startObserving();
- // It is possible for the system to start up with the int and float values not
- // synchronized. So we force an update to the int value, since float is the source
- // of truth. Fallback to int value, if float is invalid. If both are invalid, use default
- // float value from config.
- final float currentFloatBrightness = getScreenBrightnessFloat(context);
- final int currentIntBrightness = getScreenBrightnessInt(context);
+ final float currentFloatBrightness = getScreenBrightnessFloat(mContext);
+ final int currentIntBrightness = getScreenBrightnessInt(mContext);
if (!Float.isNaN(currentFloatBrightness)) {
updateBrightnessIntFromFloat(currentFloatBrightness);
@@ -156,8 +164,6 @@ public class BrightnessSynchronizer {
UserHandle.USER_CURRENT);
}
- private float mPreferredSettingValue;
-
/**
* Updates the float setting based on a passed in int value. This is called whenever the int
* setting changes. mWriteHistory keeps a record of the values that been written to the settings