From 8f04b30c59ebb8bd3c7d66203d91113e078ed815 Mon Sep 17 00:00:00 2001 From: Galia Peycheva Date: Tue, 27 Apr 2021 13:25:38 +0200 Subject: Add SF side tunnel mode listener This CL adds a TunnelModeStateReporter, which monitors if there are any layers with a sideband stream in SurfaceFlinger. If any of the layers have a sideband stream, it informs all the registered listeners that tunnel mode is enabled. When no layers have a sideband stream, it notifies the listeners that tunnel mode is disabled. Bug: 171457637 Test: atest TunnelModeStateListenerTest Test: atest TunnelModeStateReporterTest Change-Id: Ie54b34dbd9b6253d7142e9b0f690c8469374604d --- libs/gui/SurfaceComposerClient.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libs/gui/SurfaceComposerClient.cpp') diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp index aa938087e8..80ff653d1e 100644 --- a/libs/gui/SurfaceComposerClient.cpp +++ b/libs/gui/SurfaceComposerClient.cpp @@ -2077,6 +2077,16 @@ status_t SurfaceComposerClient::removeFpsListener(const sp& l return ComposerService::getComposerService()->removeFpsListener(listener); } +status_t SurfaceComposerClient::addTunnelModeEnabledListener( + const sp& listener) { + return ComposerService::getComposerService()->addTunnelModeEnabledListener(listener); +} + +status_t SurfaceComposerClient::removeTunnelModeEnabledListener( + const sp& listener) { + return ComposerService::getComposerService()->removeTunnelModeEnabledListener(listener); +} + bool SurfaceComposerClient::getDisplayBrightnessSupport(const sp& displayToken) { bool support = false; ComposerService::getComposerService()->getDisplayBrightnessSupport(displayToken, &support); -- cgit v1.2.3-59-g8ed1b