Mir
Public Member Functions | List of all members
mir::shell::WindowManagerConstructor< WMPolicy > Class Template Reference

A policy based window manager. This exists to initialize BasicWindowManager and the WMPolicy (in an awkward manner). TODO revisit this initialization sequence. More...

#include <basic_window_manager.h>

Inheritance diagram for mir::shell::WindowManagerConstructor< WMPolicy >:
[legend]

Public Member Functions

template<typename... PolicyArgs>
 WindowManagerConstructor (shell::FocusController *focus_controller, PolicyArgs &&...policy_args)
 
- Public Member Functions inherited from mir::shell::BasicWindowManager
void add_session (std::shared_ptr< scene::Session > const &session) override
 
void remove_session (std::shared_ptr< scene::Session > const &session) override
 
auto add_surface (std::shared_ptr< scene::Session > const &session, scene::SurfaceCreationParameters const &params, std::function< frontend::SurfaceId(std::shared_ptr< scene::Session > const &session, scene::SurfaceCreationParameters const &params)> const &build) -> frontend::SurfaceId override
 
void modify_surface (std::shared_ptr< scene::Session > const &session, std::shared_ptr< scene::Surface > const &surface, shell::SurfaceSpecification const &modifications) override
 
void remove_surface (std::shared_ptr< scene::Session > const &session, std::weak_ptr< scene::Surface > const &surface) override
 
void forget (std::weak_ptr< scene::Surface > const &surface) override
 
void add_display (geometry::Rectangle const &area) override
 
void remove_display (geometry::Rectangle const &area) override
 
bool handle_keyboard_event (MirKeyboardEvent const *event) override
 
bool handle_touch_event (MirTouchEvent const *event) override
 
bool handle_pointer_event (MirPointerEvent const *event) override
 
void handle_raise_surface (std::shared_ptr< scene::Session > const &session, std::shared_ptr< scene::Surface > const &surface, uint64_t timestamp) override
 
int set_surface_attribute (std::shared_ptr< scene::Session > const &, std::shared_ptr< scene::Surface > const &surface, MirSurfaceAttrib attrib, int value) override
 
auto find_session (std::function< bool(SessionInfo const &info)> const &predicate) -> std::shared_ptr< scene::Session > override
 
auto info_for (std::weak_ptr< scene::Session > const &session) const -> SessionInfo &override
 
auto info_for (std::weak_ptr< scene::Surface > const &surface) const -> SurfaceInfo &override
 
std::shared_ptr< scene::Sessionfocused_session () const override
 
std::shared_ptr< scene::Surfacefocused_surface () const override
 
void focus_next_session () override
 
void set_focus_to (std::shared_ptr< scene::Session > const &focus, std::shared_ptr< scene::Surface > const &surface) override
 
auto surface_at (geometry::Point cursor) const -> std::shared_ptr< scene::Surface > override
 
auto active_display () -> geometry::Rectangle const override
 
void raise_tree (std::shared_ptr< scene::Surface > const &root) override
 
- Public Member Functions inherited from mir::shell::WindowManager
virtual ~WindowManager ()=default
 
 WindowManager ()=default
 
 WindowManager (WindowManager const &)=delete
 
WindowManageroperator= (WindowManager const &)=delete
 

Additional Inherited Members

- Public Types inherited from mir::shell::BasicWindowManager
using SurfaceInfoMap = std::map< std::weak_ptr< scene::Surface >, SurfaceInfo, std::owner_less< std::weak_ptr< scene::Surface >>>
 
using SessionInfoMap = std::map< std::weak_ptr< scene::Session >, SessionInfo, std::owner_less< std::weak_ptr< scene::Session >>>
 
- Protected Types inherited from mir::shell::WindowManagerTools
using SurfaceInfoMap = std::map< std::weak_ptr< scene::Surface >, SurfaceInfo, std::owner_less< std::weak_ptr< scene::Surface >>>
 
using SessionInfoMap = std::map< std::weak_ptr< scene::Session >, SessionInfo, std::owner_less< std::weak_ptr< scene::Session >>>
 
- Protected Member Functions inherited from mir::shell::BasicWindowManager
 BasicWindowManager (shell::FocusController *focus_controller, std::unique_ptr< WindowManagementPolicy > policy)
 
- Protected Member Functions inherited from mir::shell::WindowManagerTools
virtual ~WindowManagerTools ()=default
 
 WindowManagerTools ()=default
 
 WindowManagerTools (WindowManagerTools const &)=delete
 
WindowManagerToolsoperator= (WindowManagerTools const &)=delete
 

Detailed Description

template<typename WMPolicy>
class mir::shell::WindowManagerConstructor< WMPolicy >

A policy based window manager. This exists to initialize BasicWindowManager and the WMPolicy (in an awkward manner). TODO revisit this initialization sequence.

Constructor & Destructor Documentation

template<typename WMPolicy >
template<typename... PolicyArgs>
mir::shell::WindowManagerConstructor< WMPolicy >::WindowManagerConstructor ( shell::FocusController focus_controller,
PolicyArgs &&...  policy_args 
)
inline

The documentation for this class was generated from the following file:

Copyright © 2012-2015 Canonical Ltd.
Generated on Thu Sep 8 14:50:19 UTC 2016