1 #ifndef WF_SEAT_SURFACE_MAP_STATE_HPP 2 #define WF_SEAT_SURFACE_MAP_STATE_HPP 3 4 #include <functional> 5 #include <wayfire/surface.hpp> 6 #include <wayfire/object.hpp> 7 8 namespace wf 9 { 10 /** 11 * Convenience class to listen for map state changes of all surfaces. 12 */ 13 struct SurfaceMapStateListener 14 { 15 public: 16 SurfaceMapStateListener(); 17 ~SurfaceMapStateListener(); 18 19 using Callback = std::function<void (wf::surface_interface_t*)>; 20 void set_callback(Callback call); 21 22 private: 23 wf::signal_callback_t on_surface_map_state_change; 24 Callback callback; 25 }; 26 } 27 28 #endif /* end of include guard: WF_SEAT_SURFACE_MAP_STATE_HPP */ 29