diff options
author | Bocklage, Jens <Jens_Bocklage@mentor.com> | 2016-11-11 10:49:52 +0100 |
---|---|---|
committer | Bocklage, Jens <Jens_Bocklage@mentor.com> | 2016-11-11 10:49:52 +0100 |
commit | 337319e30026b0bae453dc7363f27469fa2ab526 (patch) | |
tree | 6e6a50f7092a5b9941fa4b881211629ef2c2c9f7 /libhomescreen | |
parent | 0afa95451dbca6b9ef4e50d0c12a6ac17e68f87c (diff) |
Add org.agl.homescreen function renderSurfaceToAreaAllowed.
This function can be used to request, if it is allowed to render a surface in a layout area in preparation of the real renderSurfaceToArea command. This call will not change anything, it is only a request.
Signed-off-by: Bocklage, Jens <Jens_Bocklage@mentor.com>
Diffstat (limited to 'libhomescreen')
-rw-r--r-- | libhomescreen/include/libhomescreen.hpp | 3 | ||||
-rw-r--r-- | libhomescreen/src/libhomescreen.cpp | 21 |
2 files changed, 23 insertions, 1 deletions
diff --git a/libhomescreen/include/libhomescreen.hpp b/libhomescreen/include/libhomescreen.hpp index f88b35f..6ec843f 100644 --- a/libhomescreen/include/libhomescreen.hpp +++ b/libhomescreen/include/libhomescreen.hpp @@ -26,10 +26,11 @@ public: int getSurfaceStatus(int surfaceId); void hardKeyPressed(int key); void renderSurfaceToArea(int surfaceId, int layoutArea); + bool renderSurfaceToAreaAllowed(int surfaceId, int layoutArea); void requestSurfaceIdToFullScreen(int surfaceId); - private: LibHomeScreenHomescreen *mp_libHomeScreenHomescreen_Proxy; }; #endif // LIBHOMESCREEN_HPP + diff --git a/libhomescreen/src/libhomescreen.cpp b/libhomescreen/src/libhomescreen.cpp index 374cfe8..03c4baf 100644 --- a/libhomescreen/src/libhomescreen.cpp +++ b/libhomescreen/src/libhomescreen.cpp @@ -122,6 +122,27 @@ void LibHomeScreen::renderSurfaceToArea(int surfaceId, int layoutArea) } } +bool LibHomeScreen::renderSurfaceToAreaAllowed(int surfaceId, int layoutArea) +{ + gboolean result = true; + GError *err = NULL; + + lib_home_screen_homescreen_call_render_surface_to_area_allowed_sync( + mp_libHomeScreenHomescreen_Proxy, + surfaceId, + layoutArea, + &result, + NULL, + &err); + + if (NULL != err) + { + fprintf(stderr, "Unable to call renderSurfaceToArea: %s\n", err->message); + } + + return result; +} + void LibHomeScreen::requestSurfaceIdToFullScreen(int surfaceId) { GError *err = NULL; |