diff --git a/include/gui/SurfaceComposerClient.h b/include/gui/SurfaceComposerClient.h index bae388615..581ec8d47 100644 --- a/include/gui/SurfaceComposerClient.h +++ b/include/gui/SurfaceComposerClient.h @@ -67,6 +67,12 @@ public: // Get information about a display static status_t getDisplayInfo(const sp& display, DisplayInfo* info); + /* triggers screen off and waits for it to complete */ + static void blankDisplay(const sp& display); + + /* triggers screen on and waits for it to complete */ + static void unblankDisplay(const sp& display); + // ------------------------------------------------------------------------ // surface creation / destruction diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp index 4165d01f7..3efd086bd 100644 --- a/libs/gui/SurfaceComposerClient.cpp +++ b/libs/gui/SurfaceComposerClient.cpp @@ -552,6 +552,14 @@ status_t SurfaceComposerClient::getDisplayInfo( return ComposerService::getComposerService()->getDisplayInfo(display, info); } +void SurfaceComposerClient::blankDisplay(const sp& token) { + ComposerService::getComposerService()->blank(token); +} + +void SurfaceComposerClient::unblankDisplay(const sp& token) { + ComposerService::getComposerService()->unblank(token); +} + // ---------------------------------------------------------------------------- ScreenshotClient::ScreenshotClient()