Revert "Notify display brightness changed due to brightness transforms"
This reverts commit b7c40451f4.
Reason for revert: b/214849040
Change-Id: I0a3f805a7e70784d613825db1181f654c57de15d
This commit is contained in:
@@ -50,8 +50,6 @@ import android.os.UserHandle;
|
|||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.util.MathUtils;
|
import android.util.MathUtils;
|
||||||
import android.util.MutableFloat;
|
|
||||||
import android.util.MutableInt;
|
|
||||||
import android.util.Slog;
|
import android.util.Slog;
|
||||||
import android.util.TimeUtils;
|
import android.util.TimeUtils;
|
||||||
import android.view.Display;
|
import android.view.Display;
|
||||||
@@ -1382,7 +1380,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
|
|
||||||
// Animate the screen brightness when the screen is on or dozing.
|
// Animate the screen brightness when the screen is on or dozing.
|
||||||
// Skip the animation when the screen is off or suspended or transition to/from VR.
|
// Skip the animation when the screen is off or suspended or transition to/from VR.
|
||||||
boolean brightnessAdjusted = false;
|
|
||||||
if (!mPendingScreenOff) {
|
if (!mPendingScreenOff) {
|
||||||
if (mSkipScreenOnBrightnessRamp) {
|
if (mSkipScreenOnBrightnessRamp) {
|
||||||
if (state == Display.STATE_ON) {
|
if (state == Display.STATE_ON) {
|
||||||
@@ -1475,19 +1472,15 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
// slider event so notify as if the system changed the brightness.
|
// slider event so notify as if the system changed the brightness.
|
||||||
userInitiatedChange = false;
|
userInitiatedChange = false;
|
||||||
}
|
}
|
||||||
notifyBrightnessTrackerChanged(brightnessState, userInitiatedChange,
|
notifyBrightnessChanged(brightnessState, userInitiatedChange,
|
||||||
hadUserBrightnessPoint);
|
hadUserBrightnessPoint);
|
||||||
}
|
}
|
||||||
|
|
||||||
// We save the brightness info *after* the brightness setting has been changed and
|
// We save the brightness info *after* the brightness setting has been changed and
|
||||||
// adjustments made so that the brightness info reflects the latest value.
|
// adjustments made so that the brightness info reflects the latest value.
|
||||||
brightnessAdjusted = saveBrightnessInfo(getScreenBrightnessSetting(), animateValue);
|
saveBrightnessInfo(getScreenBrightnessSetting(), animateValue);
|
||||||
} else {
|
} else {
|
||||||
brightnessAdjusted = saveBrightnessInfo(getScreenBrightnessSetting());
|
saveBrightnessInfo(getScreenBrightnessSetting());
|
||||||
}
|
|
||||||
|
|
||||||
if (brightnessAdjusted) {
|
|
||||||
postBrightnessChangeRunnable();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Log any changes to what is currently driving the brightness setting.
|
// Log any changes to what is currently driving the brightness setting.
|
||||||
@@ -1603,50 +1596,31 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
public BrightnessInfo getBrightnessInfo() {
|
public BrightnessInfo getBrightnessInfo() {
|
||||||
synchronized (mCachedBrightnessInfo) {
|
synchronized (mCachedBrightnessInfo) {
|
||||||
return new BrightnessInfo(
|
return new BrightnessInfo(
|
||||||
mCachedBrightnessInfo.brightness.value,
|
mCachedBrightnessInfo.brightness,
|
||||||
mCachedBrightnessInfo.adjustedBrightness.value,
|
mCachedBrightnessInfo.adjustedBrightness,
|
||||||
mCachedBrightnessInfo.brightnessMin.value,
|
mCachedBrightnessInfo.brightnessMin,
|
||||||
mCachedBrightnessInfo.brightnessMax.value,
|
mCachedBrightnessInfo.brightnessMax,
|
||||||
mCachedBrightnessInfo.hbmMode.value,
|
mCachedBrightnessInfo.hbmMode,
|
||||||
mCachedBrightnessInfo.hbmTransitionPoint.value);
|
mCachedBrightnessInfo.highBrightnessTransitionPoint);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean saveBrightnessInfo(float brightness) {
|
private void saveBrightnessInfo(float brightness) {
|
||||||
return saveBrightnessInfo(brightness, brightness);
|
saveBrightnessInfo(brightness, brightness);
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean saveBrightnessInfo(float brightness, float adjustedBrightness) {
|
private void saveBrightnessInfo(float brightness, float adjustedBrightness) {
|
||||||
synchronized (mCachedBrightnessInfo) {
|
synchronized (mCachedBrightnessInfo) {
|
||||||
boolean changed = false;
|
mCachedBrightnessInfo.brightness = brightness;
|
||||||
|
mCachedBrightnessInfo.adjustedBrightness = adjustedBrightness;
|
||||||
changed |=
|
mCachedBrightnessInfo.brightnessMin = mHbmController.getCurrentBrightnessMin();
|
||||||
mCachedBrightnessInfo.checkAndSetFloat(mCachedBrightnessInfo.brightness,
|
mCachedBrightnessInfo.brightnessMax = mHbmController.getCurrentBrightnessMax();
|
||||||
brightness);
|
mCachedBrightnessInfo.hbmMode = mHbmController.getHighBrightnessMode();
|
||||||
changed |=
|
mCachedBrightnessInfo.highBrightnessTransitionPoint =
|
||||||
mCachedBrightnessInfo.checkAndSetFloat(mCachedBrightnessInfo.adjustedBrightness,
|
mHbmController.getTransitionPoint();
|
||||||
adjustedBrightness);
|
|
||||||
changed |=
|
|
||||||
mCachedBrightnessInfo.checkAndSetFloat(mCachedBrightnessInfo.brightnessMin,
|
|
||||||
mHbmController.getCurrentBrightnessMin());
|
|
||||||
changed |=
|
|
||||||
mCachedBrightnessInfo.checkAndSetFloat(mCachedBrightnessInfo.brightnessMax,
|
|
||||||
mHbmController.getCurrentBrightnessMax());
|
|
||||||
changed |=
|
|
||||||
mCachedBrightnessInfo.checkAndSetInt(mCachedBrightnessInfo.hbmMode,
|
|
||||||
mHbmController.getHighBrightnessMode());
|
|
||||||
changed |=
|
|
||||||
mCachedBrightnessInfo.checkAndSetFloat(mCachedBrightnessInfo.hbmTransitionPoint,
|
|
||||||
mHbmController.getTransitionPoint());
|
|
||||||
|
|
||||||
return changed;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void postBrightnessChangeRunnable() {
|
|
||||||
mHandler.post(mOnBrightnessChangeRunnable);
|
|
||||||
}
|
|
||||||
|
|
||||||
private HighBrightnessModeController createHbmControllerLocked() {
|
private HighBrightnessModeController createHbmControllerLocked() {
|
||||||
final DisplayDevice device = mLogicalDisplay.getPrimaryDisplayDeviceLocked();
|
final DisplayDevice device = mLogicalDisplay.getPrimaryDisplayDeviceLocked();
|
||||||
final DisplayDeviceConfig ddConfig = device.getDisplayDeviceConfig();
|
final DisplayDeviceConfig ddConfig = device.getDisplayDeviceConfig();
|
||||||
@@ -1661,7 +1635,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
displayUniqueId, PowerManager.BRIGHTNESS_MIN, PowerManager.BRIGHTNESS_MAX, hbmData,
|
displayUniqueId, PowerManager.BRIGHTNESS_MIN, PowerManager.BRIGHTNESS_MAX, hbmData,
|
||||||
() -> {
|
() -> {
|
||||||
sendUpdatePowerStateLocked();
|
sendUpdatePowerStateLocked();
|
||||||
postBrightnessChangeRunnable();
|
mHandler.post(mOnBrightnessChangeRunnable);
|
||||||
// TODO(b/192258832): Switch the HBMChangeCallback to a listener pattern.
|
// TODO(b/192258832): Switch the HBMChangeCallback to a listener pattern.
|
||||||
if (mAutomaticBrightnessController != null) {
|
if (mAutomaticBrightnessController != null) {
|
||||||
mAutomaticBrightnessController.update();
|
mAutomaticBrightnessController.update();
|
||||||
@@ -2163,7 +2137,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
private void setCurrentScreenBrightness(float brightnessValue) {
|
private void setCurrentScreenBrightness(float brightnessValue) {
|
||||||
if (brightnessValue != mCurrentScreenBrightnessSetting) {
|
if (brightnessValue != mCurrentScreenBrightnessSetting) {
|
||||||
mCurrentScreenBrightnessSetting = brightnessValue;
|
mCurrentScreenBrightnessSetting = brightnessValue;
|
||||||
postBrightnessChangeRunnable();
|
mHandler.post(mOnBrightnessChangeRunnable);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2215,7 +2189,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void notifyBrightnessTrackerChanged(float brightness, boolean userInitiated,
|
private void notifyBrightnessChanged(float brightness, boolean userInitiated,
|
||||||
boolean hadUserDataPoint) {
|
boolean hadUserDataPoint) {
|
||||||
final float brightnessInNits = convertToNits(brightness);
|
final float brightnessInNits = convertToNits(brightness);
|
||||||
if (mPowerRequest.useAutoBrightness && brightnessInNits >= 0.0f
|
if (mPowerRequest.useAutoBrightness && brightnessInNits >= 0.0f
|
||||||
@@ -2325,17 +2299,16 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
pw.println(" mColorFadeFadesConfig=" + mColorFadeFadesConfig);
|
pw.println(" mColorFadeFadesConfig=" + mColorFadeFadesConfig);
|
||||||
pw.println(" mColorFadeEnabled=" + mColorFadeEnabled);
|
pw.println(" mColorFadeEnabled=" + mColorFadeEnabled);
|
||||||
synchronized (mCachedBrightnessInfo) {
|
synchronized (mCachedBrightnessInfo) {
|
||||||
pw.println(" mCachedBrightnessInfo.brightness=" +
|
pw.println(" mCachedBrightnessInfo.brightness=" + mCachedBrightnessInfo.brightness);
|
||||||
mCachedBrightnessInfo.brightness.value);
|
|
||||||
pw.println(" mCachedBrightnessInfo.adjustedBrightness=" +
|
pw.println(" mCachedBrightnessInfo.adjustedBrightness=" +
|
||||||
mCachedBrightnessInfo.adjustedBrightness.value);
|
mCachedBrightnessInfo.adjustedBrightness);
|
||||||
pw.println(" mCachedBrightnessInfo.brightnessMin=" +
|
pw.println(" mCachedBrightnessInfo.brightnessMin=" +
|
||||||
mCachedBrightnessInfo.brightnessMin.value);
|
mCachedBrightnessInfo.brightnessMin);
|
||||||
pw.println(" mCachedBrightnessInfo.brightnessMax=" +
|
pw.println(" mCachedBrightnessInfo.brightnessMax=" +
|
||||||
mCachedBrightnessInfo.brightnessMax.value);
|
mCachedBrightnessInfo.brightnessMax);
|
||||||
pw.println(" mCachedBrightnessInfo.hbmMode=" + mCachedBrightnessInfo.hbmMode.value);
|
pw.println(" mCachedBrightnessInfo.hbmMode=" + mCachedBrightnessInfo.hbmMode);
|
||||||
pw.println(" mCachedBrightnessInfo.hbmTransitionPoint=" +
|
pw.println(" mCachedBrightnessInfo.highBrightnessTransitionPoint=" +
|
||||||
mCachedBrightnessInfo.hbmTransitionPoint.value);
|
mCachedBrightnessInfo.highBrightnessTransitionPoint);
|
||||||
}
|
}
|
||||||
pw.println(" mDisplayBlanksAfterDozeConfig=" + mDisplayBlanksAfterDozeConfig);
|
pw.println(" mDisplayBlanksAfterDozeConfig=" + mDisplayBlanksAfterDozeConfig);
|
||||||
pw.println(" mBrightnessBucketsInDozeConfig=" + mBrightnessBucketsInDozeConfig);
|
pw.println(" mBrightnessBucketsInDozeConfig=" + mBrightnessBucketsInDozeConfig);
|
||||||
@@ -2493,10 +2466,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
private void reportStats(float brightness) {
|
private void reportStats(float brightness) {
|
||||||
float hbmTransitionPoint = PowerManager.BRIGHTNESS_MAX;
|
float hbmTransitionPoint = PowerManager.BRIGHTNESS_MAX;
|
||||||
synchronized(mCachedBrightnessInfo) {
|
synchronized(mCachedBrightnessInfo) {
|
||||||
if (mCachedBrightnessInfo.hbmTransitionPoint == null) {
|
hbmTransitionPoint = mCachedBrightnessInfo.highBrightnessTransitionPoint;
|
||||||
return;
|
|
||||||
}
|
|
||||||
hbmTransitionPoint = mCachedBrightnessInfo.hbmTransitionPoint.value;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final boolean aboveTransition = brightness > hbmTransitionPoint;
|
final boolean aboveTransition = brightness > hbmTransitionPoint;
|
||||||
@@ -2793,31 +2763,11 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
|||||||
}
|
}
|
||||||
|
|
||||||
static class CachedBrightnessInfo {
|
static class CachedBrightnessInfo {
|
||||||
public MutableFloat brightness = new MutableFloat(PowerManager.BRIGHTNESS_INVALID_FLOAT);
|
public float brightness;
|
||||||
public MutableFloat adjustedBrightness =
|
public float adjustedBrightness;
|
||||||
new MutableFloat(PowerManager.BRIGHTNESS_INVALID_FLOAT);
|
public float brightnessMin;
|
||||||
public MutableFloat brightnessMin =
|
public float brightnessMax;
|
||||||
new MutableFloat(PowerManager.BRIGHTNESS_INVALID_FLOAT);
|
public int hbmMode;
|
||||||
public MutableFloat brightnessMax =
|
public float highBrightnessTransitionPoint;
|
||||||
new MutableFloat(PowerManager.BRIGHTNESS_INVALID_FLOAT);
|
|
||||||
public MutableInt hbmMode = new MutableInt(BrightnessInfo.HIGH_BRIGHTNESS_MODE_OFF);
|
|
||||||
public MutableFloat hbmTransitionPoint =
|
|
||||||
new MutableFloat(HighBrightnessModeController.HBM_TRANSITION_POINT_INVALID);
|
|
||||||
|
|
||||||
public boolean checkAndSetFloat(MutableFloat mf, float f) {
|
|
||||||
if (mf.value != f) {
|
|
||||||
mf.value = f;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean checkAndSetInt(MutableInt mi, int i) {
|
|
||||||
if (mi.value != i) {
|
|
||||||
mi.value = i;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user