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

Commit 7e992ac1 authored by Alec Mouri's avatar Alec Mouri Committed by Automerger Merge Worker
Browse files

Merge "Plumb display brightness nits to composer hal." into tm-dev am: d7814346

parents ba104275 d7814346
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -221,6 +221,7 @@ void Display::beginFrame() {
        physicalDisplayId && getState().displayBrightness) {
        physicalDisplayId && getState().displayBrightness) {
        const status_t result =
        const status_t result =
                hwc.setDisplayBrightness(*physicalDisplayId, *getState().displayBrightness,
                hwc.setDisplayBrightness(*physicalDisplayId, *getState().displayBrightness,
                                         getState().displayBrightnessNits,
                                         Hwc2::Composer::DisplayBrightnessOptions{
                                         Hwc2::Composer::DisplayBrightnessOptions{
                                                 .applyImmediately = false})
                                                 .applyImmediately = false})
                        .get();
                        .get();
+3 −1
Original line number Original line Diff line number Diff line
@@ -640,8 +640,9 @@ TEST_F(DisplayChooseCompositionStrategyTest, normalOperationWithDisplayBrightnes
    // values, use a Sequence to control the matching so the values are returned in a known
    // values, use a Sequence to control the matching so the values are returned in a known
    // order.
    // order.
    constexpr float kDisplayBrightness = 0.5f;
    constexpr float kDisplayBrightness = 0.5f;
    constexpr float kDisplayBrightnessNits = 200.f;
    EXPECT_CALL(mHwComposer,
    EXPECT_CALL(mHwComposer,
                setDisplayBrightness(DEFAULT_DISPLAY_ID, kDisplayBrightness,
                setDisplayBrightness(DEFAULT_DISPLAY_ID, kDisplayBrightness, kDisplayBrightnessNits,
                                     Hwc2::Composer::DisplayBrightnessOptions{.applyImmediately =
                                     Hwc2::Composer::DisplayBrightnessOptions{.applyImmediately =
                                                                                      false}))
                                                                                      false}))
            .WillOnce(Return(ByMove(ftl::yield<status_t>(NO_ERROR))));
            .WillOnce(Return(ByMove(ftl::yield<status_t>(NO_ERROR))));
@@ -650,6 +651,7 @@ TEST_F(DisplayChooseCompositionStrategyTest, normalOperationWithDisplayBrightnes
    mock::RenderSurface* renderSurface = new StrictMock<mock::RenderSurface>();
    mock::RenderSurface* renderSurface = new StrictMock<mock::RenderSurface>();
    EXPECT_CALL(*renderSurface, beginFrame(_)).Times(1);
    EXPECT_CALL(*renderSurface, beginFrame(_)).Times(1);
    mDisplay->setRenderSurfaceForTest(std::unique_ptr<RenderSurface>(renderSurface));
    mDisplay->setRenderSurfaceForTest(std::unique_ptr<RenderSurface>(renderSurface));
    mDisplay->editState().displayBrightnessNits = kDisplayBrightnessNits;
    mDisplay->beginFrame();
    mDisplay->beginFrame();


    auto& state = mDisplay->getState();
    auto& state = mDisplay->getState();
+2 −2
Original line number Original line Diff line number Diff line
@@ -84,8 +84,8 @@ public:
    MOCK_METHOD4(setDisplayContentSamplingEnabled, status_t(HalDisplayId, bool, uint8_t, uint64_t));
    MOCK_METHOD4(setDisplayContentSamplingEnabled, status_t(HalDisplayId, bool, uint8_t, uint64_t));
    MOCK_METHOD4(getDisplayedContentSample,
    MOCK_METHOD4(getDisplayedContentSample,
                 status_t(HalDisplayId, uint64_t, uint64_t, DisplayedFrameStats*));
                 status_t(HalDisplayId, uint64_t, uint64_t, DisplayedFrameStats*));
    MOCK_METHOD3(setDisplayBrightness,
    MOCK_METHOD4(setDisplayBrightness,
                 std::future<status_t>(PhysicalDisplayId, float,
                 std::future<status_t>(PhysicalDisplayId, float, float,
                                       const Hwc2::Composer::DisplayBrightnessOptions&));
                                       const Hwc2::Composer::DisplayBrightnessOptions&));
    MOCK_METHOD2(getDisplayBrightnessSupport, status_t(PhysicalDisplayId, bool*));
    MOCK_METHOD2(getDisplayBrightnessSupport, status_t(PhysicalDisplayId, bool*));


+2 −2
Original line number Original line Diff line number Diff line
@@ -927,9 +927,9 @@ Error AidlComposer::setLayerPerFrameMetadataBlobs(
    return Error::NONE;
    return Error::NONE;
}
}


Error AidlComposer::setDisplayBrightness(Display display, float brightness,
Error AidlComposer::setDisplayBrightness(Display display, float brightness, float brightnessNits,
                                         const DisplayBrightnessOptions& options) {
                                         const DisplayBrightnessOptions& options) {
    mWriter.setDisplayBrightness(translate<int64_t>(display), brightness);
    mWriter.setDisplayBrightness(translate<int64_t>(display), brightness, brightnessNits);


    if (options.applyImmediately) {
    if (options.applyImmediately) {
        return execute();
        return execute();
+1 −1
Original line number Original line Diff line number Diff line
@@ -183,7 +183,7 @@ public:
    Error setLayerPerFrameMetadataBlobs(
    Error setLayerPerFrameMetadataBlobs(
            Display display, Layer layer,
            Display display, Layer layer,
            const std::vector<IComposerClient::PerFrameMetadataBlob>& metadata) override;
            const std::vector<IComposerClient::PerFrameMetadataBlob>& metadata) override;
    Error setDisplayBrightness(Display display, float brightness,
    Error setDisplayBrightness(Display display, float brightness, float brightnessNits,
                               const DisplayBrightnessOptions& options) override;
                               const DisplayBrightnessOptions& options) override;


    // Composer HAL 2.4
    // Composer HAL 2.4
Loading