diff options
author | Kazumasa Mitsunari <knimitz@witz-inc.co.jp> | 2018-10-22 09:30:19 +0900 |
---|---|---|
committer | Kazumasa Mitsunari <knimitz@witz-inc.co.jp> | 2018-11-13 13:05:39 +0900 |
commit | 010ca3f3459a52e44deb5e70e94e9cd394814e3e (patch) | |
tree | 96b8cc678180df86c95f362049dc40e7ce09833b /src/wm_layer_control.hpp | |
parent | c2110a3ec8fa74f2fc37e4909db547aa4a36c851 (diff) |
Attach application to ivi-layer not to surface
Window Manager expresses the application in ivi-layer.
So for, Window Manager tied the surface and role applied
by the application. This patch associates the application
with the ivi-layer, and the role and surface are the
attributes that makes up the application.
Bug-AGL: SPEC-1818, SPEC-1635
Change-Id: Ice1e398e1db037577b0721c16da6603ec5437561
Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
Diffstat (limited to 'src/wm_layer_control.hpp')
-rw-r--r-- | src/wm_layer_control.hpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/wm_layer_control.hpp b/src/wm_layer_control.hpp index 5244bf5..25d71fd 100644 --- a/src/wm_layer_control.hpp +++ b/src/wm_layer_control.hpp @@ -63,8 +63,8 @@ class LayerControl explicit LayerControl(const std::string& root); ~LayerControl() = default; WMError init(const LayerControlCallbacks& cb); - void createLayers(); - unsigned getLayerID(const std::string& role); + void createNewLayer(unsigned id); + unsigned getNewLayerID(const std::string& role); std::shared_ptr<WMLayer> getWMLayer(unsigned layer); std::shared_ptr<WMLayer> getWMLayer(std::string layer_name); struct rect getAreaSize(const std::string& area); @@ -73,9 +73,10 @@ class LayerControl double scale(); WMError renderLayers(); WMError setXDGSurfaceOriginSize(unsigned surface); + void undoUpdate(); WMError layoutChange(const WMAction& action); WMError visibilityChange(const WMAction &action); - void addSurface(unsigned surface, unsigned layer); + void appTerminated(const std::shared_ptr<WMClient> client); // Don't use this function. void dispatchCreateEvent(ilmObjectType object, unsigned id, bool created); @@ -83,14 +84,13 @@ class LayerControl void dispatchLayerPropChangeEvent(unsigned id, struct ilmLayerProperties*, t_ilm_notification_mask); private: - WMError makeVisible(const std::shared_ptr<WMClient> client, const std::string& role); - WMError makeInvisible(const std::shared_ptr<WMClient> client, const std::string& role); - bool moveForeGround(const std::shared_ptr<WMClient> client, const std::string& role); - bool moveBackGround(const std::shared_ptr<WMClient> client, const std::string& role); + WMError makeVisible(const std::shared_ptr<WMClient> client); + WMError makeInvisible(const std::shared_ptr<WMClient> client); + bool moveForeGround(const std::shared_ptr<WMClient> client); + bool moveBackGround(const std::shared_ptr<WMClient> client); WMError loadLayerSetting(const std::string& path); WMError loadAreaDb(const std::string& path); - std::vector<unsigned> surface_bg; // For CES demo std::vector<std::shared_ptr<WMLayer>> wm_layers; std::unordered_map<unsigned, unsigned> lid2wmlid; std::unordered_map<std::string, struct rect> area2size; |