19 #ifndef MIRAL_WINDOW_SPECIFICATION_H
20 #define MIRAL_WINDOW_SPECIFICATION_H
33 namespace scene {
class Surface;
struct SurfaceCreationParameters; }
34 namespace shell {
struct SurfaceSpecification; }
40 namespace detail {
struct SessionsBufferStreamIdTag; }
60 void update(mir::scene::SurfaceCreationParameters& params)
const;
65 auto size() const ->
mir::optional_value<
Size> const&;
66 auto name() const ->
mir::optional_value<std::
string> const&;
67 auto output_id() const ->
mir::optional_value<
int> const&;
75 auto aux_rect_placement_offset() const ->
mir::optional_value<
Displacement> const&;
76 auto min_width() const ->
mir::optional_value<
Width> const&;
77 auto min_height() const ->
mir::optional_value<
Height> const&;
78 auto max_width() const ->
mir::optional_value<
Width> const&;
79 auto max_height() const ->
mir::optional_value<
Height> const&;
80 auto width_inc() const ->
mir::optional_value<
DeltaX> const&;
81 auto height_inc() const ->
mir::optional_value<
DeltaY> const&;
85 auto parent() const ->
mir::optional_value<std::weak_ptr<
mir::scene::Surface>> const&;
86 auto input_shape() const ->
mir::optional_value<std::vector<
Rectangle>> const&;
90 auto userdata() const ->
mir::optional_value<std::shared_ptr<
void>> const&;
92 auto top_left() ->
mir::optional_value<
Point>&;
97 auto size() ->
mir::optional_value<
Size>&;
98 auto name() ->
mir::optional_value<std::
string>&;
99 auto output_id() ->
mir::optional_value<
int>&;
123 auto parent() ->
mir::optional_value<std::weak_ptr<
mir::scene::Surface>>&;
128 auto userdata() ->
mir::optional_value<std::shared_ptr<
void>>&;
150 auto exclusive_rect() const ->
mir::optional_value<
mir::optional_value<
mir::geometry::
Rectangle>> const&;
157 auto application_id() const ->
mir::optional_value<std::
string> const&;
158 auto application_id() ->
mir::optional_value<std::
string>&;
164 auto server_side_decorated() const ->
mir::optional_value<
bool> const&;
165 auto server_side_decorated() ->
mir::optional_value<
bool>&;
170 std::unique_ptr<Self> self;
174 #endif //MIRAL_WINDOW_SPECIFICATION_H