Mir
declarative_placement_window_manage_policy.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2014-2016 Canonical Ltd.
3  *
4  * This program is free software: you can redistribute it and/or modify it
5  * under the terms of the GNU General Public License version 2 or 3,
6  * as published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * Authored by: Robert Carr <robert.carr@canonical.com>
17  */
18 
19 #ifndef MIR_TEST_FRAMEWORK_DECLARATIVE_PLACEMENT_WINDOW_MANAGER_POLICY_H_
20 #define MIR_TEST_FRAMEWORK_DECLARATIVE_PLACEMENT_WINDOW_MANAGER_POLICY_H_
21 
23 #include "mir/geometry/rectangle.h"
24 
25 #include <memory>
26 #include <map>
27 #include <string>
28 
29 namespace mir_test_framework
30 {
31 typedef std::map<std::string, mir::geometry::Rectangle> SurfaceGeometries;
32 
38 {
39 public:
42  SurfaceGeometries const& positions_by_name);
43 
44  virtual auto place_new_window(
45  miral::ApplicationInfo const& app_info,
46  miral::WindowSpecification const& request_parameters)
47  -> miral::WindowSpecification override;
48 
49 private:
50  SurfaceGeometries const& surface_geometries_by_name;
51 };
52 
53 }
54 
55 #endif // MIR_TEST_FRAMEWORK_DECLARATIVE_PLACEMENT_WINDOW_MANAGER_POLICY_H_
std::map< std::string, mir::geometry::Rectangle > SurfaceGeometries
Definition: declarative_placement_window_manage_policy.h:31
DeclarativePlacementWindowManagerPolicy(miral::WindowManagerTools const &tools, SurfaceGeometries const &positions_by_name)
Definition: application_info.h:31
virtual auto place_new_window(miral::ApplicationInfo const &app_info, miral::WindowSpecification const &request_parameters) -> miral::WindowSpecification override
Customize initial window placement.
Definition: canonical_window_manager_policy.h:26
Definition: window_specification.h:43
DeclarativePlacementWindowManagerPolicy is a test utility server component for specifying a static li...
Definition: declarative_placement_window_manage_policy.h:37
Window management functions for querying and updating MirAL&#39;s model.
Definition: window_manager_tools.h:58
Definition: any_surface.h:25
WindowManagerTools tools
Definition: canonical_window_manager.h:55

Copyright © 2012-2018 Canonical Ltd.
Generated on Mon Feb 19 14:06:43 UTC 2018