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

Commit a7c8c514 authored by Ady Abraham's avatar Ady Abraham Committed by Android (Google) Code Review
Browse files

Merge "composer: 2.4: vts: do not try to delay a config change outside a group" into sc-dev

parents fd5b1a6d 8bd3c2f0
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -561,17 +561,28 @@ void GraphicsComposerHidlTest::Test_setActiveConfigWithConstraints(const TestPar
            setActiveConfig(display, config1);
            sendRefreshFrame(display, nullptr);

            int32_t vsyncPeriod1 = mComposerClient->getDisplayAttribute_2_4(
            const auto vsyncPeriod1 = mComposerClient->getDisplayAttribute_2_4(
                    display.get(), config1,
                    IComposerClient::IComposerClient::Attribute::VSYNC_PERIOD);
            int32_t vsyncPeriod2 = mComposerClient->getDisplayAttribute_2_4(
            const auto configGroup1 = mComposerClient->getDisplayAttribute_2_4(
                    display.get(), config1,
                    IComposerClient::IComposerClient::Attribute::CONFIG_GROUP);
            const auto vsyncPeriod2 = mComposerClient->getDisplayAttribute_2_4(
                    display.get(), config2,
                    IComposerClient::IComposerClient::Attribute::VSYNC_PERIOD);
            const auto configGroup2 = mComposerClient->getDisplayAttribute_2_4(
                    display.get(), config2,
                    IComposerClient::IComposerClient::Attribute::CONFIG_GROUP);

            if (vsyncPeriod1 == vsyncPeriod2) {
                return;  // continue
            }

            // We don't allow delayed change when changing config groups
            if (params.delayForChange > 0 && configGroup1 != configGroup2) {
                return;  // continue
            }

            VsyncPeriodChangeTimeline timeline;
            IComposerClient::VsyncPeriodChangeConstraints constraints = {
                    .desiredTimeNanos = systemTime() + params.delayForChange,