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

Commit f346da37 authored by Sally Qi's avatar Sally Qi Committed by Automerger Merge Worker
Browse files

Merge "Fix the issue of using SilkFx crash on non-HDR-supported phone." into udc-dev am: 9cdcda8d

parents 8e347bb9 9cdcda8d
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
@@ -888,6 +888,13 @@ public class DisplayDeviceConfig {
        return mBacklightToNitsSpline.interpolate(backlight);
        return mBacklightToNitsSpline.interpolate(backlight);
    }
    }


    /**
     * @return true if there is sdrHdrRatioMap, false otherwise.
     */
    public boolean hasSdrToHdrRatioSpline() {
        return mSdrToHdrRatioSpline != null;
    }

    /**
    /**
     * Calculate the HDR brightness for the specified SDR brightenss, restricted by the
     * Calculate the HDR brightness for the specified SDR brightenss, restricted by the
     * maxDesiredHdrSdrRatio (the ratio between the HDR luminance and SDR luminance)
     * maxDesiredHdrSdrRatio (the ratio between the HDR luminance and SDR luminance)
+3 −1
Original line number Original line Diff line number Diff line
@@ -888,7 +888,9 @@ final class LocalDisplayAdapter extends DisplayAdapter {
                                    BrightnessSynchronizer.brightnessFloatToInt(
                                    BrightnessSynchronizer.brightnessFloatToInt(
                                            sdrBrightnessState));
                                            sdrBrightnessState));


                            if (getDisplayDeviceConfig().hasSdrToHdrRatioSpline()) {
                                handleHdrSdrNitsChanged(nits, sdrNits);
                                handleHdrSdrNitsChanged(nits, sdrNits);
                            }


                        } finally {
                        } finally {
                            Trace.traceEnd(Trace.TRACE_TAG_POWER);
                            Trace.traceEnd(Trace.TRACE_TAG_POWER);
+2 −0
Original line number Original line Diff line number Diff line
@@ -27,6 +27,7 @@ import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.assertTrue;
import static org.junit.Assume.assumeTrue;
import static org.mockito.ArgumentMatchers.anyFloat;
import static org.mockito.ArgumentMatchers.anyFloat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.mock;
@@ -981,6 +982,7 @@ public class LocalDisplayAdapterTest {
        DisplayDevice displayDevice = mListener.addedDisplays.get(0);
        DisplayDevice displayDevice = mListener.addedDisplays.get(0);


        // Turn on / initialize
        // Turn on / initialize
        assumeTrue(displayDevice.getDisplayDeviceConfig().hasSdrToHdrRatioSpline());
        Runnable changeStateRunnable = displayDevice.requestDisplayStateLocked(Display.STATE_ON, 0,
        Runnable changeStateRunnable = displayDevice.requestDisplayStateLocked(Display.STATE_ON, 0,
                0);
                0);
        changeStateRunnable.run();
        changeStateRunnable.run();