|
Mir
|
The interface through which the window management policy is determined. More...
#include <window_management_policy.h>
Classes | |
| class | ApplicationZoneAddendum |
| Handle additional requests related to application zones. More... | |
Public Member Functions | |
| virtual void | advise_begin () |
| before any related calls begin More... | |
| virtual void | advise_end () |
| after any related calls end More... | |
| virtual auto | place_new_window (ApplicationInfo const &app_info, WindowSpecification const &requested_specification) -> WindowSpecification=0 |
| Customize initial window placement. More... | |
| virtual auto | confirm_inherited_move (WindowInfo const &window_info, Displacement movement) -> Rectangle=0 |
| Confirm (and optionally adjust) the motion of a child window when the parent is moved. More... | |
| virtual | ~WindowManagementPolicy ()=default |
| WindowManagementPolicy ()=default | |
| WindowManagementPolicy (WindowManagementPolicy const &)=delete | |
| WindowManagementPolicy & | operator= (WindowManagementPolicy const &)=delete |
handle events originating from the client | |
The policy is expected to update the model as appropriate | |
| virtual void | handle_window_ready (WindowInfo &window_info)=0 |
| notification that the first buffer has been posted More... | |
| virtual void | handle_modify_window (WindowInfo &window_info, WindowSpecification const &modifications)=0 |
| request from client to modify the window specification. More... | |
| virtual void | handle_raise_window (WindowInfo &window_info)=0 |
| request from client to raise the window More... | |
| virtual auto | confirm_placement_on_display (WindowInfo const &window_info, MirWindowState new_state, Rectangle const &new_placement) -> Rectangle=0 |
| Confirm (and optionally adjust) the placement of a window on the display. More... | |
handle events originating from user | |
The policy is expected to interpret (and optionally consume) the event | |
| 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... | |
notification of WM events that the policy may need to track. | |
| 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_focus_gained (WindowInfo const &window_info) |
| Notification that a window has gained 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... | |
| virtual void | advise_adding_to_workspace (std::shared_ptr< Workspace > const &workspace, std::vector< Window > const &windows) |
| Notification that windows are being added to a workspace. More... | |
| virtual void | advise_removing_from_workspace (std::shared_ptr< Workspace > const &workspace, std::vector< Window > const &windows) |
| Notification that windows are being removed from a workspace. More... | |
handle requests originating from the client | |
The policy is expected to update the model as appropriate | |
| virtual void | handle_request_drag_and_drop (WindowInfo &window_info)=0 |
| request from client to initiate drag and drop More... | |
| virtual void | handle_request_move (WindowInfo &window_info, MirInputEvent const *input_event)=0 |
| request from client to initiate move More... | |
| virtual void | handle_request_resize (WindowInfo &window_info, MirInputEvent const *input_event, MirResizeEdge edge)=0 |
| request from client to initiate resize More... | |
notification of changes to the (connected, active) outputs. | |
| virtual void | advise_output_create (Output const &output) |
| virtual void | advise_output_update (Output const &updated, Output const &original) |
| virtual void | advise_output_delete (Output const &output) |
The interface through which the window management policy is determined.
|
virtualdefault |
|
default |
|
delete |
|
virtual |
Notification that windows are being added to a workspace.
These windows are ordered with parents before children, and form a single tree rooted at the first element.
| workspace | the workspace |
| windows | the windows |
|
virtual |
before any related calls begin
|
virtual |
Notification that an application has disconnected.
| application | the application |
Reimplemented in TilingWindowManagerPolicy.
|
virtual |
Notification that a window is about to be destroyed.
| window_info | the window |
|
virtual |
after any related calls end
Reimplemented in TilingWindowManagerPolicy.
|
virtual |
Notification that a window has gained focus.
| window_info | the window |
Reimplemented in miral::MinimalWindowManager, miral::CanonicalWindowManagerPolicy, TilingWindowManagerPolicy, FloatingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
virtual |
Notification that a window has lost focus.
| window_info | the window |
|
virtual |
Notification that a window is about to move.
| window_info | the window |
| top_left | the new position |
|
virtual |
Notification that a new application has connected.
| application | the application |
Reimplemented in TilingWindowManagerPolicy.
|
virtual |
Notification that a window has been created.
| window_info | the window |
Reimplemented in TilingWindowManagerPolicy, and FloatingWindowManagerPolicy.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Notification that windows are being raised to the top.
These windows are ordered with parents before children, and form a single tree rooted at the first element.
| windows | the windows |
|
virtual |
Notification that windows are being removed from a workspace.
These windows are ordered with parents before children, and form a single tree rooted at the first element.
| workspace | the workspace |
| windows | the windows |
|
virtual |
Notification that a window is about to resize.
| window_info | the window |
| new_size | the new size |
|
virtual |
Notification that a window is about to change state.
| window_info | the window |
| state | the new state |
|
pure virtual |
Confirm (and optionally adjust) the motion of a child window when the parent is moved.
| window_info | the window |
| movement | the movement of the parent |
Implemented in miral::MinimalWindowManager, miral::CanonicalWindowManagerPolicy, and TilingWindowManagerPolicy.
|
pure virtual |
Confirm (and optionally adjust) the placement of a window on the display.
Called when (re)placing fullscreen, maximized, horizontally maximised and vertically maximized windows to allow adjustment for decorations.
| window_info | the window |
| new_state | the new state |
| new_placement | the suggested placement |
Implemented in miral::CanonicalWindowManagerPolicy, miral::MinimalWindowManager, TilingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
pure virtual |
keyboard event handler
| event | the event |
Implemented in TilingWindowManagerPolicy, FloatingWindowManagerPolicy, miral::MinimalWindowManager, and KioskWindowManagerPolicy.
|
pure virtual |
request from client to modify the window specification.
| window_info | the window |
| modifications | the requested changes |
Implemented in miral::MinimalWindowManager, miral::CanonicalWindowManagerPolicy, FloatingWindowManagerPolicy, TilingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
pure virtual |
pointer event handler
| event | the event |
Implemented in TilingWindowManagerPolicy, miral::MinimalWindowManager, FloatingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
pure virtual |
request from client to raise the window
| window_info | the window |
Implemented in miral::MinimalWindowManager, miral::CanonicalWindowManagerPolicy, and TilingWindowManagerPolicy.
|
pure virtual |
request from client to initiate drag and drop
| window_info | the window |
Implemented in miral::MinimalWindowManager, miral::CanonicalWindowManagerPolicy, TilingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
pure virtual |
request from client to initiate move
| window_info | the window |
| input_event | the requesting event |
Implemented in miral::MinimalWindowManager, TilingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
pure virtual |
request from client to initiate resize
| window_info | the window |
| input_event | the requesting event |
| edge | the edge(s) being dragged |
Implemented in miral::MinimalWindowManager, TilingWindowManagerPolicy, and KioskWindowManagerPolicy.
|
pure virtual |
touch event handler
| event | the event |
Implemented in TilingWindowManagerPolicy, FloatingWindowManagerPolicy, miral::MinimalWindowManager, and KioskWindowManagerPolicy.
|
pure virtual |
notification that the first buffer has been posted
| window_info | the window |
Implemented in miral::MinimalWindowManager, miral::CanonicalWindowManagerPolicy, FloatingWindowManagerPolicy, and TilingWindowManagerPolicy.
|
delete |
|
pure virtual |
Customize initial window placement.
| app_info | the application requesting a new window |
| requested_specification | the requested specification (updated with default placement) |
Implemented in FloatingWindowManagerPolicy, TilingWindowManagerPolicy, KioskWindowManagerPolicy, miral::MinimalWindowManager, and miral::CanonicalWindowManagerPolicy.
Copyright © 2012-2020
Canonical Ltd.
Generated on Fri Apr 10 09:30:49 UTC 2020
This documentation is licensed under the GPL version 2 or 3.