Merge "Remove VR features"
This commit is contained in:
committed by
Android (Google) Code Review
commit
5e6a03d337
@@ -423,8 +423,6 @@ public abstract class DisplayManagerInternal {
|
||||
public static final int POLICY_DIM = 2;
|
||||
// Policy: Make the screen bright as usual.
|
||||
public static final int POLICY_BRIGHT = 3;
|
||||
// Policy: Keep the screen and display optimized for VR mode.
|
||||
public static final int POLICY_VR = 4;
|
||||
|
||||
// The basic overall policy to apply: off, doze, dim or bright.
|
||||
public int policy;
|
||||
@@ -489,10 +487,6 @@ public abstract class DisplayManagerInternal {
|
||||
return policy == POLICY_BRIGHT || policy == POLICY_DIM;
|
||||
}
|
||||
|
||||
public boolean isVr() {
|
||||
return policy == POLICY_VR;
|
||||
}
|
||||
|
||||
public void copyFrom(DisplayPowerRequest other) {
|
||||
policy = other.policy;
|
||||
useProximitySensor = other.useProximitySensor;
|
||||
@@ -566,8 +560,6 @@ public abstract class DisplayManagerInternal {
|
||||
return "DIM";
|
||||
case POLICY_BRIGHT:
|
||||
return "BRIGHT";
|
||||
case POLICY_VR:
|
||||
return "VR";
|
||||
default:
|
||||
return Integer.toString(policy);
|
||||
}
|
||||
|
||||
@@ -483,8 +483,7 @@ class AutomaticBrightnessController {
|
||||
|
||||
private static boolean isInteractivePolicy(int policy) {
|
||||
return policy == DisplayPowerRequest.POLICY_BRIGHT
|
||||
|| policy == DisplayPowerRequest.POLICY_DIM
|
||||
|| policy == DisplayPowerRequest.POLICY_VR;
|
||||
|| policy == DisplayPowerRequest.POLICY_DIM;
|
||||
}
|
||||
|
||||
private boolean setScreenBrightnessByUser(float brightness) {
|
||||
|
||||
@@ -219,15 +219,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
|
||||
private final float mScreenBrightnessDefault;
|
||||
|
||||
// The minimum allowed brightness while in VR.
|
||||
private final float mScreenBrightnessForVrRangeMinimum;
|
||||
|
||||
// The maximum allowed brightness while in VR.
|
||||
private final float mScreenBrightnessForVrRangeMaximum;
|
||||
|
||||
// The default screen brightness for VR.
|
||||
private final float mScreenBrightnessForVrDefault;
|
||||
|
||||
// True if auto-brightness should be used.
|
||||
private boolean mUseSoftwareAutoBrightnessConfig;
|
||||
|
||||
@@ -450,9 +441,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
// PowerManager.BRIGHTNESS_INVALID_FLOAT when there's no temporary brightness set.
|
||||
private float mTemporaryScreenBrightness;
|
||||
|
||||
// The current screen brightness while in VR mode.
|
||||
private float mScreenBrightnessForVr;
|
||||
|
||||
// The last auto brightness adjustment that was set by the user and not temporary. Set to
|
||||
// Float.NaN when an auto-brightness adjustment hasn't been recorded yet.
|
||||
private float mAutoBrightnessAdjustment;
|
||||
@@ -563,14 +551,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
mScreenBrightnessDefault = clampAbsoluteBrightness(
|
||||
mLogicalDisplay.getDisplayInfoLocked().brightnessDefault);
|
||||
|
||||
// VR SETTINGS
|
||||
mScreenBrightnessForVrDefault = clampAbsoluteBrightness(
|
||||
pm.getBrightnessConstraint(PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_DEFAULT_VR));
|
||||
mScreenBrightnessForVrRangeMaximum = clampAbsoluteBrightness(
|
||||
pm.getBrightnessConstraint(PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_MAXIMUM_VR));
|
||||
mScreenBrightnessForVrRangeMinimum = clampAbsoluteBrightness(
|
||||
pm.getBrightnessConstraint(PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_MINIMUM_VR));
|
||||
|
||||
mAllowAutoBrightnessWhileDozingConfig = resources.getBoolean(
|
||||
com.android.internal.R.bool.config_allowAutoBrightnessWhileDozing);
|
||||
|
||||
@@ -643,7 +623,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
loadProximitySensor();
|
||||
|
||||
mCurrentScreenBrightnessSetting = getScreenBrightnessSetting();
|
||||
mScreenBrightnessForVr = getScreenBrightnessForVrSetting();
|
||||
mAutoBrightnessAdjustment = getAutoBrightnessAdjustmentSetting();
|
||||
mTemporaryScreenBrightness = PowerManager.BRIGHTNESS_INVALID_FLOAT;
|
||||
mPendingScreenBrightnessSetting = PowerManager.BRIGHTNESS_INVALID_FLOAT;
|
||||
@@ -948,9 +927,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
};
|
||||
|
||||
mBrightnessSetting.registerListener(mBrightnessSettingListener);
|
||||
mContext.getContentResolver().registerContentObserver(
|
||||
Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS_FOR_VR_FLOAT),
|
||||
false /*notifyForDescendants*/, mSettingsObserver, UserHandle.USER_ALL);
|
||||
mContext.getContentResolver().registerContentObserver(
|
||||
Settings.System.getUriFor(Settings.System.SCREEN_AUTO_BRIGHTNESS_ADJ),
|
||||
false /*notifyForDescendants*/, mSettingsObserver, UserHandle.USER_ALL);
|
||||
@@ -1271,9 +1247,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
mBrightnessReasonTemp.setReason(BrightnessReason.REASON_DOZE);
|
||||
}
|
||||
break;
|
||||
case DisplayPowerRequest.POLICY_VR:
|
||||
state = Display.STATE_VR;
|
||||
break;
|
||||
case DisplayPowerRequest.POLICY_DIM:
|
||||
case DisplayPowerRequest.POLICY_BRIGHT:
|
||||
default:
|
||||
@@ -1351,12 +1324,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
mBrightnessReasonTemp.setReason(BrightnessReason.REASON_SCREEN_OFF);
|
||||
}
|
||||
|
||||
// Always use the VR brightness when in the VR state.
|
||||
if (state == Display.STATE_VR) {
|
||||
brightnessState = mScreenBrightnessForVr;
|
||||
mBrightnessReasonTemp.setReason(BrightnessReason.REASON_VR);
|
||||
}
|
||||
|
||||
if ((Float.isNaN(brightnessState))
|
||||
&& isValidBrightnessValue(mPowerRequest.screenBrightnessOverride)) {
|
||||
brightnessState = mPowerRequest.screenBrightnessOverride;
|
||||
@@ -1575,7 +1542,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
mBrightnessThrottler.getBrightnessMaxReason());
|
||||
|
||||
// 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.
|
||||
boolean brightnessAdjusted = false;
|
||||
final boolean brightnessIsTemporary =
|
||||
mAppliedTemporaryBrightness || mAppliedTemporaryAutoBrightnessAdjustment;
|
||||
@@ -1598,8 +1565,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
}
|
||||
}
|
||||
|
||||
final boolean wasOrWillBeInVr =
|
||||
(state == Display.STATE_VR || oldState == Display.STATE_VR);
|
||||
final boolean initialRampSkip = (state == Display.STATE_ON && mSkipRampState
|
||||
!= RAMP_STATE_SKIP_NONE) || skipRampBecauseOfProximityChangeToNegative;
|
||||
// While dozing, sometimes the brightness is split into buckets. Rather than animating
|
||||
@@ -1641,7 +1606,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
&& (animateValue != currentBrightness
|
||||
|| sdrAnimateValue != currentSdrBrightness)) {
|
||||
if (initialRampSkip || hasBrightnessBuckets
|
||||
|| wasOrWillBeInVr || !isDisplayContentVisible || brightnessIsTemporary) {
|
||||
|| !isDisplayContentVisible || brightnessIsTemporary) {
|
||||
animateScreenBrightness(animateValue, sdrAnimateValue,
|
||||
SCREEN_ANIMATION_RATE_MINIMUM);
|
||||
} else {
|
||||
@@ -2078,12 +2043,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
}
|
||||
}
|
||||
|
||||
private float clampScreenBrightnessForVr(float value) {
|
||||
return MathUtils.constrain(
|
||||
value, mScreenBrightnessForVrRangeMinimum,
|
||||
mScreenBrightnessForVrRangeMaximum);
|
||||
}
|
||||
|
||||
private float clampScreenBrightness(float value) {
|
||||
if (Float.isNaN(value)) {
|
||||
value = PowerManager.BRIGHTNESS_MIN;
|
||||
@@ -2172,23 +2131,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
mPowerState.setColorFadeLevel(1.0f);
|
||||
mPowerState.dismissColorFade();
|
||||
}
|
||||
} else if (target == Display.STATE_VR) {
|
||||
// Wait for brightness animation to complete beforehand when entering VR
|
||||
// from screen on to prevent a perceptible jump because brightness may operate
|
||||
// differently when the display is configured for dozing.
|
||||
if (mScreenBrightnessRampAnimator.isAnimating()
|
||||
&& mPowerState.getScreenState() == Display.STATE_ON) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Set screen state.
|
||||
if (!setScreenState(Display.STATE_VR)) {
|
||||
return; // screen on blocked
|
||||
}
|
||||
|
||||
// Dismiss the black surface without fanfare.
|
||||
mPowerState.setColorFadeLevel(1.0f);
|
||||
mPowerState.dismissColorFade();
|
||||
} else if (target == Display.STATE_DOZE) {
|
||||
// Want screen dozing.
|
||||
// Wait for brightness animation to complete beforehand when entering doze
|
||||
@@ -2396,9 +2338,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
mAutomaticBrightnessController.resetShortTermModel();
|
||||
}
|
||||
}
|
||||
// We don't bother with a pending variable for VR screen brightness since we just
|
||||
// immediately adapt to it.
|
||||
mScreenBrightnessForVr = getScreenBrightnessForVrSetting();
|
||||
sendUpdatePowerState();
|
||||
}
|
||||
|
||||
@@ -2417,13 +2356,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
return clampAbsoluteBrightness(brightness);
|
||||
}
|
||||
|
||||
private float getScreenBrightnessForVrSetting() {
|
||||
final float brightnessFloat = Settings.System.getFloatForUser(mContext.getContentResolver(),
|
||||
Settings.System.SCREEN_BRIGHTNESS_FOR_VR_FLOAT, mScreenBrightnessForVrDefault,
|
||||
UserHandle.USER_CURRENT);
|
||||
return clampScreenBrightnessForVr(brightnessFloat);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBrightness(float brightnessValue) {
|
||||
// Update the setting, which will eventually call back into DPC to have us actually update
|
||||
@@ -2597,9 +2529,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
pw.println(" mScreenBrightnessRangeDefault=" + mScreenBrightnessDefault);
|
||||
pw.println(" mScreenBrightnessDozeConfig=" + mScreenBrightnessDozeConfig);
|
||||
pw.println(" mScreenBrightnessDimConfig=" + mScreenBrightnessDimConfig);
|
||||
pw.println(" mScreenBrightnessForVrRangeMinimum=" + mScreenBrightnessForVrRangeMinimum);
|
||||
pw.println(" mScreenBrightnessForVrRangeMaximum=" + mScreenBrightnessForVrRangeMaximum);
|
||||
pw.println(" mScreenBrightnessForVrDefault=" + mScreenBrightnessForVrDefault);
|
||||
pw.println(" mUseSoftwareAutoBrightnessConfig=" + mUseSoftwareAutoBrightnessConfig);
|
||||
pw.println(" mAllowAutoBrightnessWhileDozingConfig="
|
||||
+ mAllowAutoBrightnessWhileDozingConfig);
|
||||
@@ -2649,7 +2578,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
|
||||
pw.println(" mBrightnessReason=" + mBrightnessReason);
|
||||
pw.println(" mTemporaryAutoBrightnessAdjustment=" + mTemporaryAutoBrightnessAdjustment);
|
||||
pw.println(" mPendingAutoBrightnessAdjustment=" + mPendingAutoBrightnessAdjustment);
|
||||
pw.println(" mScreenBrightnessForVrFloat=" + mScreenBrightnessForVr);
|
||||
pw.println(" mAppliedAutoBrightness=" + mAppliedAutoBrightness);
|
||||
pw.println(" mAppliedDimming=" + mAppliedDimming);
|
||||
pw.println(" mAppliedLowPower=" + mAppliedLowPower);
|
||||
|
||||
@@ -198,15 +198,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
|
||||
private final float mScreenBrightnessDefault;
|
||||
|
||||
// The minimum allowed brightness while in VR.
|
||||
private final float mScreenBrightnessForVrRangeMinimum;
|
||||
|
||||
// The maximum allowed brightness while in VR.
|
||||
private final float mScreenBrightnessForVrRangeMaximum;
|
||||
|
||||
// The default screen brightness for VR.
|
||||
private final float mScreenBrightnessForVrDefault;
|
||||
|
||||
// True if auto-brightness should be used.
|
||||
private boolean mUseSoftwareAutoBrightnessConfig;
|
||||
|
||||
@@ -394,9 +385,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
// behalf of the user.
|
||||
private float mCurrentScreenBrightnessSetting;
|
||||
|
||||
// The current screen brightness while in VR mode.
|
||||
private float mScreenBrightnessForVr;
|
||||
|
||||
// The last auto brightness adjustment that was set by the user and not temporary. Set to
|
||||
// Float.NaN when an auto-brightness adjustment hasn't been recorded yet.
|
||||
private float mAutoBrightnessAdjustment;
|
||||
@@ -488,14 +476,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
mScreenBrightnessDefault = clampAbsoluteBrightness(
|
||||
mLogicalDisplay.getDisplayInfoLocked().brightnessDefault);
|
||||
|
||||
// VR SETTINGS
|
||||
mScreenBrightnessForVrDefault = clampAbsoluteBrightness(
|
||||
pm.getBrightnessConstraint(PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_DEFAULT_VR));
|
||||
mScreenBrightnessForVrRangeMaximum = clampAbsoluteBrightness(
|
||||
pm.getBrightnessConstraint(PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_MAXIMUM_VR));
|
||||
mScreenBrightnessForVrRangeMinimum = clampAbsoluteBrightness(
|
||||
pm.getBrightnessConstraint(PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_MINIMUM_VR));
|
||||
|
||||
loadBrightnessRampRates();
|
||||
mSkipScreenOnBrightnessRamp = resources.getBoolean(
|
||||
R.bool.config_skipScreenOnBrightnessRamp);
|
||||
@@ -562,7 +542,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
mDisplayBrightnessController =
|
||||
new DisplayBrightnessController(context, null, mDisplayId);
|
||||
mCurrentScreenBrightnessSetting = getScreenBrightnessSetting();
|
||||
mScreenBrightnessForVr = getScreenBrightnessForVrSetting();
|
||||
mAutoBrightnessAdjustment = getAutoBrightnessAdjustmentSetting();
|
||||
mPendingScreenBrightnessSetting = PowerManager.BRIGHTNESS_INVALID_FLOAT;
|
||||
mTemporaryAutoBrightnessAdjustment = PowerManager.BRIGHTNESS_INVALID_FLOAT;
|
||||
@@ -861,9 +840,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
};
|
||||
|
||||
mBrightnessSetting.registerListener(mBrightnessSettingListener);
|
||||
mContext.getContentResolver().registerContentObserver(
|
||||
Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS_FOR_VR_FLOAT),
|
||||
false /*notifyForDescendants*/, mSettingsObserver, UserHandle.USER_ALL);
|
||||
mContext.getContentResolver().registerContentObserver(
|
||||
Settings.System.getUriFor(Settings.System.SCREEN_AUTO_BRIGHTNESS_ADJ),
|
||||
false /*notifyForDescendants*/, mSettingsObserver, UserHandle.USER_ALL);
|
||||
@@ -1163,9 +1139,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
state = Display.STATE_DOZE;
|
||||
}
|
||||
break;
|
||||
case DisplayPowerRequest.POLICY_VR:
|
||||
state = Display.STATE_VR;
|
||||
break;
|
||||
case DisplayPowerRequest.POLICY_DIM:
|
||||
case DisplayPowerRequest.POLICY_BRIGHT:
|
||||
default:
|
||||
@@ -1199,12 +1172,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
float brightnessState = displayBrightnessState.getBrightness();
|
||||
mBrightnessReasonTemp.set(displayBrightnessState.getBrightnessReason());
|
||||
|
||||
// Always use the VR brightness when in the VR state.
|
||||
if (state == Display.STATE_VR) {
|
||||
brightnessState = mScreenBrightnessForVr;
|
||||
mBrightnessReasonTemp.setReason(BrightnessReason.REASON_VR);
|
||||
}
|
||||
|
||||
final boolean autoBrightnessEnabledInDoze =
|
||||
mDisplayBrightnessController.isAllowAutoBrightnessWhileDozingConfig()
|
||||
&& Display.isDozeState(state);
|
||||
@@ -1405,7 +1372,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
mBrightnessThrottler.getBrightnessMaxReason());
|
||||
|
||||
// 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.
|
||||
boolean brightnessAdjusted = false;
|
||||
final boolean brightnessIsTemporary =
|
||||
(mBrightnessReason.getReason() == BrightnessReason.REASON_TEMPORARY)
|
||||
@@ -1429,8 +1396,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
}
|
||||
}
|
||||
|
||||
final boolean wasOrWillBeInVr =
|
||||
(state == Display.STATE_VR || oldState == Display.STATE_VR);
|
||||
final boolean initialRampSkip = (state == Display.STATE_ON && mSkipRampState
|
||||
!= RAMP_STATE_SKIP_NONE) || mDisplayPowerProximityStateController
|
||||
.shouldSkipRampBecauseOfProximityChangeToNegative();
|
||||
@@ -1473,7 +1438,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
&& (animateValue != currentBrightness
|
||||
|| sdrAnimateValue != currentSdrBrightness)) {
|
||||
if (initialRampSkip || hasBrightnessBuckets
|
||||
|| wasOrWillBeInVr || !isDisplayContentVisible || brightnessIsTemporary) {
|
||||
|| !isDisplayContentVisible || brightnessIsTemporary) {
|
||||
animateScreenBrightness(animateValue, sdrAnimateValue,
|
||||
SCREEN_ANIMATION_RATE_MINIMUM);
|
||||
} else {
|
||||
@@ -1886,12 +1851,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
fallbackType);
|
||||
}
|
||||
|
||||
private float clampScreenBrightnessForVr(float value) {
|
||||
return MathUtils.constrain(
|
||||
value, mScreenBrightnessForVrRangeMinimum,
|
||||
mScreenBrightnessForVrRangeMaximum);
|
||||
}
|
||||
|
||||
private float clampScreenBrightness(float value) {
|
||||
if (Float.isNaN(value)) {
|
||||
value = PowerManager.BRIGHTNESS_MIN;
|
||||
@@ -1980,23 +1939,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
mPowerState.setColorFadeLevel(1.0f);
|
||||
mPowerState.dismissColorFade();
|
||||
}
|
||||
} else if (target == Display.STATE_VR) {
|
||||
// Wait for brightness animation to complete beforehand when entering VR
|
||||
// from screen on to prevent a perceptible jump because brightness may operate
|
||||
// differently when the display is configured for dozing.
|
||||
if (mScreenBrightnessRampAnimator.isAnimating()
|
||||
&& mPowerState.getScreenState() == Display.STATE_ON) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Set screen state.
|
||||
if (!setScreenState(Display.STATE_VR)) {
|
||||
return; // screen on blocked
|
||||
}
|
||||
|
||||
// Dismiss the black surface without fanfare.
|
||||
mPowerState.setColorFadeLevel(1.0f);
|
||||
mPowerState.dismissColorFade();
|
||||
} else if (target == Display.STATE_DOZE) {
|
||||
// Want screen dozing.
|
||||
// Wait for brightness animation to complete beforehand when entering doze
|
||||
@@ -2113,9 +2055,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
mAutomaticBrightnessController.resetShortTermModel();
|
||||
}
|
||||
}
|
||||
// We don't bother with a pending variable for VR screen brightness since we just
|
||||
// immediately adapt to it.
|
||||
mScreenBrightnessForVr = getScreenBrightnessForVrSetting();
|
||||
sendUpdatePowerState();
|
||||
}
|
||||
|
||||
@@ -2134,13 +2073,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
return clampAbsoluteBrightness(brightness);
|
||||
}
|
||||
|
||||
private float getScreenBrightnessForVrSetting() {
|
||||
final float brightnessFloat = Settings.System.getFloatForUser(mContext.getContentResolver(),
|
||||
Settings.System.SCREEN_BRIGHTNESS_FOR_VR_FLOAT, mScreenBrightnessForVrDefault,
|
||||
UserHandle.USER_CURRENT);
|
||||
return clampScreenBrightnessForVr(brightnessFloat);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBrightness(float brightnessValue) {
|
||||
// Update the setting, which will eventually call back into DPC to have us actually update
|
||||
@@ -2254,9 +2186,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
pw.println(" mScreenBrightnessRangeDefault=" + mScreenBrightnessDefault);
|
||||
pw.println(" mScreenBrightnessDozeConfig=" + mScreenBrightnessDozeConfig);
|
||||
pw.println(" mScreenBrightnessDimConfig=" + mScreenBrightnessDimConfig);
|
||||
pw.println(" mScreenBrightnessForVrRangeMinimum=" + mScreenBrightnessForVrRangeMinimum);
|
||||
pw.println(" mScreenBrightnessForVrRangeMaximum=" + mScreenBrightnessForVrRangeMaximum);
|
||||
pw.println(" mScreenBrightnessForVrDefault=" + mScreenBrightnessForVrDefault);
|
||||
pw.println(" mUseSoftwareAutoBrightnessConfig=" + mUseSoftwareAutoBrightnessConfig);
|
||||
pw.println(" mSkipScreenOnBrightnessRamp=" + mSkipScreenOnBrightnessRamp);
|
||||
pw.println(" mColorFadeFadesConfig=" + mColorFadeFadesConfig);
|
||||
@@ -2292,7 +2221,6 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
|
||||
pw.println(" mBrightnessReason=" + mBrightnessReason);
|
||||
pw.println(" mTemporaryAutoBrightnessAdjustment=" + mTemporaryAutoBrightnessAdjustment);
|
||||
pw.println(" mPendingAutoBrightnessAdjustment=" + mPendingAutoBrightnessAdjustment);
|
||||
pw.println(" mScreenBrightnessForVrFloat=" + mScreenBrightnessForVr);
|
||||
pw.println(" mAppliedAutoBrightness=" + mAppliedAutoBrightness);
|
||||
pw.println(" mAppliedDimming=" + mAppliedDimming);
|
||||
pw.println(" mAppliedLowPower=" + mAppliedLowPower);
|
||||
|
||||
@@ -762,18 +762,8 @@ final class LocalDisplayAdapter extends DisplayAdapter {
|
||||
}
|
||||
}
|
||||
|
||||
// If the state change was from or to VR, then we need to tell the light
|
||||
// so that it can apply appropriate VR brightness settings. Also, update the
|
||||
// brightness so the state is propogated to light.
|
||||
boolean vrModeChange = false;
|
||||
if ((state == Display.STATE_VR || currentState == Display.STATE_VR) &&
|
||||
currentState != state) {
|
||||
setVrMode(state == Display.STATE_VR);
|
||||
vrModeChange = true;
|
||||
}
|
||||
|
||||
// Apply brightness changes given that we are in a non-suspended state.
|
||||
if (brightnessChanged || vrModeChange) {
|
||||
if (brightnessChanged) {
|
||||
setDisplayBrightness(brightnessState, sdrBrightnessState);
|
||||
mBrightnessState = brightnessState;
|
||||
mSdrBrightnessState = sdrBrightnessState;
|
||||
@@ -785,15 +775,6 @@ final class LocalDisplayAdapter extends DisplayAdapter {
|
||||
}
|
||||
}
|
||||
|
||||
private void setVrMode(boolean isVrEnabled) {
|
||||
if (DEBUG) {
|
||||
Slog.d(TAG, "setVrMode("
|
||||
+ "id=" + physicalDisplayId
|
||||
+ ", state=" + Display.stateToString(state) + ")");
|
||||
}
|
||||
mBacklightAdapter.setVrMode(isVrEnabled);
|
||||
}
|
||||
|
||||
private void setDisplayState(int state) {
|
||||
if (DEBUG) {
|
||||
Slog.d(TAG, "setDisplayState("
|
||||
@@ -1505,12 +1486,6 @@ final class LocalDisplayAdapter extends DisplayAdapter {
|
||||
}
|
||||
}
|
||||
|
||||
void setVrMode(boolean isVrModeEnabled) {
|
||||
if (mBacklight != null) {
|
||||
mBacklight.setVrMode(isVrModeEnabled);
|
||||
}
|
||||
}
|
||||
|
||||
void setForceSurfaceControl(boolean forceSurfaceControl) {
|
||||
mForceSurfaceControl = forceSurfaceControl;
|
||||
}
|
||||
|
||||
@@ -34,10 +34,9 @@ public final class BrightnessReason {
|
||||
public static final int REASON_DOZE_DEFAULT = 3;
|
||||
public static final int REASON_AUTOMATIC = 4;
|
||||
public static final int REASON_SCREEN_OFF = 5;
|
||||
public static final int REASON_VR = 6;
|
||||
public static final int REASON_OVERRIDE = 7;
|
||||
public static final int REASON_TEMPORARY = 8;
|
||||
public static final int REASON_BOOST = 9;
|
||||
public static final int REASON_OVERRIDE = 6;
|
||||
public static final int REASON_TEMPORARY = 7;
|
||||
public static final int REASON_BOOST = 8;
|
||||
public static final int REASON_MAX = REASON_BOOST;
|
||||
|
||||
public static final int MODIFIER_DIMMED = 0x1;
|
||||
@@ -185,8 +184,6 @@ public final class BrightnessReason {
|
||||
return "automatic";
|
||||
case REASON_SCREEN_OFF:
|
||||
return "screen_off";
|
||||
case REASON_VR:
|
||||
return "vr";
|
||||
case REASON_OVERRIDE:
|
||||
return "override";
|
||||
case REASON_TEMPORARY:
|
||||
|
||||
@@ -324,11 +324,6 @@ public class PowerGroup {
|
||||
return mDisplayPowerRequest.policy == DisplayPowerRequest.POLICY_DIM;
|
||||
}
|
||||
|
||||
public boolean isPolicyVrLocked() {
|
||||
return mDisplayPowerRequest.isVr();
|
||||
|
||||
}
|
||||
|
||||
public boolean isBrightOrDimLocked() {
|
||||
return mDisplayPowerRequest.isBrightOrDim();
|
||||
}
|
||||
@@ -382,7 +377,7 @@ public class PowerGroup {
|
||||
|
||||
@VisibleForTesting
|
||||
int getDesiredScreenPolicyLocked(boolean quiescent, boolean dozeAfterScreenOff,
|
||||
boolean vrModeEnabled, boolean bootCompleted, boolean screenBrightnessBoostInProgress) {
|
||||
boolean bootCompleted, boolean screenBrightnessBoostInProgress) {
|
||||
final int wakefulness = getWakefulnessLocked();
|
||||
final int wakeLockSummary = getWakeLockSummaryLocked();
|
||||
if (wakefulness == WAKEFULNESS_ASLEEP || quiescent) {
|
||||
@@ -398,13 +393,6 @@ public class PowerGroup {
|
||||
// doze after screen off. This causes the screen off transition to be skipped.
|
||||
}
|
||||
|
||||
// It is important that POLICY_VR check happens after the wakefulness checks above so
|
||||
// that VR-mode does not prevent displays from transitioning to the correct state when
|
||||
// dozing or sleeping.
|
||||
if (vrModeEnabled) {
|
||||
return DisplayPowerRequest.POLICY_VR;
|
||||
}
|
||||
|
||||
if ((wakeLockSummary & WAKE_LOCK_SCREEN_BRIGHT) != 0
|
||||
|| !bootCompleted
|
||||
|| (getUserActivitySummaryLocked() & USER_ACTIVITY_SCREEN_BRIGHT) != 0
|
||||
@@ -423,10 +411,10 @@ public class PowerGroup {
|
||||
boolean useProximitySensor, boolean boostScreenBrightness, int dozeScreenState,
|
||||
float dozeScreenBrightness, boolean overrideDrawWakeLock,
|
||||
PowerSaveState powerSaverState, boolean quiescent, boolean dozeAfterScreenOff,
|
||||
boolean vrModeEnabled, boolean bootCompleted, boolean screenBrightnessBoostInProgress,
|
||||
boolean bootCompleted, boolean screenBrightnessBoostInProgress,
|
||||
boolean waitForNegativeProximity) {
|
||||
mDisplayPowerRequest.policy = getDesiredScreenPolicyLocked(quiescent, dozeAfterScreenOff,
|
||||
vrModeEnabled, bootCompleted, screenBrightnessBoostInProgress);
|
||||
bootCompleted, screenBrightnessBoostInProgress);
|
||||
mDisplayPowerRequest.screenBrightnessOverride = screenBrightnessOverride;
|
||||
mDisplayPowerRequest.useAutoBrightness = autoBrightness;
|
||||
mDisplayPowerRequest.useProximitySensor = useProximitySensor;
|
||||
|
||||
@@ -90,8 +90,6 @@ import android.os.WorkSource.WorkChain;
|
||||
import android.provider.Settings;
|
||||
import android.provider.Settings.SettingNotFoundException;
|
||||
import android.service.dreams.DreamManagerInternal;
|
||||
import android.service.vr.IVrManager;
|
||||
import android.service.vr.IVrStateCallbacks;
|
||||
import android.sysprop.InitProperties;
|
||||
import android.sysprop.PowerProperties;
|
||||
import android.util.ArrayMap;
|
||||
@@ -196,8 +194,6 @@ public final class PowerManagerService extends SystemService
|
||||
private static final int DIRTY_SCREEN_BRIGHTNESS_BOOST = 1 << 11;
|
||||
// Dirty bit: sQuiescent changed
|
||||
private static final int DIRTY_QUIESCENT = 1 << 12;
|
||||
// Dirty bit: VR Mode enabled changed
|
||||
private static final int DIRTY_VR_MODE_CHANGED = 1 << 13;
|
||||
// Dirty bit: attentive timer may have timed out
|
||||
private static final int DIRTY_ATTENTIVE = 1 << 14;
|
||||
// Dirty bit: display group wakefulness has changed
|
||||
@@ -580,9 +576,6 @@ public final class PowerManagerService extends SystemService
|
||||
public final float mScreenBrightnessDefault;
|
||||
public final float mScreenBrightnessDoze;
|
||||
public final float mScreenBrightnessDim;
|
||||
public final float mScreenBrightnessMinimumVr;
|
||||
public final float mScreenBrightnessMaximumVr;
|
||||
public final float mScreenBrightnessDefaultVr;
|
||||
|
||||
// Value we store for tracking face down behavior.
|
||||
private boolean mIsFaceDown = false;
|
||||
@@ -666,9 +659,6 @@ public final class PowerManagerService extends SystemService
|
||||
// True if double tap to wake is enabled
|
||||
private boolean mDoubleTapWakeEnabled;
|
||||
|
||||
// True if we are currently in VR Mode.
|
||||
private boolean mIsVrModeEnabled;
|
||||
|
||||
// True if we in the process of performing a forceSuspend
|
||||
private boolean mForceSuspendActive;
|
||||
|
||||
@@ -1145,29 +1135,6 @@ public final class PowerManagerService extends SystemService
|
||||
mScreenBrightnessDim = dim;
|
||||
}
|
||||
|
||||
final float vrMin = mContext.getResources().getFloat(com.android.internal.R.dimen
|
||||
.config_screenBrightnessSettingForVrMinimumFloat);
|
||||
final float vrMax = mContext.getResources().getFloat(com.android.internal.R.dimen
|
||||
.config_screenBrightnessSettingForVrMaximumFloat);
|
||||
final float vrDef = mContext.getResources().getFloat(com.android.internal.R.dimen
|
||||
.config_screenBrightnessSettingForVrDefaultFloat);
|
||||
if (vrMin == INVALID_BRIGHTNESS_IN_CONFIG || vrMax == INVALID_BRIGHTNESS_IN_CONFIG
|
||||
|| vrDef == INVALID_BRIGHTNESS_IN_CONFIG) {
|
||||
mScreenBrightnessMinimumVr = BrightnessSynchronizer.brightnessIntToFloat(
|
||||
mContext.getResources().getInteger(com.android.internal.R.integer
|
||||
.config_screenBrightnessForVrSettingMinimum));
|
||||
mScreenBrightnessMaximumVr = BrightnessSynchronizer.brightnessIntToFloat(
|
||||
mContext.getResources().getInteger(com.android.internal.R.integer
|
||||
.config_screenBrightnessForVrSettingMaximum));
|
||||
mScreenBrightnessDefaultVr = BrightnessSynchronizer.brightnessIntToFloat(
|
||||
mContext.getResources().getInteger(com.android.internal.R.integer
|
||||
.config_screenBrightnessForVrSettingDefault));
|
||||
} else {
|
||||
mScreenBrightnessMinimumVr = vrMin;
|
||||
mScreenBrightnessMaximumVr = vrMax;
|
||||
mScreenBrightnessDefaultVr = vrDef;
|
||||
}
|
||||
|
||||
synchronized (mLock) {
|
||||
mBootingSuspendBlocker =
|
||||
mInjector.createSuspendBlocker(this, "PowerManagerService.Booting");
|
||||
@@ -1373,14 +1340,6 @@ public final class PowerManagerService extends SystemService
|
||||
resolver.registerContentObserver(Settings.Global.getUriFor(
|
||||
Settings.Global.DEVICE_DEMO_MODE),
|
||||
false, mSettingsObserver, UserHandle.USER_SYSTEM);
|
||||
IVrManager vrManager = IVrManager.Stub.asInterface(getBinderService(Context.VR_SERVICE));
|
||||
if (vrManager != null) {
|
||||
try {
|
||||
vrManager.registerListener(mVrStateCallbacks);
|
||||
} catch (RemoteException e) {
|
||||
Slog.e(TAG, "Failed to register VR mode state listener: " + e);
|
||||
}
|
||||
}
|
||||
|
||||
// Register for broadcasts from other components of the system.
|
||||
IntentFilter filter = new IntentFilter();
|
||||
@@ -2848,7 +2807,7 @@ public final class PowerManagerService extends SystemService
|
||||
>= powerGroup.getLastWakeTimeLocked()) {
|
||||
groupNextTimeout = lastUserActivityTimeNoChangeLights + screenOffTimeout;
|
||||
if (now < groupNextTimeout) {
|
||||
if (powerGroup.isPolicyBrightLocked() || powerGroup.isPolicyVrLocked()) {
|
||||
if (powerGroup.isPolicyBrightLocked()) {
|
||||
groupUserActivitySummary = USER_ACTIVITY_SCREEN_BRIGHT;
|
||||
} else if (powerGroup.isPolicyDimLocked()) {
|
||||
groupUserActivitySummary = USER_ACTIVITY_SCREEN_DIM;
|
||||
@@ -3415,7 +3374,6 @@ public final class PowerManagerService extends SystemService
|
||||
|| !mDreamsSupportedConfig
|
||||
|| !mDreamsEnabledSetting
|
||||
|| !(powerGroup.isBrightOrDimLocked())
|
||||
|| powerGroup.isPolicyVrLocked()
|
||||
|| (powerGroup.getUserActivitySummaryLocked() & (USER_ACTIVITY_SCREEN_BRIGHT
|
||||
| USER_ACTIVITY_SCREEN_DIM | USER_ACTIVITY_SCREEN_DREAM)) == 0) {
|
||||
return false;
|
||||
@@ -3460,8 +3418,8 @@ public final class PowerManagerService extends SystemService
|
||||
final boolean oldPowerGroupsReady = areAllPowerGroupsReadyLocked();
|
||||
if ((dirty & (DIRTY_WAKE_LOCKS | DIRTY_USER_ACTIVITY | DIRTY_WAKEFULNESS
|
||||
| DIRTY_ACTUAL_DISPLAY_POWER_STATE_UPDATED | DIRTY_BOOT_COMPLETED
|
||||
| DIRTY_SETTINGS | DIRTY_SCREEN_BRIGHTNESS_BOOST | DIRTY_VR_MODE_CHANGED |
|
||||
DIRTY_QUIESCENT | DIRTY_DISPLAY_GROUP_WAKEFULNESS)) != 0) {
|
||||
| DIRTY_SETTINGS | DIRTY_SCREEN_BRIGHTNESS_BOOST
|
||||
| DIRTY_QUIESCENT | DIRTY_DISPLAY_GROUP_WAKEFULNESS)) != 0) {
|
||||
if ((dirty & DIRTY_QUIESCENT) != 0) {
|
||||
if (areAllPowerGroupsReadyLocked()) {
|
||||
sQuiescent = false;
|
||||
@@ -3496,7 +3454,7 @@ public final class PowerManagerService extends SystemService
|
||||
mDozeScreenBrightnessOverrideFromDreamManagerFloat,
|
||||
mDrawWakeLockOverrideFromSidekick,
|
||||
mBatterySaverPolicy.getBatterySaverPolicy(ServiceType.SCREEN_BRIGHTNESS),
|
||||
sQuiescent, mDozeAfterScreenOff, mIsVrModeEnabled, mBootCompleted,
|
||||
sQuiescent, mDozeAfterScreenOff, mBootCompleted,
|
||||
mScreenBrightnessBoostInProgress, mRequestWaitForNegativeProximity);
|
||||
int wakefulness = powerGroup.getWakefulnessLocked();
|
||||
if (DEBUG_SPEW) {
|
||||
@@ -3514,7 +3472,6 @@ public final class PowerManagerService extends SystemService
|
||||
+ ", useAutoBrightness=" + autoBrightness
|
||||
+ ", mScreenBrightnessBoostInProgress="
|
||||
+ mScreenBrightnessBoostInProgress
|
||||
+ ", mIsVrModeEnabled= " + mIsVrModeEnabled
|
||||
+ ", sQuiescent=" + sQuiescent);
|
||||
}
|
||||
|
||||
@@ -3562,7 +3519,7 @@ public final class PowerManagerService extends SystemService
|
||||
}
|
||||
|
||||
private boolean shouldBoostScreenBrightness() {
|
||||
return !mIsVrModeEnabled && mScreenBrightnessBoostInProgress;
|
||||
return mScreenBrightnessBoostInProgress;
|
||||
}
|
||||
|
||||
private static boolean isValidBrightness(float value) {
|
||||
@@ -3573,7 +3530,7 @@ public final class PowerManagerService extends SystemService
|
||||
@GuardedBy("mLock")
|
||||
int getDesiredScreenPolicyLocked(int groupId) {
|
||||
return mPowerGroups.get(groupId).getDesiredScreenPolicyLocked(sQuiescent,
|
||||
mDozeAfterScreenOff, mIsVrModeEnabled, mBootCompleted,
|
||||
mDozeAfterScreenOff, mBootCompleted,
|
||||
mScreenBrightnessBoostInProgress);
|
||||
}
|
||||
|
||||
@@ -3654,8 +3611,7 @@ public final class PowerManagerService extends SystemService
|
||||
@GuardedBy("mLock")
|
||||
private boolean shouldUseProximitySensorLocked() {
|
||||
// Use default display group for proximity sensor.
|
||||
return !mIsVrModeEnabled
|
||||
&& (mPowerGroups.get(Display.DEFAULT_DISPLAY_GROUP).getWakeLockSummaryLocked()
|
||||
return (mPowerGroups.get(Display.DEFAULT_DISPLAY_GROUP).getWakeLockSummaryLocked()
|
||||
& WAKE_LOCK_PROXIMITY_SCREEN_OFF) != 0;
|
||||
}
|
||||
|
||||
@@ -4279,11 +4235,6 @@ public final class PowerManagerService extends SystemService
|
||||
}
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
void setVrModeEnabled(boolean enabled) {
|
||||
mIsVrModeEnabled = enabled;
|
||||
}
|
||||
|
||||
private void setPowerBoostInternal(int boost, int durationMs) {
|
||||
// Maybe filter the event.
|
||||
mNativeWrapper.nativeSetPowerBoost(boost, durationMs);
|
||||
@@ -4553,7 +4504,6 @@ public final class PowerManagerService extends SystemService
|
||||
pw.println(" mScreenBrightnessMaximum=" + mScreenBrightnessMaximum);
|
||||
pw.println(" mScreenBrightnessDefault=" + mScreenBrightnessDefault);
|
||||
pw.println(" mDoubleTapWakeEnabled=" + mDoubleTapWakeEnabled);
|
||||
pw.println(" mIsVrModeEnabled=" + mIsVrModeEnabled);
|
||||
pw.println(" mForegroundProfile=" + mForegroundProfile);
|
||||
pw.println(" mUserId=" + mUserId);
|
||||
|
||||
@@ -4964,9 +4914,6 @@ public final class PowerManagerService extends SystemService
|
||||
proto.write(
|
||||
PowerServiceSettingsAndConfigurationDumpProto.IS_DOUBLE_TAP_WAKE_ENABLED,
|
||||
mDoubleTapWakeEnabled);
|
||||
proto.write(
|
||||
PowerServiceSettingsAndConfigurationDumpProto.IS_VR_MODE_ENABLED,
|
||||
mIsVrModeEnabled);
|
||||
proto.end(settingsAndConfigurationToken);
|
||||
|
||||
final long attentiveTimeout = getAttentiveTimeoutLocked();
|
||||
@@ -5095,21 +5042,6 @@ public final class PowerManagerService extends SystemService
|
||||
}
|
||||
}
|
||||
|
||||
private final IVrStateCallbacks mVrStateCallbacks = new IVrStateCallbacks.Stub() {
|
||||
@Override
|
||||
public void onVrStateChanged(boolean enabled) {
|
||||
setPowerModeInternal(Mode.VR, enabled);
|
||||
|
||||
synchronized (mLock) {
|
||||
if (mIsVrModeEnabled != enabled) {
|
||||
setVrModeEnabled(enabled);
|
||||
mDirty |= DIRTY_VR_MODE_CHANGED;
|
||||
updatePowerStateLocked();
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
private final AmbientDisplaySuppressionChangedCallback mAmbientSuppressionChangedCallback =
|
||||
new AmbientDisplaySuppressionChangedCallback() {
|
||||
@Override
|
||||
@@ -5837,12 +5769,6 @@ public final class PowerManagerService extends SystemService
|
||||
return mScreenBrightnessDim;
|
||||
case PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_DOZE:
|
||||
return mScreenBrightnessDoze;
|
||||
case PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_MINIMUM_VR:
|
||||
return mScreenBrightnessMinimumVr;
|
||||
case PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_MAXIMUM_VR:
|
||||
return mScreenBrightnessMaximumVr;
|
||||
case PowerManager.BRIGHTNESS_CONSTRAINT_TYPE_DEFAULT_VR:
|
||||
return mScreenBrightnessDefaultVr;
|
||||
default:
|
||||
return PowerManager.BRIGHTNESS_INVALID_FLOAT;
|
||||
}
|
||||
@@ -6626,7 +6552,6 @@ public final class PowerManagerService extends SystemService
|
||||
case Display.STATE_DOZE_SUSPEND:
|
||||
case Display.STATE_ON_SUSPEND:
|
||||
case Display.STATE_ON:
|
||||
case Display.STATE_VR:
|
||||
break;
|
||||
default:
|
||||
screenState = Display.STATE_UNKNOWN;
|
||||
|
||||
@@ -20,7 +20,6 @@ import static android.hardware.display.DisplayManagerInternal.DisplayPowerReques
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_DIM;
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_DOZE;
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_OFF;
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_VR;
|
||||
import static android.provider.DeviceConfig.NAMESPACE_ATTENTION_MANAGER_SERVICE;
|
||||
import static android.view.Display.DEFAULT_DISPLAY_GROUP;
|
||||
|
||||
@@ -59,8 +58,7 @@ public class ScreenUndimDetectorTest {
|
||||
Arrays.asList(POLICY_OFF,
|
||||
POLICY_DOZE,
|
||||
POLICY_DIM,
|
||||
POLICY_BRIGHT,
|
||||
POLICY_VR);
|
||||
POLICY_BRIGHT);
|
||||
private static final int OTHER_DISPLAY_GROUP = DEFAULT_DISPLAY_GROUP + 1;
|
||||
|
||||
@ClassRule
|
||||
@@ -291,7 +289,7 @@ public class ScreenUndimDetectorTest {
|
||||
|
||||
@Test
|
||||
public void recordScreenPolicy_dimToNonBright_resets() {
|
||||
for (int to : Arrays.asList(POLICY_OFF, POLICY_DOZE, POLICY_VR)) {
|
||||
for (int to : Arrays.asList(POLICY_OFF, POLICY_DOZE)) {
|
||||
setup();
|
||||
mScreenUndimDetector.mUndimCounter = 1;
|
||||
mScreenUndimDetector.mUndimCounterStartedMillis = 123;
|
||||
@@ -309,7 +307,7 @@ public class ScreenUndimDetectorTest {
|
||||
|
||||
@Test
|
||||
public void recordScreenPolicy_brightToNonDim_resets() {
|
||||
for (int to : Arrays.asList(POLICY_OFF, POLICY_DOZE, POLICY_VR)) {
|
||||
for (int to : Arrays.asList(POLICY_OFF, POLICY_DOZE)) {
|
||||
setup();
|
||||
mScreenUndimDetector.mUndimCounter = 1;
|
||||
mScreenUndimDetector.mUndimCounterStartedMillis = 123;
|
||||
|
||||
@@ -21,7 +21,6 @@ import static android.hardware.display.DisplayManagerInternal.DisplayPowerReques
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_DIM;
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_DOZE;
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_OFF;
|
||||
import static android.hardware.display.DisplayManagerInternal.DisplayPowerRequest.POLICY_VR;
|
||||
import static android.os.PowerManager.GO_TO_SLEEP_REASON_APPLICATION;
|
||||
import static android.os.PowerManager.GO_TO_SLEEP_REASON_DEVICE_ADMIN;
|
||||
import static android.os.PowerManager.GO_TO_SLEEP_REASON_DEVICE_FOLD;
|
||||
@@ -267,7 +266,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -308,7 +306,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -348,7 +345,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ true,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -387,7 +383,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ true,
|
||||
/* dozeAfterScreenOff= */ true,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -406,83 +401,6 @@ public class PowerGroupTest {
|
||||
brightnessFactor);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateWhileAsleep_VrModeEnabled() {
|
||||
final boolean batterySaverEnabled = false;
|
||||
float brightnessFactor = 0.3f;
|
||||
PowerSaveState powerSaveState = new PowerSaveState.Builder()
|
||||
.setBatterySaverEnabled(batterySaverEnabled)
|
||||
.setBrightnessFactor(brightnessFactor)
|
||||
.build();
|
||||
mPowerGroup.sleepLocked(TIMESTAMP1, UID, GO_TO_SLEEP_REASON_TIMEOUT);
|
||||
assertThat(mPowerGroup.getWakefulnessLocked()).isEqualTo(WAKEFULNESS_ASLEEP);
|
||||
mPowerGroup.updateLocked(/* screenBrightnessOverride= */ BRIGHTNESS,
|
||||
/* autoBrightness = */ true,
|
||||
/* useProximitySensor= */ true,
|
||||
/* boostScreenBrightness= */ true,
|
||||
/* dozeScreenStateOverride= */ Display.STATE_ON,
|
||||
/* dozeScreenBrightness= */ BRIGHTNESS_DOZE,
|
||||
/* overrideDrawWakeLock= */ false,
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ true,
|
||||
/* vrModeEnabled= */ true,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
DisplayManagerInternal.DisplayPowerRequest displayPowerRequest =
|
||||
mPowerGroup.mDisplayPowerRequest;
|
||||
assertThat(displayPowerRequest.policy).isEqualTo(POLICY_OFF);
|
||||
assertThat(displayPowerRequest.screenBrightnessOverride).isWithin(PRECISION).of(BRIGHTNESS);
|
||||
assertThat(displayPowerRequest.useAutoBrightness).isEqualTo(true);
|
||||
assertThat(displayPowerRequest.useProximitySensor).isEqualTo(true);
|
||||
assertThat(displayPowerRequest.boostScreenBrightness).isEqualTo(true);
|
||||
assertThat(displayPowerRequest.dozeScreenState).isEqualTo(Display.STATE_UNKNOWN);
|
||||
assertThat(displayPowerRequest.dozeScreenBrightness).isEqualTo(
|
||||
PowerManager.BRIGHTNESS_INVALID_FLOAT);
|
||||
assertThat(displayPowerRequest.lowPowerMode).isEqualTo(batterySaverEnabled);
|
||||
assertThat(displayPowerRequest.screenLowPowerBrightnessFactor).isWithin(PRECISION).of(
|
||||
brightnessFactor);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateWhileAwake_VrModeEnabled() {
|
||||
final boolean batterySaverEnabled = false;
|
||||
float brightnessFactor = 0.3f;
|
||||
PowerSaveState powerSaveState = new PowerSaveState.Builder()
|
||||
.setBatterySaverEnabled(batterySaverEnabled)
|
||||
.setBrightnessFactor(brightnessFactor)
|
||||
.build();
|
||||
assertThat(mPowerGroup.getWakefulnessLocked()).isEqualTo(WAKEFULNESS_AWAKE);
|
||||
mPowerGroup.updateLocked(/* screenBrightnessOverride= */ BRIGHTNESS,
|
||||
/* autoBrightness = */ true,
|
||||
/* useProximitySensor= */ true,
|
||||
/* boostScreenBrightness= */ true,
|
||||
/* dozeScreenStateOverride= */ Display.STATE_ON,
|
||||
/* dozeScreenBrightness= */ BRIGHTNESS_DOZE,
|
||||
/* overrideDrawWakeLock= */ false,
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ true,
|
||||
/* vrModeEnabled= */ true,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
DisplayManagerInternal.DisplayPowerRequest displayPowerRequest =
|
||||
mPowerGroup.mDisplayPowerRequest;
|
||||
assertThat(displayPowerRequest.policy).isEqualTo(POLICY_VR);
|
||||
assertThat(displayPowerRequest.screenBrightnessOverride).isWithin(PRECISION).of(BRIGHTNESS);
|
||||
assertThat(displayPowerRequest.useAutoBrightness).isEqualTo(true);
|
||||
assertThat(displayPowerRequest.useProximitySensor).isEqualTo(true);
|
||||
assertThat(displayPowerRequest.boostScreenBrightness).isEqualTo(true);
|
||||
assertThat(displayPowerRequest.dozeScreenState).isEqualTo(Display.STATE_UNKNOWN);
|
||||
assertThat(displayPowerRequest.dozeScreenBrightness).isEqualTo(
|
||||
PowerManager.BRIGHTNESS_INVALID_FLOAT);
|
||||
assertThat(displayPowerRequest.lowPowerMode).isEqualTo(batterySaverEnabled);
|
||||
assertThat(displayPowerRequest.screenLowPowerBrightnessFactor).isWithin(PRECISION).of(
|
||||
brightnessFactor);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateWhileAsleep_UpdatesDisplayPowerRequest() {
|
||||
final boolean batterySaverEnabled = false;
|
||||
@@ -503,7 +421,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -543,7 +460,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -581,7 +497,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ false,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -620,7 +535,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ false,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
@@ -658,7 +572,6 @@ public class PowerGroupTest {
|
||||
powerSaveState,
|
||||
/* quiescent= */ false,
|
||||
/* dozeAfterScreenOff= */ false,
|
||||
/* vrModeEnabled= */ false,
|
||||
/* bootCompleted= */ true,
|
||||
/* screenBrightnessBoostInProgress= */ true,
|
||||
/* waitForNegativeProximity= */ false);
|
||||
|
||||
@@ -453,39 +453,6 @@ public class PowerManagerServiceTest {
|
||||
assertThat(reason).isEqualTo(PowerManager.SHUTDOWN_REASON_THERMAL_SHUTDOWN);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetDesiredScreenPolicy_WithVR() {
|
||||
createService();
|
||||
startSystem();
|
||||
// Brighten up the screen
|
||||
mService.setWakefulnessLocked(Display.DEFAULT_DISPLAY_GROUP, WAKEFULNESS_AWAKE, 0, 0, 0, 0,
|
||||
null, null);
|
||||
assertThat(mService.getDesiredScreenPolicyLocked(Display.DEFAULT_DISPLAY)).isEqualTo(
|
||||
DisplayPowerRequest.POLICY_BRIGHT);
|
||||
|
||||
// Move to VR
|
||||
mService.setVrModeEnabled(true);
|
||||
assertThat(mService.getDesiredScreenPolicyLocked(Display.DEFAULT_DISPLAY)).isEqualTo(
|
||||
DisplayPowerRequest.POLICY_VR);
|
||||
|
||||
// Then take a nap
|
||||
mService.setWakefulnessLocked(Display.DEFAULT_DISPLAY_GROUP, WAKEFULNESS_ASLEEP, 0, 0, 0, 0,
|
||||
null, null);
|
||||
assertThat(mService.getDesiredScreenPolicyLocked(Display.DEFAULT_DISPLAY)).isEqualTo(
|
||||
DisplayPowerRequest.POLICY_OFF);
|
||||
|
||||
// Wake up to VR
|
||||
mService.setWakefulnessLocked(Display.DEFAULT_DISPLAY_GROUP, WAKEFULNESS_AWAKE, 0, 0, 0, 0,
|
||||
null, null);
|
||||
assertThat(mService.getDesiredScreenPolicyLocked(Display.DEFAULT_DISPLAY)).isEqualTo(
|
||||
DisplayPowerRequest.POLICY_VR);
|
||||
|
||||
// And back to normal
|
||||
mService.setVrModeEnabled(false);
|
||||
assertThat(mService.getDesiredScreenPolicyLocked(Display.DEFAULT_DISPLAY)).isEqualTo(
|
||||
DisplayPowerRequest.POLICY_BRIGHT);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testWakefulnessAwake_InitialValue() {
|
||||
createService();
|
||||
@@ -1787,10 +1754,8 @@ public class PowerManagerServiceTest {
|
||||
when(mNativeWrapperMock.nativeSetPowerMode(anyInt(), anyBoolean())).thenReturn(true);
|
||||
|
||||
mService.getBinderServiceInstance().setPowerMode(Mode.LAUNCH, true);
|
||||
mService.getBinderServiceInstance().setPowerMode(Mode.VR, false);
|
||||
|
||||
verify(mNativeWrapperMock).nativeSetPowerMode(eq(Mode.LAUNCH), eq(true));
|
||||
verify(mNativeWrapperMock).nativeSetPowerMode(eq(Mode.VR), eq(false));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user