diff options
Diffstat (limited to 'services/surfaceflinger/Layer.cpp')
-rw-r--r-- | services/surfaceflinger/Layer.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp index d8a5601b8a..3a92ca49a2 100644 --- a/services/surfaceflinger/Layer.cpp +++ b/services/surfaceflinger/Layer.cpp @@ -2664,6 +2664,18 @@ void Layer::cloneDrawingState(const Layer* from) { mDrawingState.callbackHandles = {}; } +bool Layer::setTransactionCompletedListeners(const std::vector<sp<CallbackHandle>>& handles) { + if (handles.empty()) { + return false; + } + + for (const auto& handle : handles) { + mFlinger->getTransactionCallbackInvoker().registerUnpresentedCallbackHandle(handle); + } + + return true; +} + // --------------------------------------------------------------------------- std::ostream& operator<<(std::ostream& stream, const Layer::FrameRate& rate) { |