From cdb4ed7743f5abfa4e9a785b14a50ca25c906f3f Mon Sep 17 00:00:00 2001 From: John Reck Date: Thu, 4 Feb 2021 13:39:33 -0500 Subject: Add plumbing for sending stretch effect to SF Bug: 179047472 Test: builds & boots, doesn't do anything yet Change-Id: Ib8cccdde518f0591c2f2ee3416684442f37a1e06 --- libs/gui/SurfaceComposerClient.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'libs/gui/SurfaceComposerClient.cpp') diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp index 550803d453..73807c4bb6 100644 --- a/libs/gui/SurfaceComposerClient.cpp +++ b/libs/gui/SurfaceComposerClient.cpp @@ -1569,6 +1569,23 @@ SurfaceComposerClient::Transaction& SurfaceComposerClient::Transaction::setApply return *this; } +SurfaceComposerClient::Transaction& SurfaceComposerClient::Transaction::setStretchEffect( + const sp& sc, float left, float top, float right, float bottom, float vecX, + float vecY, float maxAmount) { + layer_state_t* s = getLayerState(sc); + if (!s) { + mStatus = BAD_INDEX; + return *this; + } + + s->what |= layer_state_t::eStretchChanged; + s->stretchEffect = StretchEffect{.area = {left, top, right, bottom}, + .vectorX = vecX, + .vectorY = vecY, + .maxAmount = maxAmount}; + return *this; +} + // --------------------------------------------------------------------------- DisplayState& SurfaceComposerClient::Transaction::getDisplayState(const sp& token) { -- cgit v1.2.3-59-g8ed1b