19 #ifndef MIR_EXAMPLE_TILING_WINDOW_MANAGER_H_
20 #define MIR_EXAMPLE_TILING_WINDOW_MANAGER_H_
34 std::vector<std::weak_ptr<scene::Surface>>
surfaces;
40 std::shared_ptr<scene::Session>
const&
session,
41 std::shared_ptr<scene::Surface>
const& surface,
75 std::shared_ptr<scene::Session>
const& session,
79 void handle_new_surface(std::shared_ptr<scene::Session>
const& session, std::shared_ptr<scene::Surface>
const& surface);
82 std::shared_ptr<scene::Session>
const& session,
83 std::shared_ptr<scene::Surface>
const& surface,
86 void handle_delete_surface(std::shared_ptr<scene::Session>
const& session, std::weak_ptr<scene::Surface>
const& surface);
99 std::shared_ptr<scene::Session>
const& session, std::shared_ptr<scene::Surface>
const& surface,
104 static const int modifier_mask =
113 std::shared_ptr<scene::Session> session_under(
geometry::Point position);
All things Mir.
Definition: atomic_callback.h:25
void handle_delete_surface(std::shared_ptr< scene::Session > const &session, std::weak_ptr< scene::Surface > const &surface)
Definition: server_example_tiling_window_manager.cpp:140
void generate_decorations_for(std::shared_ptr< scene::Session > const &session, std::shared_ptr< scene::Surface > const &surface, TilingSurfaceInfoMap &surface_info, std::function< frontend::SurfaceId(std::shared_ptr< scene::Session > const &, scene::SurfaceCreationParameters const &)> const &build)
Definition: server_example_tiling_window_manager.cpp:118
MirSurfaceState state
Definition: server_example_tiling_window_manager.h:45
Definition: server_example_tiling_window_manager.h:37
std::map< std::weak_ptr< scene::Surface >, Info, std::owner_less< std::weak_ptr< scene::Surface >>> type
Definition: server_example_basic_window_manager.h:44
A collection of rectangles (with possible duplicates).
Definition: rectangles.h:34
TilingSurfaceInfo(std::shared_ptr< scene::Session > const &session, std::shared_ptr< scene::Surface > const &surface, scene::SurfaceCreationParameters const ¶ms)
Definition: server_example_tiling_window_manager.cpp:37
bool handle_keyboard_event(MirKeyboardEvent const *event)
Definition: server_example_tiling_window_manager.cpp:249
void drag(geometry::Point cursor)
Definition: server_example_tiling_window_manager.cpp:218
Definition: server_example_tiling_window_manager.h:57
int handle_set_state(std::shared_ptr< scene::Surface > const &surface, MirSurfaceState value)
Definition: server_example_tiling_window_manager.cpp:161
std::map< std::weak_ptr< scene::Session >, Info, std::owner_less< std::weak_ptr< scene::Session >>> type
Definition: server_example_basic_window_manager.h:50
geometry::Rectangle tile
Definition: server_example_tiling_window_manager.h:33
bool handle_pointer_event(MirPointerEvent const *event)
Definition: server_example_tiling_window_manager.cpp:370
std::weak_ptr< scene::Session > session
Definition: server_example_tiling_window_manager.h:44
auto handle_place_new_surface(std::shared_ptr< scene::Session > const &session, scene::SurfaceCreationParameters const &request_parameters) -> scene::SurfaceCreationParameters
Definition: server_example_tiling_window_manager.cpp:104
typename SessionTo< TilingSessionInfo >::type TilingSessionInfoMap
Definition: server_example_tiling_window_manager.h:61
std::vector< std::weak_ptr< scene::Surface > > surfaces
Definition: server_example_tiling_window_manager.h:34
void handle_new_surface(std::shared_ptr< scene::Session > const &session, std::shared_ptr< scene::Surface > const &surface)
Definition: server_example_tiling_window_manager.cpp:126
bool handle_touch_event(MirTouchEvent const *event)
Definition: server_example_tiling_window_manager.cpp:327
void handle_modify_surface(std::shared_ptr< scene::Session > const &session, std::shared_ptr< scene::Surface > const &surface, shell::SurfaceSpecification const &modifications)
Definition: server_example_tiling_window_manager.cpp:131
TilingWindowManagerPolicy(Tools *const tools)
Definition: server_example_tiling_window_manager.cpp:47
typename SurfaceTo< TilingSurfaceInfo >::type TilingSurfaceInfoMap
Definition: server_example_tiling_window_manager.h:62
geometry::Rectangle restore_rect
Definition: server_example_tiling_window_manager.h:46
Definition: surface_creation_parameters.h:42
void click(geometry::Point cursor)
Definition: server_example_tiling_window_manager.cpp:52
Definition: rectangle.h:33
void resize(geometry::Point cursor)
Definition: server_example_tiling_window_manager.cpp:72
Specification of surface properties requested by client.
Definition: surface_specification.h:50
void handle_displays_updated(TilingSessionInfoMap &session_info, geometry::Rectangles const &displays)
Definition: server_example_tiling_window_manager.cpp:67
void handle_session_info_updated(TilingSessionInfoMap &session_info, geometry::Rectangles const &displays)
Definition: server_example_tiling_window_manager.cpp:62
Definition: server_example_tiling_window_manager.h:31