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

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

Merge "Surface Flinger: return false from ColorLayer::onPreComposition()"

parents 503ce935 0d028791
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -35,6 +35,8 @@ public:

    void setPerFrameData(const sp<const DisplayDevice>& display) override;

    bool onPreComposition(nsecs_t /*refreshStartTime*/) override { return false; }

protected:
    FloatRect computeCrop(const sp<const DisplayDevice>& /*display*/) const override { return {}; }
};
+2 −0
Original line number Diff line number Diff line
@@ -36,6 +36,8 @@ public:
    void setPerFrameData(const sp<const DisplayDevice>& display) override;

    bool isCreatedFromMainThread() const override { return true; }

    bool onPreComposition(nsecs_t /*refreshStartTime*/) override { return false; }
};

} // namespace android
+1 −1
Original line number Diff line number Diff line
@@ -401,7 +401,7 @@ public:
     * called before composition.
     * returns true if the layer has pending updates.
     */
    virtual bool onPreComposition(nsecs_t /*refreshStartTime*/) { return true; }
    virtual bool onPreComposition(nsecs_t refreshStartTime) = 0;

    /*
     * called after composition.
+0 −4
Original line number Diff line number Diff line
@@ -553,10 +553,6 @@ struct BaseLayerProperties {
                                  IComposerClient::Color({0xff, 0xff, 0xff, 0xff})))
                .Times(1);

        // TODO: ColorLayer::onPreComposition() always returns true, triggering an
        // extra layer update in SurfaceFlinger::preComposition(). This seems
        // wrong on the surface.
        EXPECT_CALL(*test->mMessageQueue, invalidate()).Times(1);
    }

    static void setupHwcSetPerFrameBufferCallExpectations(CompositionTest* test) {