diff options
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/androidfw/DisplayEventDispatcher.cpp | 5 | ||||
| -rw-r--r-- | libs/androidfw/include/androidfw/DisplayEventDispatcher.h | 3 | ||||
| -rw-r--r-- | libs/hwui/renderthread/CanvasContext.cpp | 3 | ||||
| -rw-r--r-- | libs/hwui/renderthread/RenderThread.cpp | 4 |
4 files changed, 10 insertions, 5 deletions
diff --git a/libs/androidfw/DisplayEventDispatcher.cpp b/libs/androidfw/DisplayEventDispatcher.cpp index 660614895603..d8a3f42690f4 100644 --- a/libs/androidfw/DisplayEventDispatcher.cpp +++ b/libs/androidfw/DisplayEventDispatcher.cpp @@ -34,8 +34,9 @@ namespace android { static const size_t EVENT_BUFFER_SIZE = 100; DisplayEventDispatcher::DisplayEventDispatcher(const sp<Looper>& looper, - ISurfaceComposer::VsyncSource vsyncSource) : - mLooper(looper), mReceiver(vsyncSource), mWaitingForVsync(false) { + ISurfaceComposer::VsyncSource vsyncSource, + ISurfaceComposer::ConfigChanged configChanged) : + mLooper(looper), mReceiver(vsyncSource, configChanged), mWaitingForVsync(false) { ALOGV("dispatcher %p ~ Initializing display event dispatcher.", this); } diff --git a/libs/androidfw/include/androidfw/DisplayEventDispatcher.h b/libs/androidfw/include/androidfw/DisplayEventDispatcher.h index 5381c0174cb0..8bc25202b3ab 100644 --- a/libs/androidfw/include/androidfw/DisplayEventDispatcher.h +++ b/libs/androidfw/include/androidfw/DisplayEventDispatcher.h @@ -23,7 +23,8 @@ namespace android { class DisplayEventDispatcher : public LooperCallback { public: explicit DisplayEventDispatcher(const sp<Looper>& looper, - ISurfaceComposer::VsyncSource vsyncSource = ISurfaceComposer::eVsyncSourceApp); + ISurfaceComposer::VsyncSource vsyncSource = ISurfaceComposer::eVsyncSourceApp, + ISurfaceComposer::ConfigChanged configChanged = ISurfaceComposer::eConfigChangedSuppress); status_t initialize(); void dispose(); diff --git a/libs/hwui/renderthread/CanvasContext.cpp b/libs/hwui/renderthread/CanvasContext.cpp index f326ce8d23e9..9898a1c30856 100644 --- a/libs/hwui/renderthread/CanvasContext.cpp +++ b/libs/hwui/renderthread/CanvasContext.cpp @@ -148,7 +148,8 @@ void CanvasContext::setSurface(sp<Surface>&& surface) { if (surface) { mNativeSurface = new ReliableSurface{std::move(surface)}; - mNativeSurface->setDequeueTimeout(500_ms); + // TODO: Fix error handling & re-shorten timeout + mNativeSurface->setDequeueTimeout(4000_ms); } else { mNativeSurface = nullptr; } diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp index 41cb8fdc66bd..71c5b53f727a 100644 --- a/libs/hwui/renderthread/RenderThread.cpp +++ b/libs/hwui/renderthread/RenderThread.cpp @@ -156,7 +156,9 @@ void RenderThread::initializeDisplayEventReceiver() { LOG_ALWAYS_FATAL_IF(mVsyncSource, "Initializing a second DisplayEventReceiver?"); if (!Properties::isolatedProcess) { - auto receiver = std::make_unique<DisplayEventReceiver>(); + auto receiver = std::make_unique<DisplayEventReceiver>( + ISurfaceComposer::eVsyncSourceApp, + ISurfaceComposer::eConfigChangedDispatch); status_t status = receiver->initCheck(); LOG_ALWAYS_FATAL_IF(status != NO_ERROR, "Initialization of DisplayEventReceiver " |