diff options
author | Kazumasa Mitsunari <knimitz@witz-inc.co.jp> | 2018-07-13 14:21:52 +0900 |
---|---|---|
committer | Kazumasa Mitsunari <knimitz@witz-inc.co.jp> | 2018-07-13 14:21:52 +0900 |
commit | 0abcfccdd2758da6015404c3b06126ec85e96eb2 (patch) | |
tree | 52a479657540476525da50f56daa05a562e87376 /src | |
parent | 085cebcb1edf2ec8ac2e7ef8312f038ce3b28750 (diff) |
Call runners
Change-Id: I571229727772420bfa4c323cb4e1848e0970d1ee
Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
Diffstat (limited to 'src')
-rw-r--r-- | src/window_manager.cpp | 20 | ||||
-rw-r--r-- | src/window_manager.hpp | 4 |
2 files changed, 17 insertions, 7 deletions
diff --git a/src/window_manager.cpp b/src/window_manager.cpp index 654d4b5..a57f021 100644 --- a/src/window_manager.cpp +++ b/src/window_manager.cpp @@ -694,12 +694,6 @@ void WindowManager::surface_created(uint32_t surface_id) this->controller->layers[*layer_id]->add_surface(surface_id); this->layout_commit(); - - // search pid from surfaceID - - // pick up appid from pid from application manager - - // check appid then add it to the client } void WindowManager::surface_removed(uint32_t surface_id) @@ -708,6 +702,20 @@ void WindowManager::surface_removed(uint32_t surface_id) g_app_list.removeSurface(surface_id); } +void WindowManager::surface_properties(unsigned surface_id, unsigned pid) +{ + HMI_DEBUG("wm", "get surface properties"); + // search pid from surfaceID + json_object *response; + afb_service_call_sync("afm-main", "runners", nullptr, &response); + + // pick up appid from pid from application manager + std::string appid; + + // check appid then add it to the client + g_app_list.addFloatingSurface(appid, surface_id, pid); +} + void WindowManager::removeClient(const std::string &appid) { HMI_DEBUG("wm", "Remove clinet %s from list", appid.c_str()); diff --git a/src/window_manager.hpp b/src/window_manager.hpp index 717b947..7fbd43e 100644 --- a/src/window_manager.hpp +++ b/src/window_manager.hpp @@ -224,8 +224,10 @@ class WindowManager // Events from the compositor we are interested in void surface_created(uint32_t surface_id); void surface_removed(uint32_t surface_id); + void surface_properties(uint32_t surface_id, uint32_t pid); - void removeClient(const std::string &appid); + void + removeClient(const std::string &appid); void exceptionProcessForTransition(); // Do not use these functions |