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

Commit 489b6338 authored by Piotr Wilczyński's avatar Piotr Wilczyński Committed by Android (Google) Code Review
Browse files

Merge "BrightnessEvent last sensor reading" into main

parents 7e7b7c6c 887828e4
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -418,6 +418,10 @@ public class AutomaticBrightnessController {
        if (brightnessEvent != null) {
            brightnessEvent.setLux(
                    mAmbientLuxValid ? mAmbientLux : PowerManager.BRIGHTNESS_INVALID_FLOAT);
            if (mAmbientLightRingBuffer.size() > 0) {
                brightnessEvent.setLastReadLux(
                        mAmbientLightRingBuffer.getLux(mAmbientLightRingBuffer.size() - 1));
            }
            brightnessEvent.setPreThresholdLux(mPreThresholdLux);
            brightnessEvent.setPreThresholdBrightness(mPreThresholdBrightness);
            brightnessEvent.setRecommendedBrightness(mScreenAutoBrightness);
+11 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ public final class BrightnessEvent {
    private int mDisplayPolicy;
    private long mTime;
    private float mLux;
    private float mLastReadLux;
    private float mNits;
    private float mHdrNits;
    private float mPercent;
@@ -110,6 +111,7 @@ public final class BrightnessEvent {
        // Lux values
        mLux = that.getLux();
        mPreThresholdLux = that.getPreThresholdLux();
        mLastReadLux = that.mLastReadLux;
        mNits = that.getNits();
        mHdrNits = that.getHdrNits();
        mPercent = that.getPercent();
@@ -151,6 +153,7 @@ public final class BrightnessEvent {
        // Lux values
        mLux = INVALID_LUX;
        mPreThresholdLux = 0;
        mLastReadLux = INVALID_LUX;
        mNits = INVALID_NITS;
        mHdrNits = INVALID_NITS;
        mPercent = -1f;
@@ -197,6 +200,8 @@ public final class BrightnessEvent {
                && mDisplayStateReason == that.mDisplayStateReason
                && mDisplayPolicy == that.mDisplayPolicy
                && Float.floatToRawIntBits(mLux) == Float.floatToRawIntBits(that.mLux)
                && Float.floatToRawIntBits(mLastReadLux) == Float.floatToRawIntBits(
                that.mLastReadLux)
                && Float.floatToRawIntBits(mPreThresholdLux)
                == Float.floatToRawIntBits(that.mPreThresholdLux)
                && Float.floatToRawIntBits(mNits) == Float.floatToRawIntBits(that.mNits)
@@ -253,6 +258,8 @@ public final class BrightnessEvent {
                + ", rcmdBrt=" + mRecommendedBrightness
                + ", preBrt=" + mPreThresholdBrightness
                + ", preLux=" + mPreThresholdLux
                + (mLastReadLux != INVALID_LUX ? ", lastReadLux=" + mLastReadLux
                : "")
                + ", wasShortTermModelActive=" + mWasShortTermModelActive
                + ", autoBrightness=" + mAutomaticBrightnessEnabled + " ("
                + autoBrightnessModeToString(mAutoBrightnessMode) + ")"
@@ -336,6 +343,10 @@ public final class BrightnessEvent {
        this.mLux = lux;
    }

    public void setLastReadLux(float lastReadLux) {
        this.mLastReadLux = lastReadLux;
    }

    public float getPreThresholdLux() {
        return mPreThresholdLux;
    }
+21 −2
Original line number Diff line number Diff line
@@ -94,11 +94,14 @@ public final class BrightnessEventTest {
                        + "rbcStrength=-1, powerFactor=0.2, physDisp=display_name(987654321), "
                        + "logicalId=1, slowChange=true, rampSpeed=0.3";
        assertEquals(expectedString, actualString);
    }

        // Now check with optional HDR logging (when HDR brightness differs from brightness)
    @Test
    public void testToStringWorksAsExpected_hdr() {
        // Check with optional HDR logging (when HDR brightness differs from brightness)
        mBrightnessEvent.setHdrBrightness(0.7f);
        mBrightnessEvent.setHdrNits(1093.8f);
        actualString = mBrightnessEvent.toString(false);
        String actualString = mBrightnessEvent.toString(false);
        String expectedHdrString =
                "BrightnessEvent: brt=0.6(46.5%)(hdr=0.7), nits=893.8(hdr=1093.8), lux=100.0, "
                        + "reason=doze [ low_pwr ], strat=strategy_name, state=ON, "
@@ -111,6 +114,22 @@ public final class BrightnessEventTest {
        assertEquals(expectedHdrString, actualString);
    }

    @Test
    public void testToStringWorksAsExpected_lastReadLux() {
        mBrightnessEvent.setLastReadLux(831.49f);
        String actualString = mBrightnessEvent.toString(false);
        String expectedString =
                "BrightnessEvent: brt=0.6(46.5%), nits=893.8, lux=100.0, reason=doze [ "
                        + "low_pwr ], strat=strategy_name, state=ON, stateReason=DEFAULT_POLICY, "
                        + "policy=BRIGHT, flags=, initBrt=25.0, rcmdBrt=0.6, preBrt=NaN, "
                        + "preLux=150.0, lastReadLux=831.49, wasShortTermModelActive=true, "
                        + "autoBrightness=true (idle), unclampedBrt=0.65, hbmMax=0.62, "
                        + "hbmMode=off, thrmMax=0.65, rbcStrength=-1, powerFactor=0.2, "
                        + "physDisp=display_name(987654321), logicalId=1, slowChange=true, "
                        + "rampSpeed=0.3";
        assertEquals(expectedString, actualString);
    }

    @Test
    public void testFlagsToString() {
        mBrightnessEvent.reset();