Go to the documentation of this file.
19 #ifndef MIRAL_WINDOW_MANAGEMENT_POLICY_H
20 #define MIRAL_WINDOW_MANAGEMENT_POLICY_H
31 class WindowSpecification;
32 struct ApplicationInfo;
50 virtual void advise_begin();
53 virtual void advise_end();
61 virtual auto place_new_window(
72 virtual void handle_window_ready(
WindowInfo& window_info) = 0;
87 virtual void handle_raise_window(
WindowInfo& window_info) = 0;
99 virtual auto confirm_placement_on_display(
120 virtual bool handle_touch_event(
MirTouchEvent const* event) = 0;
150 virtual void advise_new_window(
WindowInfo const& window_info);
156 virtual void advise_focus_lost(
WindowInfo const& window_info);
162 virtual void advise_focus_gained(
WindowInfo const& window_info);
176 virtual void advise_move_to(
WindowInfo const& window_info,
Point top_left);
183 virtual void advise_resize(
WindowInfo const& window_info,
Size const& new_size);
189 virtual void advise_delete_window(
WindowInfo const& window_info);
198 virtual void advise_raise(std::vector<Window>
const& windows);
211 virtual void advise_adding_to_workspace(
212 std::shared_ptr<Workspace>
const& workspace,
213 std::vector<Window>
const& windows);
222 virtual void advise_removing_from_workspace(
223 std::shared_ptr<Workspace>
const& workspace,
224 std::vector<Window>
const& windows);
235 virtual void handle_request_drag_and_drop(
WindowInfo& window_info) = 0;
257 virtual void advise_output_create(
Output const& output);
258 virtual void advise_output_update(
Output const& updated,
Output const& original);
259 virtual void advise_output_delete(
Output const& output);
304 virtual void advise_application_zone_create(
Zone const& application_zone);
305 virtual void advise_application_zone_update(
Zone const& updated,
Zone const& original);
306 virtual void advise_application_zone_delete(
Zone const& application_zone);
315 #endif //MIRAL_WINDOW_MANAGEMENT_POLICY_H
Mir Abstraction Layer.
Definition: floating_window_manager.h:29
Definition: application_info.h:31
Definition: window_specification.h:43
Definition: rectangle.h:33
Handle additional requests related to application zones.
Definition: window_management_policy.h:284
The interface through which the window management policy is determined.
Definition: window_management_policy.h:46
Basic geometry types. Types for dimensions, displacements, etc. and the operations that they support.
Definition: dimensions.h:30
Definition: displacement.h:33
Definition: window_info.h:32
A rectangular area of the display. Not tied to a specific output.
Definition: zone.h:35
Definition: wayland_helpers.h:36
Copyright © 2012-2021
Canonical Ltd.
Generated on Thu Nov 25 02:27:04 UTC 2021
This documentation is licensed under the GPL version 2 or 3.