11 struct wp_presentation;
12 struct wp_presentation_feedback;
16 struct xdg_positioner;
24 enum class presentation_error : uint32_t;
25 class presentation_feedback_t;
26 struct presentation_feedback_kind;
28 enum class viewporter_error : uint32_t;
30 enum class viewport_error : uint32_t;
32 enum class xdg_wm_base_error : uint32_t;
33 class xdg_positioner_t;
34 enum class xdg_positioner_error : uint32_t;
35 enum class xdg_positioner_anchor : uint32_t;
36 enum class xdg_positioner_gravity : uint32_t;
37 struct xdg_positioner_constraint_adjustment;
39 enum class xdg_surface_error : uint32_t;
41 struct xdg_toplevel_resize_edge;
42 enum class xdg_toplevel_state : uint32_t;
44 enum class xdg_popup_error : uint32_t;
48 extern const wl_interface presentation_interface;
49 extern const wl_interface presentation_feedback_interface;
50 extern const wl_interface viewporter_interface;
51 extern const wl_interface viewport_interface;
52 extern const wl_interface xdg_wm_base_interface;
53 extern const wl_interface xdg_positioner_interface;
54 extern const wl_interface xdg_surface_interface;
55 extern const wl_interface xdg_toplevel_interface;
56 extern const wl_interface xdg_popup_interface;
78 struct events_t :
public detail::events_base_t
80 std::function<void(uint32_t)> clock_id;
83 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
94 static const std::string interface_name;
96 operator wp_presentation*()
const;
116 static constexpr std::uint32_t feedback_since_version = 1;
152 std::function<void(uint32_t)> &on_clock_id();
162 enum class presentation_error : uint32_t
165 invalid_timestamp = 0,
189 struct events_t :
public detail::events_base_t
191 std::function<void(output_t)> sync_output;
192 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, presentation_feedback_kind)> presented;
193 std::function<void()> discarded;
196 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
207 static const std::string interface_name;
209 operator wp_presentation_feedback*()
const;
224 std::function<void(output_t)> &on_sync_output();
278 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, presentation_feedback_kind)> &on_presented();
285 std::function<void()> &on_discarded();
328 : detail::bitfield<4, 1>(b) {}
330 : detail::bitfield<4, 1>(value) {}
332 static const detail::bitfield<4, 1>
vsync;
355 struct events_t :
public detail::events_base_t
359 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
370 static const std::string interface_name;
372 operator wp_viewporter*()
const;
388 static constexpr std::uint32_t get_viewport_since_version = 1;
395 enum class viewporter_error : uint32_t
470 struct events_t :
public detail::events_base_t
474 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
485 static const std::string interface_name;
487 operator wp_viewport*()
const;
508 void set_source(
double x,
double y,
double width,
double height);
512 static constexpr std::uint32_t set_source_since_version = 1;
531 void set_destination(int32_t width, int32_t height);
535 static constexpr std::uint32_t set_destination_since_version = 1;
542 enum class viewport_error : uint32_t
567 struct events_t :
public detail::events_base_t
569 std::function<void(uint32_t)> ping;
572 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
583 static const std::string interface_name;
585 operator xdg_wm_base*()
const;
598 static constexpr std::uint32_t create_positioner_since_version = 1;
620 static constexpr std::uint32_t get_xdg_surface_since_version = 1;
629 void pong(uint32_t serial);
633 static constexpr std::uint32_t pong_since_version = 1;
651 std::function<void(uint32_t)> &on_ping();
658 enum class xdg_wm_base_error : uint32_t
663 defunct_surfaces = 1,
665 not_the_topmost_popup = 2,
667 invalid_popup_parent = 3,
669 invalid_surface_state = 4,
671 invalid_positioner = 5
701 struct events_t :
public detail::events_base_t
705 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
716 static const std::string interface_name;
718 operator xdg_positioner*()
const;
731 void set_size(int32_t width, int32_t height);
735 static constexpr std::uint32_t set_size_since_version = 1;
755 void set_anchor_rect(int32_t x, int32_t y, int32_t width, int32_t height);
759 static constexpr std::uint32_t set_anchor_rect_since_version = 1;
772 void set_anchor(xdg_positioner_anchor anchor);
776 static constexpr std::uint32_t set_anchor_since_version = 1;
789 void set_gravity(xdg_positioner_gravity gravity);
793 static constexpr std::uint32_t set_gravity_since_version = 1;
817 static constexpr std::uint32_t set_constraint_adjustment_since_version = 1;
836 void set_offset(int32_t x, int32_t y);
840 static constexpr std::uint32_t set_offset_since_version = 1;
847 enum class xdg_positioner_error : uint32_t
856 enum class xdg_positioner_anchor : uint32_t
872 enum class xdg_positioner_gravity : uint32_t
903 : detail::bitfield<6, 8>(b) {}
905 : detail::bitfield<6, 8>(value) {}
906 static const detail::bitfield<6, 8> none;
907 static const detail::bitfield<6, 8> slide_x;
908 static const detail::bitfield<6, 8> slide_y;
909 static const detail::bitfield<6, 8> flip_x;
910 static const detail::bitfield<6, 8> flip_y;
911 static const detail::bitfield<6, 8> resize_x;
912 static const detail::bitfield<6, 8> resize_y;
962 struct events_t :
public detail::events_base_t
964 std::function<void(uint32_t)> configure;
967 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
978 static const std::string interface_name;
980 operator xdg_surface*()
const;
995 static constexpr std::uint32_t get_toplevel_since_version = 1;
1015 static constexpr std::uint32_t get_popup_since_version = 1;
1054 void set_window_geometry(int32_t x, int32_t y, int32_t width, int32_t height);
1058 static constexpr std::uint32_t set_window_geometry_since_version = 1;
1084 void ack_configure(uint32_t serial);
1088 static constexpr std::uint32_t ack_configure_since_version = 1;
1111 std::function<void(uint32_t)> &on_configure();
1118 enum class xdg_surface_error : uint32_t
1120 not_constructed = 1,
1121 already_constructed = 2,
1122 unconfigured_buffer = 3
1146 struct events_t :
public detail::events_base_t
1148 std::function<void(int32_t, int32_t, array_t)> configure;
1149 std::function<void()> close;
1152 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
1163 static const std::string interface_name;
1165 operator xdg_toplevel*()
const;
1192 static constexpr std::uint32_t set_parent_since_version = 1;
1206 void set_title(std::string title);
1210 static constexpr std::uint32_t set_title_since_version = 1;
1237 void set_app_id(std::string app_id);
1241 static constexpr std::uint32_t set_app_id_since_version = 1;
1262 void show_window_menu(
seat_t seat, uint32_t serial, int32_t x, int32_t y);
1266 static constexpr std::uint32_t show_window_menu_since_version = 1;
1290 void move(
seat_t seat, uint32_t serial);
1294 static constexpr std::uint32_t move_since_version = 1;
1337 static constexpr std::uint32_t resize_since_version = 1;
1379 void set_max_size(int32_t width, int32_t height);
1383 static constexpr std::uint32_t set_max_size_since_version = 1;
1425 void set_min_size(int32_t width, int32_t height);
1429 static constexpr std::uint32_t set_min_size_since_version = 1;
1455 void set_maximized();
1459 static constexpr std::uint32_t set_maximized_since_version = 1;
1486 void unset_maximized();
1490 static constexpr std::uint32_t unset_maximized_since_version = 1;
1520 void set_fullscreen(
output_t output);
1524 static constexpr std::uint32_t set_fullscreen_since_version = 1;
1546 void unset_fullscreen();
1550 static constexpr std::uint32_t unset_fullscreen_since_version = 1;
1564 void set_minimized();
1568 static constexpr std::uint32_t set_minimized_since_version = 1;
1596 std::function<void(int32_t, int32_t, array_t)> &on_configure();
1610 std::function<void()> &on_close();
1623 : detail::bitfield<4, 10>(b) {}
1625 : detail::bitfield<4, 10>(value) {}
1626 static const detail::bitfield<4, 10> none;
1627 static const detail::bitfield<4, 10> top;
1628 static const detail::bitfield<4, 10> bottom;
1629 static const detail::bitfield<4, 10> left;
1630 static const detail::bitfield<4, 10> top_left;
1631 static const detail::bitfield<4, 10> bottom_left;
1632 static const detail::bitfield<4, 10> right;
1633 static const detail::bitfield<4, 10> top_right;
1634 static const detail::bitfield<4, 10> bottom_right;
1648 enum class xdg_toplevel_state : uint32_t
1701 struct events_t :
public detail::events_base_t
1703 std::function<void(int32_t, int32_t, int32_t, int32_t)> configure;
1704 std::function<void()> popup_done;
1707 static int dispatcher(uint32_t opcode, std::vector<detail::any> args, std::shared_ptr<detail::events_base_t> e);
1718 static const std::string interface_name;
1720 operator xdg_popup*()
const;
1769 void grab(
seat_t seat, uint32_t serial);
1773 static constexpr std::uint32_t grab_since_version = 1;
1790 std::function<void(int32_t, int32_t, int32_t, int32_t)> &on_configure();
1799 std::function<void()> &on_popup_done();
1806 enum class xdg_popup_error : uint32_t
create desktop-style surfaces
bitmask of flags in presented event
desktop user interface surface base interface
static const detail::bitfield< 4, 1 > vsync
presentation was vsync'd
static const detail::bitfield< 4, 1 > zero_copy
presentation was done zero-copy
presentation time feedback event
static const detail::bitfield< 4, 1 > hw_completion
hardware signalled the start of the presentation
short-lived, popup surfaces for menus
Represents a protocol object on the client side.
surface cropping and scaling
crop and scale interface to a wl_surface
static const detail::bitfield< 4, 1 > hw_clock
hardware provided the presentation timestamp
timed presentation related wl_surface requests