Fix Window Manager crush when application terminated
[apps/agl-service-windowmanager.git] / src / wm_layer.hpp
index 4002c4b..a6a359e 100644 (file)
@@ -42,6 +42,9 @@ class LayerState
     void removeLayer(unsigned layer);
     void setArea(const std::string& app, const std::string& area);
 
+    // Debug
+    void dump();
+
   private:
     std::vector<unsigned> render_order;
     std::unordered_map<std::string, std::string> area2appid;
@@ -67,15 +70,21 @@ class WMLayer
     const std::string& layerName();
     MANAGEMENT_TYPE    layerType() { return this->type; }
     void appendArea(const std::string& area);
-    void removeLayerID(unsigned id);
     LayerState& getLayerState() { return tmp_state; }
     WMError setLayerState(const LayerState& l);
     bool hasLayerID(unsigned id);
     bool hasRole(const std::string& role);
 
     // Manipulation
-    void addLayer(unsigned layer);
-    WMError commitChange();
+    void addLayerToState(unsigned layer);
+    void removeLayerFromState(unsigned layer);
+    void setAreaToState(const std::string& app, const std::string& area);
+    void terminateApp(unsigned layer);
+    void update();
+    void undo();
+
+    // Debug
+    void dump();
 
   private:
     LayerState tmp_state;