X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fwm_layer_control.hpp;h=7752fc45277d0899beb47363c328db7a66714989;hb=58561703d4053dfd454fe564b59215ce025c4a12;hp=db482bf57ecc739fae32b5a345ad8b6a8ddb985b;hpb=a5106227c3c9ddbe2b07fbc2ecfc4e2ae1e4de74;p=apps%2Fagl-service-windowmanager.git diff --git a/src/wm_layer_control.hpp b/src/wm_layer_control.hpp index db482bf..7752fc4 100644 --- a/src/wm_layer_control.hpp +++ b/src/wm_layer_control.hpp @@ -27,8 +27,7 @@ namespace wm { class Screen { public: - Screen(unsigned w, unsigned h); - ~Screen(); + Screen(unsigned w, unsigned h) : _width(w), _height(h){} unsigned width() { return _width; } unsigned height() { return _height; } private: @@ -54,6 +53,9 @@ class LayerControlCallbacks { class WMLayer; class LayerState; +class WMAction; +class WMClient; + class LayerControl { public: @@ -73,12 +75,16 @@ class LayerControl WMError updateLayer(LayerState& layer_state); WMError commitChange(); void undoUpdate(); + WMError layoutChange(const WMAction& action); + WMError visibilityChange(const WMAction &action); // Don't use this function. void dispatchCreateEvent(ilmObjectType object, unsigned id, bool created); void dispatchPropertyChangeEvent(unsigned id, struct ilmSurfaceProperties*, t_ilm_notification_mask); void dispatchPropertyChangeEvent(unsigned id, struct ilmLayerProperties*, t_ilm_notification_mask); private: + WMError makeVisible(const std::shared_ptr client); + WMError makeInvisible(const std::shared_ptr client); WMError loadLayerSetting(const std::string& path); WMError loadAreaDb(const std::string& path);