From 99eeeb8ddb1613fbc688bd37ebdaf8b66d105eed Mon Sep 17 00:00:00 2001 From: Chavi Weingarten Date: Thu, 10 Sep 2020 20:55:11 +0000 Subject: Revert "Update screen capture functions to accept a ScreenCaptur..." Revert submission 12404049-async_screencapture Reason for revert: 168149157, 168154840 Reverted Changes: I54c34003c:Send ScreenCaptureListener to native screen captur... I9cbc833f8:Update screen capture functions to accept a Screen... Change-Id: Ib5eacad84b794897173516e7d29b9af1eecace60 Bug: 168149157 Bug: 168154840 --- services/surfaceflinger/RegionSamplingThread.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'services/surfaceflinger/RegionSamplingThread.cpp') diff --git a/services/surfaceflinger/RegionSamplingThread.cpp b/services/surfaceflinger/RegionSamplingThread.cpp index 4dc20c44b8..a2fc6925b8 100644 --- a/services/surfaceflinger/RegionSamplingThread.cpp +++ b/services/surfaceflinger/RegionSamplingThread.cpp @@ -29,7 +29,6 @@ #include #include #include -#include #include #include @@ -447,6 +446,22 @@ void RegionSamplingThread::captureSample() { PIXEL_FORMAT_RGBA_8888, 1, usage, "RegionSamplingThread"); } + class SyncScreenCaptureListener : public BnScreenCaptureListener { + public: + status_t onScreenCaptureComplete(const ScreenCaptureResults& captureResults) override { + resultsPromise.set_value(captureResults); + return NO_ERROR; + } + + ScreenCaptureResults waitForResults() { + std::future resultsFuture = resultsPromise.get_future(); + return resultsFuture.get(); + } + + private: + std::promise resultsPromise; + }; + const sp captureListener = new SyncScreenCaptureListener(); mFlinger.captureScreenCommon(std::move(renderAreaFuture), traverseLayers, buffer, true /* regionSampling */, captureListener); -- cgit v1.2.3-59-g8ed1b