Mir
Public Member Functions | Protected Attributes | List of all members
miral::CanonicalWindowManagerPolicy Class Reference

Widely accepted defaults for window management. More...

#include <canonical_window_manager.h>

Inheritance diagram for miral::CanonicalWindowManagerPolicy:
[legend]

Public Member Functions

 CanonicalWindowManagerPolicy (WindowManagerTools const &tools)
 
virtual auto place_new_window (ApplicationInfo const &app_info, WindowSpecification const &request_parameters) -> WindowSpecification override
 Customize initial window placement. More...
 
void handle_window_ready (WindowInfo &window_info) override
 Tries to focus on the newly ready window. More...
 
void handle_modify_window (WindowInfo &window_info, WindowSpecification const &modifications) override
 Applies the requested modifications. More...
 
void handle_raise_window (WindowInfo &window_info) override
 Tries to focus on the newly ready window. More...
 
void advise_focus_gained (WindowInfo const &info) override
 Raises the window (and any children) More...
 
auto confirm_inherited_move (WindowInfo const &window_info, Displacement movement) -> Rectangle override
 Move the child window with the parent. More...
 
- Public Member Functions inherited from miral::WindowManagementPolicy
virtual void advise_begin ()
 before any related calls begin More...
 
virtual void advise_end ()
 after any related calls end More...
 
virtual ~WindowManagementPolicy ()=default
 
 WindowManagementPolicy ()=default
 
 WindowManagementPolicy (WindowManagementPolicy const &)=delete
 
WindowManagementPolicyoperator= (WindowManagementPolicy const &)=delete
 
virtual bool handle_keyboard_event (MirKeyboardEvent const *event)=0
 keyboard event handler More...
 
virtual bool handle_touch_event (MirTouchEvent const *event)=0
 touch event handler More...
 
virtual bool handle_pointer_event (MirPointerEvent const *event)=0
 pointer event handler More...
 
virtual void advise_new_app (ApplicationInfo &application)
 Notification that a new application has connected. More...
 
virtual void advise_delete_app (ApplicationInfo const &application)
 Notification that an application has disconnected. More...
 
virtual void advise_new_window (WindowInfo const &window_info)
 Notification that a window has been created. More...
 
virtual void advise_focus_lost (WindowInfo const &window_info)
 Notification that a window has lost focus. More...
 
virtual void advise_state_change (WindowInfo const &window_info, MirWindowState state)
 Notification that a window is about to change state. More...
 
virtual void advise_move_to (WindowInfo const &window_info, Point top_left)
 Notification that a window is about to move. More...
 
virtual void advise_resize (WindowInfo const &window_info, Size const &new_size)
 Notification that a window is about to resize. More...
 
virtual void advise_delete_window (WindowInfo const &window_info)
 Notification that a window is about to be destroyed. More...
 
virtual void advise_raise (std::vector< Window > const &windows)
 Notification that windows are being raised to the top. More...
 

Protected Attributes

WindowManagerTools tools
 

Detailed Description

Widely accepted defaults for window management.

Constructor & Destructor Documentation

◆ CanonicalWindowManagerPolicy()

miral::CanonicalWindowManagerPolicy::CanonicalWindowManagerPolicy ( WindowManagerTools const &  tools)
explicit

Member Function Documentation

◆ advise_focus_gained()

void miral::CanonicalWindowManagerPolicy::advise_focus_gained ( WindowInfo const &  info)
overridevirtual

Raises the window (and any children)

Reimplemented from miral::WindowManagementPolicy.

◆ confirm_inherited_move()

auto miral::CanonicalWindowManagerPolicy::confirm_inherited_move ( WindowInfo const &  window_info,
Displacement  movement 
) -> Rectangle
overridevirtual

Move the child window with the parent.

Implements miral::WindowManagementPolicy.

◆ handle_modify_window()

void miral::CanonicalWindowManagerPolicy::handle_modify_window ( WindowInfo window_info,
WindowSpecification const &  modifications 
)
overridevirtual

Applies the requested modifications.

Implements miral::WindowManagementPolicy.

◆ handle_raise_window()

void miral::CanonicalWindowManagerPolicy::handle_raise_window ( WindowInfo window_info)
overridevirtual

Tries to focus on the newly ready window.

Implements miral::WindowManagementPolicy.

◆ handle_window_ready()

void miral::CanonicalWindowManagerPolicy::handle_window_ready ( WindowInfo window_info)
overridevirtual

Tries to focus on the newly ready window.

Implements miral::WindowManagementPolicy.

◆ place_new_window()

virtual auto miral::CanonicalWindowManagerPolicy::place_new_window ( ApplicationInfo const &  app_info,
WindowSpecification const &  requested_specification 
) -> WindowSpecification
overridevirtual

Customize initial window placement.

Parameters
app_infothe application requesting a new window
requested_specificationthe requested specification (updated with default placement)
Returns
the customized specification

Implements miral::WindowManagementPolicy.

Reimplemented in FloatingWindowManagerPolicy, mir_test_framework::DeclarativePlacementWindowManagerPolicy, and KioskWindowManagerPolicy.

Member Data Documentation

◆ tools

WindowManagerTools miral::CanonicalWindowManagerPolicy::tools
protected

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

Copyright © 2012-2017 Canonical Ltd.
Generated on Mon Oct 30 19:44:55 UTC 2017