Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0b7defea authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 10855149 from 9408b29f to 24Q1-release

Change-Id: I7c82c57e94a23e72b3d1dec374ed053d3e96d2af
parents 0522dd65 9408b29f
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ aconfig_srcjars = [
    ":sdk_sandbox_flags_lib{.generated_srcjars}",
    ":android.permission.flags-aconfig-java{.generated_srcjars}",
    ":hwui_flags_java_lib{.generated_srcjars}",
    ":display_flags_lib{.generated_srcjars}",
]

filegroup {
@@ -305,3 +306,10 @@ java_aconfig_library {
    aconfig_declarations: "hwui_flags",
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}

// Display
java_aconfig_library {
    name: "display_flags_lib",
    aconfig_declarations: "display_flags",
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}
+29 −0
Original line number Diff line number Diff line
@@ -303,6 +303,8 @@ import javax.xml.datatype.DatatypeConfigurationException;
 *
 *      <screenBrightnessRampIncreaseMaxMillis>2000</screenBrightnessRampIncreaseMaxMillis>
 *      <screenBrightnessRampDecreaseMaxMillis>3000</screenBrightnessRampDecreaseMaxMillis>
 *      <screenBrightnessRampIncreaseMaxIdleMillis>2000</screenBrightnessRampIncreaseMaxIdleMillis>
 *      <screenBrightnessRampDecreaseMaxIdleMillis>2000</screenBrightnessRampDecreaseMaxIdleMillis>
 *
 *      <lightSensor>
 *        <type>android.sensor.light</type>
@@ -619,6 +621,8 @@ public class DisplayDeviceConfig {
    private float mBrightnessRampSlowIncreaseIdle = Float.NaN;
    private long mBrightnessRampDecreaseMaxMillis = 0;
    private long mBrightnessRampIncreaseMaxMillis = 0;
    private long mBrightnessRampDecreaseMaxIdleMillis = 0;
    private long mBrightnessRampIncreaseMaxIdleMillis = 0;
    private int mAmbientHorizonLong = AMBIENT_LIGHT_LONG_HORIZON_MILLIS;
    private int mAmbientHorizonShort = AMBIENT_LIGHT_SHORT_HORIZON_MILLIS;
    private float mScreenBrighteningMinThreshold = 0.0f;     // Retain behaviour as though there is
@@ -1078,6 +1082,14 @@ public class DisplayDeviceConfig {
        return mBrightnessRampIncreaseMaxMillis;
    }

    public long getBrightnessRampDecreaseMaxIdleMillis() {
        return mBrightnessRampDecreaseMaxIdleMillis;
    }

    public long getBrightnessRampIncreaseMaxIdleMillis() {
        return mBrightnessRampIncreaseMaxIdleMillis;
    }

    public int getAmbientHorizonLong() {
        return mAmbientHorizonLong;
    }
@@ -1697,6 +1709,8 @@ public class DisplayDeviceConfig {
                + ", mBrightnessRampSlowIncreaseIdle=" + mBrightnessRampSlowIncreaseIdle
                + ", mBrightnessRampDecreaseMaxMillis=" + mBrightnessRampDecreaseMaxMillis
                + ", mBrightnessRampIncreaseMaxMillis=" + mBrightnessRampIncreaseMaxMillis
                + ", mBrightnessRampDecreaseMaxIdleMillis=" + mBrightnessRampDecreaseMaxIdleMillis
                + ", mBrightnessRampIncreaseMaxIdleMillis=" + mBrightnessRampIncreaseMaxIdleMillis
                + "\n"
                + "mAmbientHorizonLong=" + mAmbientHorizonLong
                + ", mAmbientHorizonShort=" + mAmbientHorizonShort
@@ -1892,6 +1906,8 @@ public class DisplayDeviceConfig {
        mBrightnessRampSlowIncreaseIdle = PowerManager.BRIGHTNESS_MAX;
        mBrightnessRampDecreaseMaxMillis = 0;
        mBrightnessRampIncreaseMaxMillis = 0;
        mBrightnessRampDecreaseMaxIdleMillis = 0;
        mBrightnessRampIncreaseMaxIdleMillis = 0;
        setSimpleMappingStrategyValues();
        loadAmbientLightSensorFromConfigXml();
        setProxSensorUnspecified();
@@ -2767,6 +2783,19 @@ public class DisplayDeviceConfig {
            mBrightnessRampSlowDecreaseIdle = mBrightnessRampSlowDecrease;
            mBrightnessRampSlowIncreaseIdle = mBrightnessRampSlowIncrease;
        }

        final BigInteger increaseMaxIdle = config.getScreenBrightnessRampIncreaseMaxIdleMillis();
        if (increaseMaxIdle != null) {
            mBrightnessRampIncreaseMaxIdleMillis = increaseMaxIdle.intValue();
        } else {
            mBrightnessRampIncreaseMaxIdleMillis = mBrightnessRampIncreaseMaxMillis;
        }
        final BigInteger decreaseMaxIdle = config.getScreenBrightnessRampDecreaseMaxIdleMillis();
        if (decreaseMaxIdle != null) {
            mBrightnessRampDecreaseMaxIdleMillis = decreaseMaxIdle.intValue();
        } else {
            mBrightnessRampDecreaseMaxIdleMillis = mBrightnessRampDecreaseMaxMillis;
        }
    }

    private void loadBrightnessRampsFromConfigXml() {
+32 −9
Original line number Diff line number Diff line
@@ -321,6 +321,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
    private long mBrightnessRampIncreaseMaxTimeMillis;
    private long mBrightnessRampDecreaseMaxTimeMillis;

    // Maximum time a ramp animation can take in idle mode.
    private long mBrightnessRampIncreaseMaxTimeIdleMillis;
    private long mBrightnessRampDecreaseMaxTimeIdleMillis;

    // The pending power request.
    // Initially null until the first call to requestPowerState.
    @GuardedBy("mLock")
@@ -585,6 +589,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call

    private boolean mBootCompleted;

    private final DisplayManagerFlags mFlags;

    /**
     * Creates the display power controller.
     */
@@ -750,6 +756,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
        mPendingAutoBrightnessAdjustment = PowerManager.BRIGHTNESS_INVALID_FLOAT;

        mBootCompleted = bootCompleted;

        mFlags = flags;
    }

    private void applyReduceBrightColorsSplineAdjustment() {
@@ -1057,11 +1065,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
        loadNitsRange(mContext.getResources());
        setUpAutoBrightness(mContext.getResources(), mHandler);
        reloadReduceBrightColours();
        if (mScreenBrightnessRampAnimator != null) {
            mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                    mBrightnessRampIncreaseMaxTimeMillis,
                    mBrightnessRampDecreaseMaxTimeMillis);
        }
        setAnimatorRampSpeeds(/* isIdleMode= */ false);
        mBrightnessRangeController.loadFromConfig(hbmMetadata, token, info, mDisplayDeviceConfig);
        mBrightnessThrottler.loadThermalBrightnessThrottlingDataFromDisplayDeviceConfig(
                mDisplayDeviceConfig.getThermalBrightnessThrottlingDataMapByThrottlingId(),
@@ -1102,9 +1106,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
        mScreenBrightnessRampAnimator = mInjector.getDualRampAnimator(mPowerState,
                DisplayPowerState.SCREEN_BRIGHTNESS_FLOAT,
                DisplayPowerState.SCREEN_SDR_BRIGHTNESS_FLOAT);
        mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                mBrightnessRampIncreaseMaxTimeMillis,
                mBrightnessRampDecreaseMaxTimeMillis);
        setAnimatorRampSpeeds(mAutomaticBrightnessController != null
                && mAutomaticBrightnessController.isInIdleMode());
        mScreenBrightnessRampAnimator.setListener(mRampAnimatorListener);

        noteScreenState(mPowerState.getScreenState());
@@ -1323,6 +1326,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
                mDisplayDeviceConfig.getBrightnessRampDecreaseMaxMillis();
        mBrightnessRampIncreaseMaxTimeMillis =
                mDisplayDeviceConfig.getBrightnessRampIncreaseMaxMillis();
        mBrightnessRampDecreaseMaxTimeIdleMillis =
                mDisplayDeviceConfig.getBrightnessRampDecreaseMaxIdleMillis();
        mBrightnessRampIncreaseMaxTimeIdleMillis =
                mDisplayDeviceConfig.getBrightnessRampIncreaseMaxIdleMillis();
    }

    private void loadNitsRange(Resources resources) {
@@ -1349,6 +1356,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
            } else {
                mAutomaticBrightnessController.switchToInteractiveScreenBrightnessMode();
            }
            setAnimatorRampSpeeds(isIdle);
        }

        Message msg = mHandler.obtainMessage();
@@ -1357,6 +1365,21 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
        mHandler.sendMessageAtTime(msg, mClock.uptimeMillis());
    }

    private void setAnimatorRampSpeeds(boolean isIdle) {
        if (mScreenBrightnessRampAnimator == null) {
            return;
        }
        if (mFlags.isAdaptiveTone1Enabled() && isIdle) {
            mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                    mBrightnessRampIncreaseMaxTimeIdleMillis,
                    mBrightnessRampDecreaseMaxTimeIdleMillis);
        } else {
            mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                    mBrightnessRampIncreaseMaxTimeMillis,
                    mBrightnessRampDecreaseMaxTimeMillis);
        }
    }

    private final Animator.AnimatorListener mAnimatorListener = new Animator.AnimatorListener() {
        @Override
        public void onAnimationStart(Animator animation) {
+31 −9
Original line number Diff line number Diff line
@@ -289,6 +289,10 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
    private long mBrightnessRampIncreaseMaxTimeMillis;
    private long mBrightnessRampDecreaseMaxTimeMillis;

    // Maximum time a ramp animation can take in idle mode.
    private long mBrightnessRampIncreaseMaxTimeIdleMillis;
    private long mBrightnessRampDecreaseMaxTimeIdleMillis;

    // The pending power request.
    // Initially null until the first call to requestPowerState.
    @GuardedBy("mLock")
@@ -465,6 +469,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal

    private boolean mBootCompleted;

    private final DisplayManagerFlags mFlags;

    /**
     * Creates the display power controller.
     */
@@ -615,6 +621,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
                R.bool.config_displayBrightnessBucketsInDoze);

        mBootCompleted = bootCompleted;
        mFlags = flags;
    }

    private void applyReduceBrightColorsSplineAdjustment() {
@@ -862,11 +869,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
        loadNitsRange(mContext.getResources());
        setUpAutoBrightness(mContext.getResources(), mHandler);
        reloadReduceBrightColours();
        if (mScreenBrightnessRampAnimator != null) {
            mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                    mBrightnessRampIncreaseMaxTimeMillis,
                    mBrightnessRampDecreaseMaxTimeMillis);
        }
        setAnimatorRampSpeeds(/* isIdleMode= */ false);

        mBrightnessRangeController.loadFromConfig(hbmMetadata, token, info, mDisplayDeviceConfig);
        mBrightnessThrottler.loadThermalBrightnessThrottlingDataFromDisplayDeviceConfig(
@@ -908,9 +911,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
        mScreenBrightnessRampAnimator = mInjector.getDualRampAnimator(mPowerState,
                DisplayPowerState.SCREEN_BRIGHTNESS_FLOAT,
                DisplayPowerState.SCREEN_SDR_BRIGHTNESS_FLOAT);
        mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                mBrightnessRampIncreaseMaxTimeMillis,
                mBrightnessRampDecreaseMaxTimeMillis);
        setAnimatorRampSpeeds(mAutomaticBrightnessController != null
                && mAutomaticBrightnessController.isInIdleMode());
        mScreenBrightnessRampAnimator.setListener(mRampAnimatorListener);

        noteScreenState(mPowerState.getScreenState());
@@ -1136,6 +1138,10 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
                mDisplayDeviceConfig.getBrightnessRampDecreaseMaxMillis();
        mBrightnessRampIncreaseMaxTimeMillis =
                mDisplayDeviceConfig.getBrightnessRampIncreaseMaxMillis();
        mBrightnessRampDecreaseMaxTimeIdleMillis =
                mDisplayDeviceConfig.getBrightnessRampDecreaseMaxIdleMillis();
        mBrightnessRampIncreaseMaxTimeIdleMillis =
                mDisplayDeviceConfig.getBrightnessRampIncreaseMaxIdleMillis();
    }

    private void loadNitsRange(Resources resources) {
@@ -1162,6 +1168,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
            } else {
                mAutomaticBrightnessController.switchToInteractiveScreenBrightnessMode();
            }
            setAnimatorRampSpeeds(isIdle);
        }
        Message msg = mHandler.obtainMessage();
        msg.what = MSG_SET_DWBC_STRONG_MODE;
@@ -1169,6 +1176,21 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal
        mHandler.sendMessageAtTime(msg, mClock.uptimeMillis());
    }

    private void setAnimatorRampSpeeds(boolean isIdle) {
        if (mScreenBrightnessRampAnimator == null) {
            return;
        }
        if (mFlags.isAdaptiveTone1Enabled() && isIdle) {
            mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                    mBrightnessRampIncreaseMaxTimeIdleMillis,
                    mBrightnessRampDecreaseMaxTimeIdleMillis);
        } else {
            mScreenBrightnessRampAnimator.setAnimationTimeLimits(
                    mBrightnessRampIncreaseMaxTimeMillis,
                    mBrightnessRampDecreaseMaxTimeMillis);
        }
    }

    private final Animator.AnimatorListener mAnimatorListener = new Animator.AnimatorListener() {
        @Override
        public void onAnimationStart(Animator animation) {
+0 −5
Original line number Diff line number Diff line
@@ -5,8 +5,3 @@ aconfig_declarations {
        "*.aconfig",
    ],
}

java_aconfig_library {
    name: "display_flags_lib",
    aconfig_declarations: "display_flags",
}
Loading