Wayland++  1.0.0
C++ Bindings for Wayland
wayland-client-protocol-unstable.hpp
1 #pragma once
2 
3 #include <array>
4 #include <cstdint>
5 #include <functional>
6 #include <memory>
7 #include <string>
8 #include <vector>
9 
10 #include <wayland-client.hpp>
11 #include <wayland-client-protocol-extra.hpp>
12 
13 struct zwp_fullscreen_shell_v1;
14 struct zwp_fullscreen_shell_mode_feedback_v1;
15 struct zwp_idle_inhibit_manager_v1;
16 struct zwp_idle_inhibitor_v1;
17 struct zwp_input_method_context_v1;
18 struct zwp_input_method_v1;
19 struct zwp_input_panel_v1;
20 struct zwp_input_panel_surface_v1;
21 struct zwp_input_timestamps_manager_v1;
22 struct zwp_input_timestamps_v1;
23 struct zwp_keyboard_shortcuts_inhibit_manager_v1;
24 struct zwp_keyboard_shortcuts_inhibitor_v1;
25 struct zwp_linux_dmabuf_v1;
26 struct zwp_linux_buffer_params_v1;
27 struct zwp_linux_dmabuf_feedback_v1;
28 struct zwp_linux_explicit_synchronization_v1;
29 struct zwp_linux_surface_synchronization_v1;
30 struct zwp_linux_buffer_release_v1;
31 struct zwp_pointer_constraints_v1;
32 struct zwp_locked_pointer_v1;
33 struct zwp_confined_pointer_v1;
34 struct zwp_pointer_gestures_v1;
35 struct zwp_pointer_gesture_swipe_v1;
36 struct zwp_pointer_gesture_pinch_v1;
37 struct zwp_pointer_gesture_hold_v1;
38 struct zwp_primary_selection_device_manager_v1;
39 struct zwp_primary_selection_device_v1;
40 struct zwp_primary_selection_offer_v1;
41 struct zwp_primary_selection_source_v1;
42 struct zwp_relative_pointer_manager_v1;
43 struct zwp_relative_pointer_v1;
44 struct zwp_tablet_manager_v1;
45 struct zwp_tablet_seat_v1;
46 struct zwp_tablet_tool_v1;
47 struct zwp_tablet_v1;
48 struct zwp_tablet_manager_v2;
49 struct zwp_tablet_seat_v2;
50 struct zwp_tablet_tool_v2;
51 struct zwp_tablet_v2;
52 struct zwp_tablet_pad_ring_v2;
53 struct zwp_tablet_pad_strip_v2;
54 struct zwp_tablet_pad_group_v2;
55 struct zwp_tablet_pad_v2;
56 struct zwp_text_input_v1;
57 struct zwp_text_input_manager_v1;
58 struct zwp_text_input_v3;
59 struct zwp_text_input_manager_v3;
60 struct xdg_activation_v1;
61 struct xdg_activation_token_v1;
62 struct zxdg_decoration_manager_v1;
63 struct zxdg_toplevel_decoration_v1;
64 struct zxdg_exporter_v1;
65 struct zxdg_importer_v1;
66 struct zxdg_exported_v1;
67 struct zxdg_imported_v1;
68 struct zxdg_exporter_v2;
69 struct zxdg_importer_v2;
70 struct zxdg_exported_v2;
71 struct zxdg_imported_v2;
72 struct zxdg_output_manager_v1;
73 struct zxdg_output_v1;
74 struct zxdg_shell_v6;
75 struct zxdg_positioner_v6;
76 struct zxdg_surface_v6;
77 struct zxdg_toplevel_v6;
78 struct zxdg_popup_v6;
79 struct zwp_xwayland_keyboard_grab_manager_v1;
80 struct zwp_xwayland_keyboard_grab_v1;
81 
82 namespace wayland
83 {
84 class zwp_fullscreen_shell_v1_t;
85 enum class zwp_fullscreen_shell_v1_capability : uint32_t;
86 enum class zwp_fullscreen_shell_v1_present_method : uint32_t;
87 enum class zwp_fullscreen_shell_v1_error : uint32_t;
88 class zwp_fullscreen_shell_mode_feedback_v1_t;
89 class zwp_idle_inhibit_manager_v1_t;
90 class zwp_idle_inhibitor_v1_t;
91 class zwp_input_method_context_v1_t;
92 class zwp_input_method_v1_t;
93 class zwp_input_panel_v1_t;
94 class zwp_input_panel_surface_v1_t;
95 enum class zwp_input_panel_surface_v1_position : uint32_t;
96 class zwp_input_timestamps_manager_v1_t;
97 class zwp_input_timestamps_v1_t;
98 class zwp_keyboard_shortcuts_inhibit_manager_v1_t;
99 enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t;
100 class zwp_keyboard_shortcuts_inhibitor_v1_t;
101 class zwp_linux_dmabuf_v1_t;
102 class zwp_linux_buffer_params_v1_t;
103 enum class zwp_linux_buffer_params_v1_error : uint32_t;
104 struct zwp_linux_buffer_params_v1_flags;
105 class zwp_linux_dmabuf_feedback_v1_t;
106 struct zwp_linux_dmabuf_feedback_v1_tranche_flags;
107 class zwp_linux_explicit_synchronization_v1_t;
108 enum class zwp_linux_explicit_synchronization_v1_error : uint32_t;
109 class zwp_linux_surface_synchronization_v1_t;
110 enum class zwp_linux_surface_synchronization_v1_error : uint32_t;
111 class zwp_linux_buffer_release_v1_t;
112 class zwp_pointer_constraints_v1_t;
113 enum class zwp_pointer_constraints_v1_error : uint32_t;
114 enum class zwp_pointer_constraints_v1_lifetime : uint32_t;
115 class zwp_locked_pointer_v1_t;
116 class zwp_confined_pointer_v1_t;
117 class zwp_pointer_gestures_v1_t;
118 class zwp_pointer_gesture_swipe_v1_t;
119 class zwp_pointer_gesture_pinch_v1_t;
120 class zwp_pointer_gesture_hold_v1_t;
121 class zwp_primary_selection_device_manager_v1_t;
122 class zwp_primary_selection_device_v1_t;
123 class zwp_primary_selection_offer_v1_t;
124 class zwp_primary_selection_source_v1_t;
125 class zwp_relative_pointer_manager_v1_t;
126 class zwp_relative_pointer_v1_t;
127 class zwp_tablet_manager_v1_t;
128 class zwp_tablet_seat_v1_t;
129 class zwp_tablet_tool_v1_t;
130 enum class zwp_tablet_tool_v1_type : uint32_t;
131 enum class zwp_tablet_tool_v1_capability : uint32_t;
132 enum class zwp_tablet_tool_v1_button_state : uint32_t;
133 enum class zwp_tablet_tool_v1_error : uint32_t;
134 class zwp_tablet_v1_t;
135 class zwp_tablet_manager_v2_t;
136 class zwp_tablet_seat_v2_t;
137 class zwp_tablet_tool_v2_t;
138 enum class zwp_tablet_tool_v2_type : uint32_t;
139 enum class zwp_tablet_tool_v2_capability : uint32_t;
140 enum class zwp_tablet_tool_v2_button_state : uint32_t;
141 enum class zwp_tablet_tool_v2_error : uint32_t;
142 class zwp_tablet_v2_t;
143 class zwp_tablet_pad_ring_v2_t;
144 enum class zwp_tablet_pad_ring_v2_source : uint32_t;
145 class zwp_tablet_pad_strip_v2_t;
146 enum class zwp_tablet_pad_strip_v2_source : uint32_t;
147 class zwp_tablet_pad_group_v2_t;
148 class zwp_tablet_pad_v2_t;
149 enum class zwp_tablet_pad_v2_button_state : uint32_t;
150 class zwp_text_input_v1_t;
151 struct zwp_text_input_v1_content_hint;
152 enum class zwp_text_input_v1_content_purpose : uint32_t;
153 enum class zwp_text_input_v1_preedit_style : uint32_t;
154 enum class zwp_text_input_v1_text_direction : uint32_t;
155 class zwp_text_input_manager_v1_t;
156 class zwp_text_input_v3_t;
157 enum class zwp_text_input_v3_change_cause : uint32_t;
158 struct zwp_text_input_v3_content_hint;
159 enum class zwp_text_input_v3_content_purpose : uint32_t;
160 class zwp_text_input_manager_v3_t;
161 class xdg_activation_v1_t;
162 class xdg_activation_token_v1_t;
163 enum class xdg_activation_token_v1_error : uint32_t;
164 class zxdg_decoration_manager_v1_t;
165 class zxdg_toplevel_decoration_v1_t;
166 enum class zxdg_toplevel_decoration_v1_error : uint32_t;
167 enum class zxdg_toplevel_decoration_v1_mode : uint32_t;
168 class zxdg_exporter_v1_t;
169 class zxdg_importer_v1_t;
170 class zxdg_exported_v1_t;
171 class zxdg_imported_v1_t;
172 class zxdg_exporter_v2_t;
173 enum class zxdg_exporter_v2_error : uint32_t;
174 class zxdg_importer_v2_t;
175 class zxdg_exported_v2_t;
176 class zxdg_imported_v2_t;
177 enum class zxdg_imported_v2_error : uint32_t;
178 class zxdg_output_manager_v1_t;
179 class zxdg_output_v1_t;
180 class zxdg_shell_v6_t;
181 enum class zxdg_shell_v6_error : uint32_t;
182 class zxdg_positioner_v6_t;
183 enum class zxdg_positioner_v6_error : uint32_t;
184 struct zxdg_positioner_v6_anchor;
185 struct zxdg_positioner_v6_gravity;
186 struct zxdg_positioner_v6_constraint_adjustment;
187 class zxdg_surface_v6_t;
188 enum class zxdg_surface_v6_error : uint32_t;
189 class zxdg_toplevel_v6_t;
190 struct zxdg_toplevel_v6_resize_edge;
191 enum class zxdg_toplevel_v6_state : uint32_t;
192 class zxdg_popup_v6_t;
193 enum class zxdg_popup_v6_error : uint32_t;
194 class zwp_xwayland_keyboard_grab_manager_v1_t;
195 class zwp_xwayland_keyboard_grab_v1_t;
196 
197 namespace detail
198 {
199  extern const wl_interface zwp_fullscreen_shell_v1_interface;
200  extern const wl_interface zwp_fullscreen_shell_mode_feedback_v1_interface;
201  extern const wl_interface zwp_idle_inhibit_manager_v1_interface;
202  extern const wl_interface zwp_idle_inhibitor_v1_interface;
203  extern const wl_interface zwp_input_method_context_v1_interface;
204  extern const wl_interface zwp_input_method_v1_interface;
205  extern const wl_interface zwp_input_panel_v1_interface;
206  extern const wl_interface zwp_input_panel_surface_v1_interface;
207  extern const wl_interface zwp_input_timestamps_manager_v1_interface;
208  extern const wl_interface zwp_input_timestamps_v1_interface;
209  extern const wl_interface zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
210  extern const wl_interface zwp_keyboard_shortcuts_inhibitor_v1_interface;
211  extern const wl_interface zwp_linux_dmabuf_v1_interface;
212  extern const wl_interface zwp_linux_buffer_params_v1_interface;
213  extern const wl_interface zwp_linux_dmabuf_feedback_v1_interface;
214  extern const wl_interface zwp_linux_explicit_synchronization_v1_interface;
215  extern const wl_interface zwp_linux_surface_synchronization_v1_interface;
216  extern const wl_interface zwp_linux_buffer_release_v1_interface;
217  extern const wl_interface zwp_pointer_constraints_v1_interface;
218  extern const wl_interface zwp_locked_pointer_v1_interface;
219  extern const wl_interface zwp_confined_pointer_v1_interface;
220  extern const wl_interface zwp_pointer_gestures_v1_interface;
221  extern const wl_interface zwp_pointer_gesture_swipe_v1_interface;
222  extern const wl_interface zwp_pointer_gesture_pinch_v1_interface;
223  extern const wl_interface zwp_pointer_gesture_hold_v1_interface;
224  extern const wl_interface zwp_primary_selection_device_manager_v1_interface;
225  extern const wl_interface zwp_primary_selection_device_v1_interface;
226  extern const wl_interface zwp_primary_selection_offer_v1_interface;
227  extern const wl_interface zwp_primary_selection_source_v1_interface;
228  extern const wl_interface zwp_relative_pointer_manager_v1_interface;
229  extern const wl_interface zwp_relative_pointer_v1_interface;
230  extern const wl_interface zwp_tablet_manager_v1_interface;
231  extern const wl_interface zwp_tablet_seat_v1_interface;
232  extern const wl_interface zwp_tablet_tool_v1_interface;
233  extern const wl_interface zwp_tablet_v1_interface;
234  extern const wl_interface zwp_tablet_manager_v2_interface;
235  extern const wl_interface zwp_tablet_seat_v2_interface;
236  extern const wl_interface zwp_tablet_tool_v2_interface;
237  extern const wl_interface zwp_tablet_v2_interface;
238  extern const wl_interface zwp_tablet_pad_ring_v2_interface;
239  extern const wl_interface zwp_tablet_pad_strip_v2_interface;
240  extern const wl_interface zwp_tablet_pad_group_v2_interface;
241  extern const wl_interface zwp_tablet_pad_v2_interface;
242  extern const wl_interface zwp_text_input_v1_interface;
243  extern const wl_interface zwp_text_input_manager_v1_interface;
244  extern const wl_interface zwp_text_input_v3_interface;
245  extern const wl_interface zwp_text_input_manager_v3_interface;
246  extern const wl_interface xdg_activation_v1_interface;
247  extern const wl_interface xdg_activation_token_v1_interface;
248  extern const wl_interface zxdg_decoration_manager_v1_interface;
249  extern const wl_interface zxdg_toplevel_decoration_v1_interface;
250  extern const wl_interface zxdg_exporter_v1_interface;
251  extern const wl_interface zxdg_importer_v1_interface;
252  extern const wl_interface zxdg_exported_v1_interface;
253  extern const wl_interface zxdg_imported_v1_interface;
254  extern const wl_interface zxdg_exporter_v2_interface;
255  extern const wl_interface zxdg_importer_v2_interface;
256  extern const wl_interface zxdg_exported_v2_interface;
257  extern const wl_interface zxdg_imported_v2_interface;
258  extern const wl_interface zxdg_output_manager_v1_interface;
259  extern const wl_interface zxdg_output_v1_interface;
260  extern const wl_interface zxdg_shell_v6_interface;
261  extern const wl_interface zxdg_positioner_v6_interface;
262  extern const wl_interface zxdg_surface_v6_interface;
263  extern const wl_interface zxdg_toplevel_v6_interface;
264  extern const wl_interface zxdg_popup_v6_interface;
265  extern const wl_interface zwp_xwayland_keyboard_grab_manager_v1_interface;
266  extern const wl_interface zwp_xwayland_keyboard_grab_v1_interface;
267 }
268 
307 {
308 private:
309  struct events_t : public detail::events_base_t
310  {
311  std::function<void(zwp_fullscreen_shell_v1_capability)> capability;
312  };
313 
314  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
315 
316  zwp_fullscreen_shell_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
317 
318 public:
320  explicit zwp_fullscreen_shell_v1_t(const proxy_t &proxy);
321  zwp_fullscreen_shell_v1_t(zwp_fullscreen_shell_v1 *p, wrapper_type t = wrapper_type::standard);
322 
323  zwp_fullscreen_shell_v1_t proxy_create_wrapper();
324 
325  static const std::string interface_name;
326 
327  operator zwp_fullscreen_shell_v1*() const;
328 
338  void release();
339 
342  static constexpr std::uint32_t release_since_version = 1;
343 
372  void present_surface(surface_t const& surface, zwp_fullscreen_shell_v1_present_method const& method, output_t const& output);
373 
376  static constexpr std::uint32_t present_surface_since_version = 1;
377 
426  zwp_fullscreen_shell_mode_feedback_v1_t present_surface_for_mode(surface_t const& surface, output_t const& output, int32_t framerate);
427 
430  static constexpr std::uint32_t present_surface_for_mode_since_version = 1;
431 
445  std::function<void(zwp_fullscreen_shell_v1_capability)> &on_capability();
446 
447 };
448 
474 enum class zwp_fullscreen_shell_v1_capability : uint32_t
475  {
477  arbitrary_modes = 1,
479  cursor_plane = 2
480 };
481 
489 enum class zwp_fullscreen_shell_v1_present_method : uint32_t
490  {
492  _default = 0,
494  center = 1,
496  zoom = 2,
498  zoom_crop = 3,
500  stretch = 4
501 };
502 
508 enum class zwp_fullscreen_shell_v1_error : uint32_t
509  {
511  invalid_method = 0,
513  role = 1
514 };
515 
516 
520 class zwp_fullscreen_shell_mode_feedback_v1_t : public proxy_t
521 {
522 private:
523  struct events_t : public detail::events_base_t
524  {
525  std::function<void()> mode_successful;
526  std::function<void()> mode_failed;
527  std::function<void()> present_cancelled;
528  };
529 
530  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
531 
532  zwp_fullscreen_shell_mode_feedback_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
533 
534 public:
535  zwp_fullscreen_shell_mode_feedback_v1_t();
536  explicit zwp_fullscreen_shell_mode_feedback_v1_t(const proxy_t &proxy);
537  zwp_fullscreen_shell_mode_feedback_v1_t(zwp_fullscreen_shell_mode_feedback_v1 *p, wrapper_type t = wrapper_type::standard);
538 
539  zwp_fullscreen_shell_mode_feedback_v1_t proxy_create_wrapper();
540 
541  static const std::string interface_name;
542 
543  operator zwp_fullscreen_shell_mode_feedback_v1*() const;
544 
555  std::function<void()> &on_mode_successful();
556 
567  std::function<void()> &on_mode_failed();
568 
579  std::function<void()> &on_present_cancelled();
580 
581 };
582 
583 
601 {
602 private:
603  struct events_t : public detail::events_base_t
604  {
605  };
606 
607  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
608 
609  zwp_idle_inhibit_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
610 
611 public:
613  explicit zwp_idle_inhibit_manager_v1_t(const proxy_t &proxy);
614  zwp_idle_inhibit_manager_v1_t(zwp_idle_inhibit_manager_v1 *p, wrapper_type t = wrapper_type::standard);
615 
616  zwp_idle_inhibit_manager_v1_t proxy_create_wrapper();
617 
618  static const std::string interface_name;
619 
620  operator zwp_idle_inhibit_manager_v1*() const;
621 
629 
632  static constexpr std::uint32_t create_inhibitor_since_version = 1;
633 
634 };
635 
636 
654 {
655 private:
656  struct events_t : public detail::events_base_t
657  {
658  };
659 
660  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
661 
662  zwp_idle_inhibitor_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
663 
664 public:
666  explicit zwp_idle_inhibitor_v1_t(const proxy_t &proxy);
667  zwp_idle_inhibitor_v1_t(zwp_idle_inhibitor_v1 *p, wrapper_type t = wrapper_type::standard);
668 
669  zwp_idle_inhibitor_v1_t proxy_create_wrapper();
670 
671  static const std::string interface_name;
672 
673  operator zwp_idle_inhibitor_v1*() const;
674 
675 };
676 
677 
706 {
707 private:
708  struct events_t : public detail::events_base_t
709  {
710  std::function<void(std::string, uint32_t, uint32_t)> surrounding_text;
711  std::function<void()> reset;
712  std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> content_type;
713  std::function<void(uint32_t, uint32_t)> invoke_action;
714  std::function<void(uint32_t)> commit_state;
715  std::function<void(std::string)> preferred_language;
716  };
717 
718  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
719 
720  zwp_input_method_context_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
721 
722 public:
724  explicit zwp_input_method_context_v1_t(const proxy_t &proxy);
725  zwp_input_method_context_v1_t(zwp_input_method_context_v1 *p, wrapper_type t = wrapper_type::standard);
726 
727  zwp_input_method_context_v1_t proxy_create_wrapper();
728 
729  static const std::string interface_name;
730 
731  operator zwp_input_method_context_v1*() const;
732 
748  void commit_string(uint32_t serial, std::string const& text);
749 
752  static constexpr std::uint32_t commit_string_since_version = 1;
753 
768  void preedit_string(uint32_t serial, std::string const& text, std::string const& commit);
769 
772  static constexpr std::uint32_t preedit_string_since_version = 1;
773 
787  void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const& style);
788 
791  static constexpr std::uint32_t preedit_styling_since_version = 1;
792 
804  void preedit_cursor(int32_t index);
805 
808  static constexpr std::uint32_t preedit_cursor_since_version = 1;
809 
820  void delete_surrounding_text(int32_t index, uint32_t length);
821 
824  static constexpr std::uint32_t delete_surrounding_text_since_version = 1;
825 
842  void cursor_position(int32_t index, int32_t anchor);
843 
846  static constexpr std::uint32_t cursor_position_since_version = 1;
847 
852  void modifiers_map(array_t const& map);
853 
856  static constexpr std::uint32_t modifiers_map_since_version = 1;
857 
871  void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const& state, uint32_t modifiers);
872 
875  static constexpr std::uint32_t keysym_since_version = 1;
876 
886 
889  static constexpr std::uint32_t grab_keyboard_since_version = 1;
890 
905  void key(uint32_t serial, uint32_t time, uint32_t key, keyboard_key_state const& state);
906 
909  static constexpr std::uint32_t key_since_version = 1;
910 
924  void modifiers(uint32_t serial, uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, uint32_t group);
925 
928  static constexpr std::uint32_t modifiers_since_version = 1;
929 
935  void language(uint32_t serial, std::string const& language);
936 
939  static constexpr std::uint32_t language_since_version = 1;
940 
946  void text_direction(uint32_t serial, uint32_t direction);
947 
950  static constexpr std::uint32_t text_direction_since_version = 1;
951 
964  std::function<void(std::string, uint32_t, uint32_t)> &on_surrounding_text();
965 
969  std::function<void()> &on_reset();
970 
976  std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> &on_content_type();
977 
983  std::function<void(uint32_t, uint32_t)> &on_invoke_action();
984 
989  std::function<void(uint32_t)> &on_commit_state();
990 
995  std::function<void(std::string)> &on_preferred_language();
996 
997 };
998 
999 
1009 {
1010 private:
1011  struct events_t : public detail::events_base_t
1012  {
1013  std::function<void(zwp_input_method_context_v1_t)> activate;
1014  std::function<void(zwp_input_method_context_v1_t)> deactivate;
1015  };
1016 
1017  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1018 
1019  zwp_input_method_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1020 
1021 public:
1023  explicit zwp_input_method_v1_t(const proxy_t &proxy);
1024  zwp_input_method_v1_t(zwp_input_method_v1 *p, wrapper_type t = wrapper_type::standard);
1025 
1026  zwp_input_method_v1_t proxy_create_wrapper();
1027 
1028  static const std::string interface_name;
1029 
1030  operator zwp_input_method_v1*() const;
1031 
1039  std::function<void(zwp_input_method_context_v1_t)> &on_activate();
1040 
1049  std::function<void(zwp_input_method_context_v1_t)> &on_deactivate();
1050 
1051 };
1052 
1053 
1060 {
1061 private:
1062  struct events_t : public detail::events_base_t
1063  {
1064  };
1065 
1066  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1067 
1068  zwp_input_panel_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1069 
1070 public:
1072  explicit zwp_input_panel_v1_t(const proxy_t &proxy);
1073  zwp_input_panel_v1_t(zwp_input_panel_v1 *p, wrapper_type t = wrapper_type::standard);
1074 
1075  zwp_input_panel_v1_t proxy_create_wrapper();
1076 
1077  static const std::string interface_name;
1078 
1079  operator zwp_input_panel_v1*() const;
1080 
1085  zwp_input_panel_surface_v1_t get_input_panel_surface(surface_t const& surface);
1086 
1089  static constexpr std::uint32_t get_input_panel_surface_since_version = 1;
1090 
1091 };
1092 
1093 
1097 class zwp_input_panel_surface_v1_t : public proxy_t
1098 {
1099 private:
1100  struct events_t : public detail::events_base_t
1101  {
1102  };
1103 
1104  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1105 
1106  zwp_input_panel_surface_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1107 
1108 public:
1109  zwp_input_panel_surface_v1_t();
1110  explicit zwp_input_panel_surface_v1_t(const proxy_t &proxy);
1111  zwp_input_panel_surface_v1_t(zwp_input_panel_surface_v1 *p, wrapper_type t = wrapper_type::standard);
1112 
1113  zwp_input_panel_surface_v1_t proxy_create_wrapper();
1114 
1115  static const std::string interface_name;
1116 
1117  operator zwp_input_panel_surface_v1*() const;
1118 
1128  void set_toplevel(output_t const& output, zwp_input_panel_surface_v1_position const& position);
1129 
1132  static constexpr std::uint32_t set_toplevel_since_version = 1;
1133 
1142  void set_overlay_panel();
1143 
1146  static constexpr std::uint32_t set_overlay_panel_since_version = 1;
1147 
1148 };
1149 
1153 enum class zwp_input_panel_surface_v1_position : uint32_t
1154  {
1155  center_bottom = 0
1156 };
1157 
1158 
1166 {
1167 private:
1168  struct events_t : public detail::events_base_t
1169  {
1170  };
1171 
1172  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1173 
1174  zwp_input_timestamps_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1175 
1176 public:
1178  explicit zwp_input_timestamps_manager_v1_t(const proxy_t &proxy);
1179  zwp_input_timestamps_manager_v1_t(zwp_input_timestamps_manager_v1 *p, wrapper_type t = wrapper_type::standard);
1180 
1181  zwp_input_timestamps_manager_v1_t proxy_create_wrapper();
1182 
1183  static const std::string interface_name;
1184 
1185  operator zwp_input_timestamps_manager_v1*() const;
1186 
1201 
1204  static constexpr std::uint32_t get_keyboard_timestamps_since_version = 1;
1205 
1220 
1223  static constexpr std::uint32_t get_pointer_timestamps_since_version = 1;
1224 
1239 
1242  static constexpr std::uint32_t get_touch_timestamps_since_version = 1;
1243 
1244 };
1245 
1246 
1255 {
1256 private:
1257  struct events_t : public detail::events_base_t
1258  {
1259  std::function<void(uint32_t, uint32_t, uint32_t)> timestamp;
1260  };
1261 
1262  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1263 
1264  zwp_input_timestamps_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1265 
1266 public:
1268  explicit zwp_input_timestamps_v1_t(const proxy_t &proxy);
1269  zwp_input_timestamps_v1_t(zwp_input_timestamps_v1 *p, wrapper_type t = wrapper_type::standard);
1270 
1271  zwp_input_timestamps_v1_t proxy_create_wrapper();
1272 
1273  static const std::string interface_name;
1274 
1275  operator zwp_input_timestamps_v1*() const;
1276 
1298  std::function<void(uint32_t, uint32_t, uint32_t)> &on_timestamp();
1299 
1300 };
1301 
1302 
1309 {
1310 private:
1311  struct events_t : public detail::events_base_t
1312  {
1313  };
1314 
1315  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1316 
1317  zwp_keyboard_shortcuts_inhibit_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1318 
1319 public:
1322  zwp_keyboard_shortcuts_inhibit_manager_v1_t(zwp_keyboard_shortcuts_inhibit_manager_v1 *p, wrapper_type t = wrapper_type::standard);
1323 
1324  zwp_keyboard_shortcuts_inhibit_manager_v1_t proxy_create_wrapper();
1325 
1326  static const std::string interface_name;
1327 
1328  operator zwp_keyboard_shortcuts_inhibit_manager_v1*() const;
1329 
1342 
1345  static constexpr std::uint32_t inhibit_shortcuts_since_version = 1;
1346 
1347 };
1348 
1352 enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t
1353  {
1355  already_inhibited = 0
1356 };
1357 
1358 
1397 {
1398 private:
1399  struct events_t : public detail::events_base_t
1400  {
1401  std::function<void()> active;
1402  std::function<void()> inactive;
1403  };
1404 
1405  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1406 
1407  zwp_keyboard_shortcuts_inhibitor_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1408 
1409 public:
1411  explicit zwp_keyboard_shortcuts_inhibitor_v1_t(const proxy_t &proxy);
1412  zwp_keyboard_shortcuts_inhibitor_v1_t(zwp_keyboard_shortcuts_inhibitor_v1 *p, wrapper_type t = wrapper_type::standard);
1413 
1414  zwp_keyboard_shortcuts_inhibitor_v1_t proxy_create_wrapper();
1415 
1416  static const std::string interface_name;
1417 
1418  operator zwp_keyboard_shortcuts_inhibitor_v1*() const;
1419 
1435  std::function<void()> &on_active();
1436 
1443  std::function<void()> &on_inactive();
1444 
1445 };
1446 
1447 
1521 {
1522 private:
1523  struct events_t : public detail::events_base_t
1524  {
1525  std::function<void(uint32_t)> format;
1526  std::function<void(uint32_t, uint32_t, uint32_t)> modifier;
1527  };
1528 
1529  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1530 
1531  zwp_linux_dmabuf_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1532 
1533 public:
1535  explicit zwp_linux_dmabuf_v1_t(const proxy_t &proxy);
1536  zwp_linux_dmabuf_v1_t(zwp_linux_dmabuf_v1 *p, wrapper_type t = wrapper_type::standard);
1537 
1538  zwp_linux_dmabuf_v1_t proxy_create_wrapper();
1539 
1540  static const std::string interface_name;
1541 
1542  operator zwp_linux_dmabuf_v1*() const;
1543 
1554 
1557  static constexpr std::uint32_t create_params_since_version = 1;
1558 
1568 
1571  static constexpr std::uint32_t get_default_feedback_since_version = 4;
1572 
1576  bool can_get_default_feedback() const;
1577 
1590 
1593  static constexpr std::uint32_t get_surface_feedback_since_version = 4;
1594 
1598  bool can_get_surface_feedback() const;
1599 
1616  std::function<void(uint32_t)> &on_format();
1617 
1648  std::function<void(uint32_t, uint32_t, uint32_t)> &on_modifier();
1649 
1650 };
1651 
1652 
1672 {
1673 private:
1674  struct events_t : public detail::events_base_t
1675  {
1676  std::function<void(buffer_t)> created;
1677  std::function<void()> failed;
1678  };
1679 
1680  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1681 
1682  zwp_linux_buffer_params_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1683 
1684 public:
1686  explicit zwp_linux_buffer_params_v1_t(const proxy_t &proxy);
1687  zwp_linux_buffer_params_v1_t(zwp_linux_buffer_params_v1 *p, wrapper_type t = wrapper_type::standard);
1688 
1689  zwp_linux_buffer_params_v1_t proxy_create_wrapper();
1690 
1691  static const std::string interface_name;
1692 
1693  operator zwp_linux_buffer_params_v1*() const;
1694 
1721  void add(int fd, uint32_t plane_idx, uint32_t offset, uint32_t stride, uint32_t modifier_hi, uint32_t modifier_lo);
1722 
1725  static constexpr std::uint32_t add_since_version = 1;
1726 
1794  void create(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const& flags);
1795 
1798  static constexpr std::uint32_t create_since_version = 1;
1799 
1832  buffer_t create_immed(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const& flags);
1833 
1836  static constexpr std::uint32_t create_immed_since_version = 2;
1837 
1841  bool can_create_immed() const;
1842 
1853  std::function<void(buffer_t)> &on_created();
1854 
1865  std::function<void()> &on_failed();
1866 
1867 };
1868 
1872 enum class zwp_linux_buffer_params_v1_error : uint32_t
1873  {
1875  already_used = 0,
1877  plane_idx = 1,
1879  plane_set = 2,
1881  incomplete = 3,
1883  invalid_format = 4,
1885  invalid_dimensions = 5,
1887  out_of_bounds = 6,
1889  invalid_wl_buffer = 7
1890 };
1891 
1895 struct zwp_linux_buffer_params_v1_flags : public wayland::detail::bitfield<3, 6>
1896 {
1897  zwp_linux_buffer_params_v1_flags(const wayland::detail::bitfield<3, 6> &b)
1898  : wayland::detail::bitfield<3, 6>(b) {}
1899  zwp_linux_buffer_params_v1_flags(const uint32_t value)
1900  : wayland::detail::bitfield<3, 6>(value) {}
1902  static const wayland::detail::bitfield<3, 6> y_invert;
1904  static const wayland::detail::bitfield<3, 6> interlaced;
1906  static const wayland::detail::bitfield<3, 6> bottom_first;
1907 };
1908 
1909 
1940 {
1941 private:
1942  struct events_t : public detail::events_base_t
1943  {
1944  std::function<void()> done;
1945  std::function<void(int, uint32_t)> format_table;
1946  std::function<void(array_t)> main_device;
1947  std::function<void()> tranche_done;
1948  std::function<void(array_t)> tranche_target_device;
1949  std::function<void(array_t)> tranche_formats;
1950  std::function<void(zwp_linux_dmabuf_feedback_v1_tranche_flags)> tranche_flags;
1951  };
1952 
1953  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1954 
1955  zwp_linux_dmabuf_feedback_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1956 
1957 public:
1959  explicit zwp_linux_dmabuf_feedback_v1_t(const proxy_t &proxy);
1960  zwp_linux_dmabuf_feedback_v1_t(zwp_linux_dmabuf_feedback_v1 *p, wrapper_type t = wrapper_type::standard);
1961 
1962  zwp_linux_dmabuf_feedback_v1_t proxy_create_wrapper();
1963 
1964  static const std::string interface_name;
1965 
1966  operator zwp_linux_dmabuf_feedback_v1*() const;
1967 
1977  std::function<void()> &on_done();
1978 
1999  std::function<void(int, uint32_t)> &on_format_table();
2000 
2029  std::function<void(array_t)> &on_main_device();
2030 
2039  std::function<void()> &on_tranche_done();
2040 
2072  std::function<void(array_t)> &on_tranche_target_device();
2073 
2103  std::function<void(array_t)> &on_tranche_formats();
2104 
2118  std::function<void(zwp_linux_dmabuf_feedback_v1_tranche_flags)> &on_tranche_flags();
2119 
2120 };
2121 
2125 struct zwp_linux_dmabuf_feedback_v1_tranche_flags : public wayland::detail::bitfield<1, 7>
2126 {
2127  zwp_linux_dmabuf_feedback_v1_tranche_flags(const wayland::detail::bitfield<1, 7> &b)
2128  : wayland::detail::bitfield<1, 7>(b) {}
2129  zwp_linux_dmabuf_feedback_v1_tranche_flags(const uint32_t value)
2130  : wayland::detail::bitfield<1, 7>(value) {}
2132  static const wayland::detail::bitfield<1, 7> scanout;
2133 };
2134 
2135 
2157 {
2158 private:
2159  struct events_t : public detail::events_base_t
2160  {
2161  };
2162 
2163  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2164 
2165  zwp_linux_explicit_synchronization_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2166 
2167 public:
2169  explicit zwp_linux_explicit_synchronization_v1_t(const proxy_t &proxy);
2170  zwp_linux_explicit_synchronization_v1_t(zwp_linux_explicit_synchronization_v1 *p, wrapper_type t = wrapper_type::standard);
2171 
2172  zwp_linux_explicit_synchronization_v1_t proxy_create_wrapper();
2173 
2174  static const std::string interface_name;
2175 
2176  operator zwp_linux_explicit_synchronization_v1*() const;
2177 
2196 
2199  static constexpr std::uint32_t get_synchronization_since_version = 1;
2200 
2201 };
2202 
2206 enum class zwp_linux_explicit_synchronization_v1_error : uint32_t
2207  {
2209  synchronization_exists = 0
2210 };
2211 
2212 
2248 {
2249 private:
2250  struct events_t : public detail::events_base_t
2251  {
2252  };
2253 
2254  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2255 
2256  zwp_linux_surface_synchronization_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2257 
2258 public:
2260  explicit zwp_linux_surface_synchronization_v1_t(const proxy_t &proxy);
2261  zwp_linux_surface_synchronization_v1_t(zwp_linux_surface_synchronization_v1 *p, wrapper_type t = wrapper_type::standard);
2262 
2263  zwp_linux_surface_synchronization_v1_t proxy_create_wrapper();
2264 
2265  static const std::string interface_name;
2266 
2267  operator zwp_linux_surface_synchronization_v1*() const;
2268 
2297  void set_acquire_fence(int fd);
2298 
2301  static constexpr std::uint32_t set_acquire_fence_since_version = 1;
2302 
2326 
2329  static constexpr std::uint32_t get_release_since_version = 1;
2330 
2331 };
2332 
2336 enum class zwp_linux_surface_synchronization_v1_error : uint32_t
2337  {
2339  invalid_fence = 0,
2341  duplicate_fence = 1,
2343  duplicate_release = 2,
2345  no_surface = 3,
2347  unsupported_buffer = 4,
2349  no_buffer = 5
2350 };
2351 
2352 
2375 {
2376 private:
2377  struct events_t : public detail::events_base_t
2378  {
2379  std::function<void(int)> fenced_release;
2380  std::function<void()> immediate_release;
2381  };
2382 
2383  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2384 
2385  zwp_linux_buffer_release_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2386 
2387 public:
2389  explicit zwp_linux_buffer_release_v1_t(const proxy_t &proxy);
2390  zwp_linux_buffer_release_v1_t(zwp_linux_buffer_release_v1 *p, wrapper_type t = wrapper_type::standard);
2391 
2392  zwp_linux_buffer_release_v1_t proxy_create_wrapper();
2393 
2394  static const std::string interface_name;
2395 
2396  operator zwp_linux_buffer_release_v1*() const;
2397 
2414  std::function<void(int)> &on_fenced_release();
2415 
2431  std::function<void()> &on_immediate_release();
2432 
2433 };
2434 
2435 
2454 {
2455 private:
2456  struct events_t : public detail::events_base_t
2457  {
2458  };
2459 
2460  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2461 
2462  zwp_pointer_constraints_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2463 
2464 public:
2466  explicit zwp_pointer_constraints_v1_t(const proxy_t &proxy);
2467  zwp_pointer_constraints_v1_t(zwp_pointer_constraints_v1 *p, wrapper_type t = wrapper_type::standard);
2468 
2469  zwp_pointer_constraints_v1_t proxy_create_wrapper();
2470 
2471  static const std::string interface_name;
2472 
2473  operator zwp_pointer_constraints_v1*() const;
2474 
2517  zwp_locked_pointer_v1_t lock_pointer(surface_t const& surface, pointer_t const& pointer, region_t const& region, zwp_pointer_constraints_v1_lifetime const& lifetime);
2518 
2521  static constexpr std::uint32_t lock_pointer_since_version = 1;
2522 
2548  zwp_confined_pointer_v1_t confine_pointer(surface_t const& surface, pointer_t const& pointer, region_t const& region, zwp_pointer_constraints_v1_lifetime const& lifetime);
2549 
2552  static constexpr std::uint32_t confine_pointer_since_version = 1;
2553 
2554 };
2555 
2562 enum class zwp_pointer_constraints_v1_error : uint32_t
2563  {
2565  already_constrained = 1
2566 };
2567 
2575 enum class zwp_pointer_constraints_v1_lifetime : uint32_t
2576  {
2577  oneshot = 1,
2578  persistent = 2
2579 };
2580 
2581 
2610 {
2611 private:
2612  struct events_t : public detail::events_base_t
2613  {
2614  std::function<void()> locked;
2615  std::function<void()> unlocked;
2616  };
2617 
2618  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2619 
2620  zwp_locked_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2621 
2622 public:
2624  explicit zwp_locked_pointer_v1_t(const proxy_t &proxy);
2625  zwp_locked_pointer_v1_t(zwp_locked_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
2626 
2627  zwp_locked_pointer_v1_t proxy_create_wrapper();
2628 
2629  static const std::string interface_name;
2630 
2631  operator zwp_locked_pointer_v1*() const;
2632 
2650  void set_cursor_position_hint(double surface_x, double surface_y);
2651 
2654  static constexpr std::uint32_t set_cursor_position_hint_since_version = 1;
2655 
2668  void set_region(region_t const& region);
2669 
2672  static constexpr std::uint32_t set_region_since_version = 1;
2673 
2679  std::function<void()> &on_locked();
2680 
2691  std::function<void()> &on_unlocked();
2692 
2693 };
2694 
2695 
2717 {
2718 private:
2719  struct events_t : public detail::events_base_t
2720  {
2721  std::function<void()> confined;
2722  std::function<void()> unconfined;
2723  };
2724 
2725  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2726 
2727  zwp_confined_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2728 
2729 public:
2731  explicit zwp_confined_pointer_v1_t(const proxy_t &proxy);
2732  zwp_confined_pointer_v1_t(zwp_confined_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
2733 
2734  zwp_confined_pointer_v1_t proxy_create_wrapper();
2735 
2736  static const std::string interface_name;
2737 
2738  operator zwp_confined_pointer_v1*() const;
2739 
2761  void set_region(region_t const& region);
2762 
2765  static constexpr std::uint32_t set_region_since_version = 1;
2766 
2773  std::function<void()> &on_confined();
2774 
2785  std::function<void()> &on_unconfined();
2786 
2787 };
2788 
2789 
2811 {
2812 private:
2813  struct events_t : public detail::events_base_t
2814  {
2815  };
2816 
2817  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2818 
2819  zwp_pointer_gestures_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2820 
2821 public:
2823  explicit zwp_pointer_gestures_v1_t(const proxy_t &proxy);
2824  zwp_pointer_gestures_v1_t(zwp_pointer_gestures_v1 *p, wrapper_type t = wrapper_type::standard);
2825 
2826  zwp_pointer_gestures_v1_t proxy_create_wrapper();
2827 
2828  static const std::string interface_name;
2829 
2830  operator zwp_pointer_gestures_v1*() const;
2831 
2840 
2843  static constexpr std::uint32_t get_swipe_gesture_since_version = 1;
2844 
2853 
2856  static constexpr std::uint32_t get_pinch_gesture_since_version = 1;
2857 
2864  void release();
2865 
2868  static constexpr std::uint32_t release_since_version = 2;
2869 
2873  bool can_release() const;
2874 
2883 
2886  static constexpr std::uint32_t get_hold_gesture_since_version = 3;
2887 
2891  bool can_get_hold_gesture() const;
2892 
2893 };
2894 
2895 
2916 {
2917 private:
2918  struct events_t : public detail::events_base_t
2919  {
2920  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
2921  std::function<void(uint32_t, double, double)> update;
2922  std::function<void(uint32_t, uint32_t, int32_t)> end;
2923  };
2924 
2925  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2926 
2927  zwp_pointer_gesture_swipe_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2928 
2929 public:
2931  explicit zwp_pointer_gesture_swipe_v1_t(const proxy_t &proxy);
2932  zwp_pointer_gesture_swipe_v1_t(zwp_pointer_gesture_swipe_v1 *p, wrapper_type t = wrapper_type::standard);
2933 
2934  zwp_pointer_gesture_swipe_v1_t proxy_create_wrapper();
2935 
2936  static const std::string interface_name;
2937 
2938  operator zwp_pointer_gesture_swipe_v1*() const;
2939 
2950  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
2951 
2964  std::function<void(uint32_t, double, double)> &on_update();
2965 
2980  std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
2981 
2982 };
2983 
2984 
3005 {
3006 private:
3007  struct events_t : public detail::events_base_t
3008  {
3009  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
3010  std::function<void(uint32_t, double, double, double, double)> update;
3011  std::function<void(uint32_t, uint32_t, int32_t)> end;
3012  };
3013 
3014  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3015 
3016  zwp_pointer_gesture_pinch_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3017 
3018 public:
3020  explicit zwp_pointer_gesture_pinch_v1_t(const proxy_t &proxy);
3021  zwp_pointer_gesture_pinch_v1_t(zwp_pointer_gesture_pinch_v1 *p, wrapper_type t = wrapper_type::standard);
3022 
3023  zwp_pointer_gesture_pinch_v1_t proxy_create_wrapper();
3024 
3025  static const std::string interface_name;
3026 
3027  operator zwp_pointer_gesture_pinch_v1*() const;
3028 
3039  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
3040 
3062  std::function<void(uint32_t, double, double, double, double)> &on_update();
3063 
3078  std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
3079 
3080 };
3081 
3082 
3105 {
3106 private:
3107  struct events_t : public detail::events_base_t
3108  {
3109  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
3110  std::function<void(uint32_t, uint32_t, int32_t)> end;
3111  };
3112 
3113  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3114 
3115  zwp_pointer_gesture_hold_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3116 
3117 public:
3119  explicit zwp_pointer_gesture_hold_v1_t(const proxy_t &proxy);
3120  zwp_pointer_gesture_hold_v1_t(zwp_pointer_gesture_hold_v1 *p, wrapper_type t = wrapper_type::standard);
3121 
3122  zwp_pointer_gesture_hold_v1_t proxy_create_wrapper();
3123 
3124  static const std::string interface_name;
3125 
3126  operator zwp_pointer_gesture_hold_v1*() const;
3127 
3137  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
3138 
3155  std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
3156 
3157 };
3158 
3159 
3169 {
3170 private:
3171  struct events_t : public detail::events_base_t
3172  {
3173  };
3174 
3175  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3176 
3177  zwp_primary_selection_device_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3178 
3179 public:
3181  explicit zwp_primary_selection_device_manager_v1_t(const proxy_t &proxy);
3182  zwp_primary_selection_device_manager_v1_t(zwp_primary_selection_device_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3183 
3184  zwp_primary_selection_device_manager_v1_t proxy_create_wrapper();
3185 
3186  static const std::string interface_name;
3187 
3188  operator zwp_primary_selection_device_manager_v1*() const;
3189 
3196 
3199  static constexpr std::uint32_t create_source_since_version = 1;
3200 
3207  zwp_primary_selection_device_v1_t get_device(seat_t const& seat);
3208 
3211  static constexpr std::uint32_t get_device_since_version = 1;
3212 
3213 };
3214 
3215 
3219 class zwp_primary_selection_device_v1_t : public proxy_t
3220 {
3221 private:
3222  struct events_t : public detail::events_base_t
3223  {
3224  std::function<void(zwp_primary_selection_offer_v1_t)> data_offer;
3225  std::function<void(zwp_primary_selection_offer_v1_t)> selection;
3226  };
3227 
3228  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3229 
3230  zwp_primary_selection_device_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3231 
3232 public:
3233  zwp_primary_selection_device_v1_t();
3234  explicit zwp_primary_selection_device_v1_t(const proxy_t &proxy);
3235  zwp_primary_selection_device_v1_t(zwp_primary_selection_device_v1 *p, wrapper_type t = wrapper_type::standard);
3236 
3237  zwp_primary_selection_device_v1_t proxy_create_wrapper();
3238 
3239  static const std::string interface_name;
3240 
3241  operator zwp_primary_selection_device_v1*() const;
3242 
3253  void set_selection(zwp_primary_selection_source_v1_t const& source, uint32_t serial);
3254 
3257  static constexpr std::uint32_t set_selection_since_version = 1;
3258 
3269  std::function<void(zwp_primary_selection_offer_v1_t)> &on_data_offer();
3270 
3285  std::function<void(zwp_primary_selection_offer_v1_t)> &on_selection();
3286 
3287 };
3288 
3289 
3300 {
3301 private:
3302  struct events_t : public detail::events_base_t
3303  {
3304  std::function<void(std::string)> offer;
3305  };
3306 
3307  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3308 
3309  zwp_primary_selection_offer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3310 
3311 public:
3313  explicit zwp_primary_selection_offer_v1_t(const proxy_t &proxy);
3314  zwp_primary_selection_offer_v1_t(zwp_primary_selection_offer_v1 *p, wrapper_type t = wrapper_type::standard);
3315 
3316  zwp_primary_selection_offer_v1_t proxy_create_wrapper();
3317 
3318  static const std::string interface_name;
3319 
3320  operator zwp_primary_selection_offer_v1*() const;
3321 
3337  void receive(std::string const& mime_type, int fd);
3338 
3341  static constexpr std::uint32_t receive_since_version = 1;
3342 
3352  std::function<void(std::string)> &on_offer();
3353 
3354 };
3355 
3356 
3365 {
3366 private:
3367  struct events_t : public detail::events_base_t
3368  {
3369  std::function<void(std::string, int)> send;
3370  std::function<void()> cancelled;
3371  };
3372 
3373  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3374 
3375  zwp_primary_selection_source_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3376 
3377 public:
3379  explicit zwp_primary_selection_source_v1_t(const proxy_t &proxy);
3380  zwp_primary_selection_source_v1_t(zwp_primary_selection_source_v1 *p, wrapper_type t = wrapper_type::standard);
3381 
3382  zwp_primary_selection_source_v1_t proxy_create_wrapper();
3383 
3384  static const std::string interface_name;
3385 
3386  operator zwp_primary_selection_source_v1*() const;
3387 
3395  void offer(std::string const& mime_type);
3396 
3399  static constexpr std::uint32_t offer_since_version = 1;
3400 
3410  std::function<void(std::string, int)> &on_send();
3411 
3418  std::function<void()> &on_cancelled();
3419 
3420 };
3421 
3422 
3430 {
3431 private:
3432  struct events_t : public detail::events_base_t
3433  {
3434  };
3435 
3436  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3437 
3438  zwp_relative_pointer_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3439 
3440 public:
3442  explicit zwp_relative_pointer_manager_v1_t(const proxy_t &proxy);
3443  zwp_relative_pointer_manager_v1_t(zwp_relative_pointer_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3444 
3445  zwp_relative_pointer_manager_v1_t proxy_create_wrapper();
3446 
3447  static const std::string interface_name;
3448 
3449  operator zwp_relative_pointer_manager_v1*() const;
3450 
3459 
3462  static constexpr std::uint32_t get_relative_pointer_since_version = 1;
3463 
3464 };
3465 
3466 
3476 {
3477 private:
3478  struct events_t : public detail::events_base_t
3479  {
3480  std::function<void(uint32_t, uint32_t, double, double, double, double)> relative_motion;
3481  };
3482 
3483  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3484 
3485  zwp_relative_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3486 
3487 public:
3489  explicit zwp_relative_pointer_v1_t(const proxy_t &proxy);
3490  zwp_relative_pointer_v1_t(zwp_relative_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
3491 
3492  zwp_relative_pointer_v1_t proxy_create_wrapper();
3493 
3494  static const std::string interface_name;
3495 
3496  operator zwp_relative_pointer_v1*() const;
3497 
3538  std::function<void(uint32_t, uint32_t, double, double, double, double)> &on_relative_motion();
3539 
3540 };
3541 
3542 
3551 {
3552 private:
3553  struct events_t : public detail::events_base_t
3554  {
3555  };
3556 
3557  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3558 
3559  zwp_tablet_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3560 
3561 public:
3563  explicit zwp_tablet_manager_v1_t(const proxy_t &proxy);
3564  zwp_tablet_manager_v1_t(zwp_tablet_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3565 
3566  zwp_tablet_manager_v1_t proxy_create_wrapper();
3567 
3568  static const std::string interface_name;
3569 
3570  operator zwp_tablet_manager_v1*() const;
3571 
3580 
3583  static constexpr std::uint32_t get_tablet_seat_since_version = 1;
3584 
3585 };
3586 
3587 
3596 {
3597 private:
3598  struct events_t : public detail::events_base_t
3599  {
3600  std::function<void(zwp_tablet_v1_t)> tablet_added;
3601  std::function<void(zwp_tablet_tool_v1_t)> tool_added;
3602  };
3603 
3604  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3605 
3606  zwp_tablet_seat_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3607 
3608 public:
3610  explicit zwp_tablet_seat_v1_t(const proxy_t &proxy);
3611  zwp_tablet_seat_v1_t(zwp_tablet_seat_v1 *p, wrapper_type t = wrapper_type::standard);
3612 
3613  zwp_tablet_seat_v1_t proxy_create_wrapper();
3614 
3615  static const std::string interface_name;
3616 
3617  operator zwp_tablet_seat_v1*() const;
3618 
3628  std::function<void(zwp_tablet_v1_t)> &on_tablet_added();
3629 
3639  std::function<void(zwp_tablet_tool_v1_t)> &on_tool_added();
3640 
3641 };
3642 
3643 
3669 {
3670 private:
3671  struct events_t : public detail::events_base_t
3672  {
3673  std::function<void(zwp_tablet_tool_v1_type)> type;
3674  std::function<void(uint32_t, uint32_t)> hardware_serial;
3675  std::function<void(uint32_t, uint32_t)> hardware_id_wacom;
3676  std::function<void(zwp_tablet_tool_v1_capability)> capability;
3677  std::function<void()> done;
3678  std::function<void()> removed;
3679  std::function<void(uint32_t, zwp_tablet_v1_t, surface_t)> proximity_in;
3680  std::function<void()> proximity_out;
3681  std::function<void(uint32_t)> down;
3682  std::function<void()> up;
3683  std::function<void(double, double)> motion;
3684  std::function<void(uint32_t)> pressure;
3685  std::function<void(uint32_t)> distance;
3686  std::function<void(int32_t, int32_t)> tilt;
3687  std::function<void(int32_t)> rotation;
3688  std::function<void(int32_t)> slider;
3689  std::function<void(int32_t, int32_t)> wheel;
3690  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> button;
3691  std::function<void(uint32_t)> frame;
3692  };
3693 
3694  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3695 
3696  zwp_tablet_tool_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3697 
3698 public:
3700  explicit zwp_tablet_tool_v1_t(const proxy_t &proxy);
3701  zwp_tablet_tool_v1_t(zwp_tablet_tool_v1 *p, wrapper_type t = wrapper_type::standard);
3702 
3703  zwp_tablet_tool_v1_t proxy_create_wrapper();
3704 
3705  static const std::string interface_name;
3706 
3707  operator zwp_tablet_tool_v1*() const;
3708 
3749  void set_cursor(uint32_t serial, surface_t const& surface, int32_t hotspot_x, int32_t hotspot_y);
3750 
3753  static constexpr std::uint32_t set_cursor_since_version = 1;
3754 
3765  std::function<void(zwp_tablet_tool_v1_type)> &on_type();
3766 
3788  std::function<void(uint32_t, uint32_t)> &on_hardware_serial();
3789 
3806  std::function<void(uint32_t, uint32_t)> &on_hardware_id_wacom();
3807 
3820  std::function<void(zwp_tablet_tool_v1_capability)> &on_capability();
3821 
3829  std::function<void()> &on_done();
3830 
3849  std::function<void()> &on_removed();
3850 
3867  std::function<void(uint32_t, zwp_tablet_v1_t, surface_t)> &on_proximity_in();
3868 
3885  std::function<void()> &on_proximity_out();
3886 
3904  std::function<void(uint32_t)> &on_down();
3905 
3926  std::function<void()> &on_up();
3927 
3935  std::function<void(double, double)> &on_motion();
3936 
3947  std::function<void(uint32_t)> &on_pressure();
3948 
3959  std::function<void(uint32_t)> &on_distance();
3960 
3971  std::function<void(int32_t, int32_t)> &on_tilt();
3972 
3981  std::function<void(int32_t)> &on_rotation();
3982 
3993  std::function<void(int32_t)> &on_slider();
3994 
4013  std::function<void(int32_t, int32_t)> &on_wheel();
4014 
4028  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> &on_button();
4029 
4039  std::function<void(uint32_t)> &on_frame();
4040 
4041 };
4042 
4056 enum class zwp_tablet_tool_v1_type : uint32_t
4057  {
4059  pen = 0x140,
4061  eraser = 0x141,
4063  brush = 0x142,
4065  pencil = 0x143,
4067  airbrush = 0x144,
4069  finger = 0x145,
4071  mouse = 0x146,
4073  lens = 0x147
4074 };
4075 
4084 enum class zwp_tablet_tool_v1_capability : uint32_t
4085  {
4087  tilt = 1,
4089  pressure = 2,
4091  distance = 3,
4093  rotation = 4,
4095  slider = 5,
4097  wheel = 6
4098 };
4099 
4105 enum class zwp_tablet_tool_v1_button_state : uint32_t
4106  {
4108  released = 0,
4110  pressed = 1
4111 };
4112 
4116 enum class zwp_tablet_tool_v1_error : uint32_t
4117  {
4119  role = 0
4120 };
4121 
4122 
4135 class zwp_tablet_v1_t : public proxy_t
4136 {
4137 private:
4138  struct events_t : public detail::events_base_t
4139  {
4140  std::function<void(std::string)> name;
4141  std::function<void(uint32_t, uint32_t)> id;
4142  std::function<void(std::string)> path;
4143  std::function<void()> done;
4144  std::function<void()> removed;
4145  };
4146 
4147  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4148 
4149  zwp_tablet_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4150 
4151 public:
4152  zwp_tablet_v1_t();
4153  explicit zwp_tablet_v1_t(const proxy_t &proxy);
4154  zwp_tablet_v1_t(zwp_tablet_v1 *p, wrapper_type t = wrapper_type::standard);
4155 
4156  zwp_tablet_v1_t proxy_create_wrapper();
4157 
4158  static const std::string interface_name;
4159 
4160  operator zwp_tablet_v1*() const;
4161 
4169  std::function<void(std::string)> &on_name();
4170 
4179  std::function<void(uint32_t, uint32_t)> &on_id();
4180 
4200  std::function<void(std::string)> &on_path();
4201 
4210  std::function<void()> &on_done();
4211 
4221  std::function<void()> &on_removed();
4222 
4223 };
4224 
4225 
4234 {
4235 private:
4236  struct events_t : public detail::events_base_t
4237  {
4238  };
4239 
4240  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4241 
4242  zwp_tablet_manager_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4243 
4244 public:
4246  explicit zwp_tablet_manager_v2_t(const proxy_t &proxy);
4247  zwp_tablet_manager_v2_t(zwp_tablet_manager_v2 *p, wrapper_type t = wrapper_type::standard);
4248 
4249  zwp_tablet_manager_v2_t proxy_create_wrapper();
4250 
4251  static const std::string interface_name;
4252 
4253  operator zwp_tablet_manager_v2*() const;
4254 
4263 
4266  static constexpr std::uint32_t get_tablet_seat_since_version = 1;
4267 
4268 };
4269 
4270 
4279 {
4280 private:
4281  struct events_t : public detail::events_base_t
4282  {
4283  std::function<void(zwp_tablet_v2_t)> tablet_added;
4284  std::function<void(zwp_tablet_tool_v2_t)> tool_added;
4285  std::function<void(zwp_tablet_pad_v2_t)> pad_added;
4286  };
4287 
4288  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4289 
4290  zwp_tablet_seat_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4291 
4292 public:
4294  explicit zwp_tablet_seat_v2_t(const proxy_t &proxy);
4295  zwp_tablet_seat_v2_t(zwp_tablet_seat_v2 *p, wrapper_type t = wrapper_type::standard);
4296 
4297  zwp_tablet_seat_v2_t proxy_create_wrapper();
4298 
4299  static const std::string interface_name;
4300 
4301  operator zwp_tablet_seat_v2*() const;
4302 
4312  std::function<void(zwp_tablet_v2_t)> &on_tablet_added();
4313 
4323  std::function<void(zwp_tablet_tool_v2_t)> &on_tool_added();
4324 
4340  std::function<void(zwp_tablet_pad_v2_t)> &on_pad_added();
4341 
4342 };
4343 
4344 
4370 {
4371 private:
4372  struct events_t : public detail::events_base_t
4373  {
4374  std::function<void(zwp_tablet_tool_v2_type)> type;
4375  std::function<void(uint32_t, uint32_t)> hardware_serial;
4376  std::function<void(uint32_t, uint32_t)> hardware_id_wacom;
4377  std::function<void(zwp_tablet_tool_v2_capability)> capability;
4378  std::function<void()> done;
4379  std::function<void()> removed;
4380  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> proximity_in;
4381  std::function<void()> proximity_out;
4382  std::function<void(uint32_t)> down;
4383  std::function<void()> up;
4384  std::function<void(double, double)> motion;
4385  std::function<void(uint32_t)> pressure;
4386  std::function<void(uint32_t)> distance;
4387  std::function<void(double, double)> tilt;
4388  std::function<void(double)> rotation;
4389  std::function<void(int32_t)> slider;
4390  std::function<void(double, int32_t)> wheel;
4391  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> button;
4392  std::function<void(uint32_t)> frame;
4393  };
4394 
4395  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4396 
4397  zwp_tablet_tool_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4398 
4399 public:
4401  explicit zwp_tablet_tool_v2_t(const proxy_t &proxy);
4402  zwp_tablet_tool_v2_t(zwp_tablet_tool_v2 *p, wrapper_type t = wrapper_type::standard);
4403 
4404  zwp_tablet_tool_v2_t proxy_create_wrapper();
4405 
4406  static const std::string interface_name;
4407 
4408  operator zwp_tablet_tool_v2*() const;
4409 
4448  void set_cursor(uint32_t serial, surface_t const& surface, int32_t hotspot_x, int32_t hotspot_y);
4449 
4452  static constexpr std::uint32_t set_cursor_since_version = 1;
4453 
4464  std::function<void(zwp_tablet_tool_v2_type)> &on_type();
4465 
4487  std::function<void(uint32_t, uint32_t)> &on_hardware_serial();
4488 
4505  std::function<void(uint32_t, uint32_t)> &on_hardware_id_wacom();
4506 
4519  std::function<void(zwp_tablet_tool_v2_capability)> &on_capability();
4520 
4528  std::function<void()> &on_done();
4529 
4548  std::function<void()> &on_removed();
4549 
4566  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> &on_proximity_in();
4567 
4584  std::function<void()> &on_proximity_out();
4585 
4603  std::function<void(uint32_t)> &on_down();
4604 
4625  std::function<void()> &on_up();
4626 
4634  std::function<void(double, double)> &on_motion();
4635 
4646  std::function<void(uint32_t)> &on_pressure();
4647 
4658  std::function<void(uint32_t)> &on_distance();
4659 
4670  std::function<void(double, double)> &on_tilt();
4671 
4680  std::function<void(double)> &on_rotation();
4681 
4692  std::function<void(int32_t)> &on_slider();
4693 
4712  std::function<void(double, int32_t)> &on_wheel();
4713 
4727  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> &on_button();
4728 
4738  std::function<void(uint32_t)> &on_frame();
4739 
4740 };
4741 
4755 enum class zwp_tablet_tool_v2_type : uint32_t
4756  {
4758  pen = 0x140,
4760  eraser = 0x141,
4762  brush = 0x142,
4764  pencil = 0x143,
4766  airbrush = 0x144,
4768  finger = 0x145,
4770  mouse = 0x146,
4772  lens = 0x147
4773 };
4774 
4783 enum class zwp_tablet_tool_v2_capability : uint32_t
4784  {
4786  tilt = 1,
4788  pressure = 2,
4790  distance = 3,
4792  rotation = 4,
4794  slider = 5,
4796  wheel = 6
4797 };
4798 
4804 enum class zwp_tablet_tool_v2_button_state : uint32_t
4805  {
4807  released = 0,
4809  pressed = 1
4810 };
4811 
4815 enum class zwp_tablet_tool_v2_error : uint32_t
4816  {
4818  role = 0
4819 };
4820 
4821 
4834 class zwp_tablet_v2_t : public proxy_t
4835 {
4836 private:
4837  struct events_t : public detail::events_base_t
4838  {
4839  std::function<void(std::string)> name;
4840  std::function<void(uint32_t, uint32_t)> id;
4841  std::function<void(std::string)> path;
4842  std::function<void()> done;
4843  std::function<void()> removed;
4844  };
4845 
4846  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4847 
4848  zwp_tablet_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4849 
4850 public:
4851  zwp_tablet_v2_t();
4852  explicit zwp_tablet_v2_t(const proxy_t &proxy);
4853  zwp_tablet_v2_t(zwp_tablet_v2 *p, wrapper_type t = wrapper_type::standard);
4854 
4855  zwp_tablet_v2_t proxy_create_wrapper();
4856 
4857  static const std::string interface_name;
4858 
4859  operator zwp_tablet_v2*() const;
4860 
4868  std::function<void(std::string)> &on_name();
4869 
4878  std::function<void(uint32_t, uint32_t)> &on_id();
4879 
4899  std::function<void(std::string)> &on_path();
4900 
4909  std::function<void()> &on_done();
4910 
4920  std::function<void()> &on_removed();
4921 
4922 };
4923 
4924 
4935 {
4936 private:
4937  struct events_t : public detail::events_base_t
4938  {
4939  std::function<void(zwp_tablet_pad_ring_v2_source)> source;
4940  std::function<void(double)> angle;
4941  std::function<void()> stop;
4942  std::function<void(uint32_t)> frame;
4943  };
4944 
4945  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4946 
4947  zwp_tablet_pad_ring_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4948 
4949 public:
4951  explicit zwp_tablet_pad_ring_v2_t(const proxy_t &proxy);
4952  zwp_tablet_pad_ring_v2_t(zwp_tablet_pad_ring_v2 *p, wrapper_type t = wrapper_type::standard);
4953 
4954  zwp_tablet_pad_ring_v2_t proxy_create_wrapper();
4955 
4956  static const std::string interface_name;
4957 
4958  operator zwp_tablet_pad_ring_v2*() const;
4959 
4985  void set_feedback(std::string const& description, uint32_t serial);
4986 
4989  static constexpr std::uint32_t set_feedback_since_version = 1;
4990 
5008  std::function<void(zwp_tablet_pad_ring_v2_source)> &on_source();
5009 
5019  std::function<void(double)> &on_angle();
5020 
5035  std::function<void()> &on_stop();
5036 
5055  std::function<void(uint32_t)> &on_frame();
5056 
5057 };
5058 
5067 enum class zwp_tablet_pad_ring_v2_source : uint32_t
5068  {
5070  finger = 1
5071 };
5072 
5073 
5084 {
5085 private:
5086  struct events_t : public detail::events_base_t
5087  {
5088  std::function<void(zwp_tablet_pad_strip_v2_source)> source;
5089  std::function<void(uint32_t)> position;
5090  std::function<void()> stop;
5091  std::function<void(uint32_t)> frame;
5092  };
5093 
5094  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5095 
5096  zwp_tablet_pad_strip_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5097 
5098 public:
5100  explicit zwp_tablet_pad_strip_v2_t(const proxy_t &proxy);
5101  zwp_tablet_pad_strip_v2_t(zwp_tablet_pad_strip_v2 *p, wrapper_type t = wrapper_type::standard);
5102 
5103  zwp_tablet_pad_strip_v2_t proxy_create_wrapper();
5104 
5105  static const std::string interface_name;
5106 
5107  operator zwp_tablet_pad_strip_v2*() const;
5108 
5134  void set_feedback(std::string const& description, uint32_t serial);
5135 
5138  static constexpr std::uint32_t set_feedback_since_version = 1;
5139 
5157  std::function<void(zwp_tablet_pad_strip_v2_source)> &on_source();
5158 
5169  std::function<void(uint32_t)> &on_position();
5170 
5185  std::function<void()> &on_stop();
5186 
5206  std::function<void(uint32_t)> &on_frame();
5207 
5208 };
5209 
5218 enum class zwp_tablet_pad_strip_v2_source : uint32_t
5219  {
5221  finger = 1
5222 };
5223 
5224 
5251 {
5252 private:
5253  struct events_t : public detail::events_base_t
5254  {
5255  std::function<void(array_t)> buttons;
5256  std::function<void(zwp_tablet_pad_ring_v2_t)> ring;
5257  std::function<void(zwp_tablet_pad_strip_v2_t)> strip;
5258  std::function<void(uint32_t)> modes;
5259  std::function<void()> done;
5260  std::function<void(uint32_t, uint32_t, uint32_t)> mode_switch;
5261  };
5262 
5263  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5264 
5265  zwp_tablet_pad_group_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5266 
5267 public:
5269  explicit zwp_tablet_pad_group_v2_t(const proxy_t &proxy);
5270  zwp_tablet_pad_group_v2_t(zwp_tablet_pad_group_v2 *p, wrapper_type t = wrapper_type::standard);
5271 
5272  zwp_tablet_pad_group_v2_t proxy_create_wrapper();
5273 
5274  static const std::string interface_name;
5275 
5276  operator zwp_tablet_pad_group_v2*() const;
5277 
5295  std::function<void(array_t)> &on_buttons();
5296 
5307  std::function<void(zwp_tablet_pad_ring_v2_t)> &on_ring();
5308 
5319  std::function<void(zwp_tablet_pad_strip_v2_t)> &on_strip();
5320 
5338  std::function<void(uint32_t)> &on_modes();
5339 
5348  std::function<void()> &on_done();
5349 
5384  std::function<void(uint32_t, uint32_t, uint32_t)> &on_mode_switch();
5385 
5386 };
5387 
5388 
5416 {
5417 private:
5418  struct events_t : public detail::events_base_t
5419  {
5420  std::function<void(zwp_tablet_pad_group_v2_t)> group;
5421  std::function<void(std::string)> path;
5422  std::function<void(uint32_t)> buttons;
5423  std::function<void()> done;
5424  std::function<void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> button;
5425  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> enter;
5426  std::function<void(uint32_t, surface_t)> leave;
5427  std::function<void()> removed;
5428  };
5429 
5430  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5431 
5432  zwp_tablet_pad_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5433 
5434 public:
5436  explicit zwp_tablet_pad_v2_t(const proxy_t &proxy);
5437  zwp_tablet_pad_v2_t(zwp_tablet_pad_v2 *p, wrapper_type t = wrapper_type::standard);
5438 
5439  zwp_tablet_pad_v2_t proxy_create_wrapper();
5440 
5441  static const std::string interface_name;
5442 
5443  operator zwp_tablet_pad_v2*() const;
5444 
5476  void set_feedback(uint32_t button, std::string const& description, uint32_t serial);
5477 
5480  static constexpr std::uint32_t set_feedback_since_version = 1;
5481 
5492  std::function<void(zwp_tablet_pad_group_v2_t)> &on_group();
5493 
5509  std::function<void(std::string)> &on_path();
5510 
5522  std::function<void(uint32_t)> &on_buttons();
5523 
5531  std::function<void()> &on_done();
5532 
5541  std::function<void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> &on_button();
5542 
5551  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> &on_enter();
5552 
5561  std::function<void(uint32_t, surface_t)> &on_leave();
5562 
5573  std::function<void()> &on_removed();
5574 
5575 };
5576 
5583 enum class zwp_tablet_pad_v2_button_state : uint32_t
5584  {
5586  released = 0,
5588  pressed = 1
5589 };
5590 
5591 
5626 {
5627 private:
5628  struct events_t : public detail::events_base_t
5629  {
5630  std::function<void(surface_t)> enter;
5631  std::function<void()> leave;
5632  std::function<void(array_t)> modifiers_map;
5633  std::function<void(uint32_t)> input_panel_state;
5634  std::function<void(uint32_t, std::string, std::string)> preedit_string;
5635  std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> preedit_styling;
5636  std::function<void(int32_t)> preedit_cursor;
5637  std::function<void(uint32_t, std::string)> commit_string;
5638  std::function<void(int32_t, int32_t)> cursor_position;
5639  std::function<void(int32_t, uint32_t)> delete_surrounding_text;
5640  std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> keysym;
5641  std::function<void(uint32_t, std::string)> language;
5642  std::function<void(uint32_t, zwp_text_input_v1_text_direction)> text_direction;
5643  };
5644 
5645  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5646 
5647  zwp_text_input_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5648 
5649 public:
5651  explicit zwp_text_input_v1_t(const proxy_t &proxy);
5652  zwp_text_input_v1_t(zwp_text_input_v1 *p, wrapper_type t = wrapper_type::standard);
5653 
5654  zwp_text_input_v1_t proxy_create_wrapper();
5655 
5656  static const std::string interface_name;
5657 
5658  operator zwp_text_input_v1*() const;
5659 
5673  void activate(seat_t const& seat, surface_t const& surface);
5674 
5677  static constexpr std::uint32_t activate_since_version = 1;
5678 
5687  void deactivate(seat_t const& seat);
5688 
5691  static constexpr std::uint32_t deactivate_since_version = 1;
5692 
5698  void show_input_panel();
5699 
5702  static constexpr std::uint32_t show_input_panel_since_version = 1;
5703 
5709  void hide_input_panel();
5710 
5713  static constexpr std::uint32_t hide_input_panel_since_version = 1;
5714 
5722  void reset();
5723 
5726  static constexpr std::uint32_t reset_since_version = 1;
5727 
5740  void set_surrounding_text(std::string const& text, uint32_t cursor, uint32_t anchor);
5741 
5744  static constexpr std::uint32_t set_surrounding_text_since_version = 1;
5745 
5759  void set_content_type(zwp_text_input_v1_content_hint const& hint, zwp_text_input_v1_content_purpose const& purpose);
5760 
5763  static constexpr std::uint32_t set_content_type_since_version = 1;
5764 
5772  void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height);
5773 
5776  static constexpr std::uint32_t set_cursor_rectangle_since_version = 1;
5777 
5790  void set_preferred_language(std::string const& language);
5791 
5794  static constexpr std::uint32_t set_preferred_language_since_version = 1;
5795 
5800  void commit_state(uint32_t serial);
5801 
5804  static constexpr std::uint32_t commit_state_since_version = 1;
5805 
5811  void invoke_action(uint32_t button, uint32_t index);
5812 
5815  static constexpr std::uint32_t invoke_action_since_version = 1;
5816 
5824  std::function<void(surface_t)> &on_enter();
5825 
5833  std::function<void()> &on_leave();
5834 
5843  std::function<void(array_t)> &on_modifiers_map();
5844 
5851  std::function<void(uint32_t)> &on_input_panel_state();
5852 
5869  std::function<void(uint32_t, std::string, std::string)> &on_preedit_string();
5870 
5885  std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> &on_preedit_styling();
5886 
5897  std::function<void(int32_t)> &on_preedit_cursor();
5898 
5912  std::function<void(uint32_t, std::string)> &on_commit_string();
5913 
5924  std::function<void(int32_t, int32_t)> &on_cursor_position();
5925 
5940  std::function<void(int32_t, uint32_t)> &on_delete_surrounding_text();
5941 
5957  std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> &on_keysym();
5958 
5967  std::function<void(uint32_t, std::string)> &on_language();
5968 
5980  std::function<void(uint32_t, zwp_text_input_v1_text_direction)> &on_text_direction();
5981 
5982 };
5983 
5990 struct zwp_text_input_v1_content_hint : public wayland::detail::bitfield<10, 23>
5991 {
5992  zwp_text_input_v1_content_hint(const wayland::detail::bitfield<10, 23> &b)
5993  : wayland::detail::bitfield<10, 23>(b) {}
5994  zwp_text_input_v1_content_hint(const uint32_t value)
5995  : wayland::detail::bitfield<10, 23>(value) {}
5997  static const wayland::detail::bitfield<10, 23> none;
5999  static const wayland::detail::bitfield<10, 23> _default;
6001  static const wayland::detail::bitfield<10, 23> password;
6003  static const wayland::detail::bitfield<10, 23> auto_completion;
6005  static const wayland::detail::bitfield<10, 23> auto_correction;
6007  static const wayland::detail::bitfield<10, 23> auto_capitalization;
6009  static const wayland::detail::bitfield<10, 23> lowercase;
6011  static const wayland::detail::bitfield<10, 23> uppercase;
6013  static const wayland::detail::bitfield<10, 23> titlecase;
6015  static const wayland::detail::bitfield<10, 23> hidden_text;
6017  static const wayland::detail::bitfield<10, 23> sensitive_data;
6019  static const wayland::detail::bitfield<10, 23> latin;
6021  static const wayland::detail::bitfield<10, 23> multiline;
6022 };
6023 
6033 enum class zwp_text_input_v1_content_purpose : uint32_t
6034  {
6036  normal = 0,
6038  alpha = 1,
6040  digits = 2,
6042  number = 3,
6044  phone = 4,
6046  url = 5,
6048  email = 6,
6050  name = 7,
6052  password = 8,
6054  date = 9,
6056  time = 10,
6058  datetime = 11,
6060  terminal = 12
6061 };
6062 
6066 enum class zwp_text_input_v1_preedit_style : uint32_t
6067  {
6069  _default = 0,
6071  none = 1,
6072  active = 2,
6073  inactive = 3,
6074  highlight = 4,
6075  underline = 5,
6076  selection = 6,
6077  incorrect = 7
6078 };
6079 
6083 enum class zwp_text_input_v1_text_direction : uint32_t
6084  {
6086  _auto = 0,
6088  ltr = 1,
6090  rtl = 2
6091 };
6092 
6093 
6100 {
6101 private:
6102  struct events_t : public detail::events_base_t
6103  {
6104  };
6105 
6106  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6107 
6108  zwp_text_input_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6109 
6110 public:
6112  explicit zwp_text_input_manager_v1_t(const proxy_t &proxy);
6113  zwp_text_input_manager_v1_t(zwp_text_input_manager_v1 *p, wrapper_type t = wrapper_type::standard);
6114 
6115  zwp_text_input_manager_v1_t proxy_create_wrapper();
6116 
6117  static const std::string interface_name;
6118 
6119  operator zwp_text_input_manager_v1*() const;
6120 
6127 
6130  static constexpr std::uint32_t create_text_input_since_version = 1;
6131 
6132 };
6133 
6134 
6166 {
6167 private:
6168  struct events_t : public detail::events_base_t
6169  {
6170  std::function<void(surface_t)> enter;
6171  std::function<void(surface_t)> leave;
6172  std::function<void(std::string, int32_t, int32_t)> preedit_string;
6173  std::function<void(std::string)> commit_string;
6174  std::function<void(uint32_t, uint32_t)> delete_surrounding_text;
6175  std::function<void(uint32_t)> done;
6176  };
6177 
6178  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6179 
6180  zwp_text_input_v3_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6181 
6182 public:
6184  explicit zwp_text_input_v3_t(const proxy_t &proxy);
6185  zwp_text_input_v3_t(zwp_text_input_v3 *p, wrapper_type t = wrapper_type::standard);
6186 
6187  zwp_text_input_v3_t proxy_create_wrapper();
6188 
6189  static const std::string interface_name;
6190 
6191  operator zwp_text_input_v3*() const;
6192 
6226  void enable();
6227 
6230  static constexpr std::uint32_t enable_since_version = 1;
6231 
6241  void disable();
6242 
6245  static constexpr std::uint32_t disable_since_version = 1;
6246 
6285  void set_surrounding_text(std::string const& text, int32_t cursor, int32_t anchor);
6286 
6289  static constexpr std::uint32_t set_surrounding_text_since_version = 1;
6290 
6310  void set_text_change_cause(zwp_text_input_v3_change_cause const& cause);
6311 
6314  static constexpr std::uint32_t set_text_change_cause_since_version = 1;
6315 
6333  void set_content_type(zwp_text_input_v3_content_hint const& hint, zwp_text_input_v3_content_purpose const& purpose);
6334 
6337  static constexpr std::uint32_t set_content_type_since_version = 1;
6338 
6364  void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height);
6365 
6368  static constexpr std::uint32_t set_cursor_rectangle_since_version = 1;
6369 
6397  void commit();
6398 
6401  static constexpr std::uint32_t commit_since_version = 1;
6402 
6416  std::function<void(surface_t)> &on_enter();
6417 
6434  std::function<void(surface_t)> &on_leave();
6435 
6461  std::function<void(std::string, int32_t, int32_t)> &on_preedit_string();
6462 
6476  std::function<void(std::string)> &on_commit_string();
6477 
6498  std::function<void(uint32_t, uint32_t)> &on_delete_surrounding_text();
6499 
6527  std::function<void(uint32_t)> &on_done();
6528 
6529 };
6530 
6536 enum class zwp_text_input_v3_change_cause : uint32_t
6537  {
6539  input_method = 0,
6541  other = 1
6542 };
6543 
6550 struct zwp_text_input_v3_content_hint : public wayland::detail::bitfield<10, 28>
6551 {
6552  zwp_text_input_v3_content_hint(const wayland::detail::bitfield<10, 28> &b)
6553  : wayland::detail::bitfield<10, 28>(b) {}
6554  zwp_text_input_v3_content_hint(const uint32_t value)
6555  : wayland::detail::bitfield<10, 28>(value) {}
6557  static const wayland::detail::bitfield<10, 28> none;
6559  static const wayland::detail::bitfield<10, 28> completion;
6561  static const wayland::detail::bitfield<10, 28> spellcheck;
6563  static const wayland::detail::bitfield<10, 28> auto_capitalization;
6565  static const wayland::detail::bitfield<10, 28> lowercase;
6567  static const wayland::detail::bitfield<10, 28> uppercase;
6569  static const wayland::detail::bitfield<10, 28> titlecase;
6571  static const wayland::detail::bitfield<10, 28> hidden_text;
6573  static const wayland::detail::bitfield<10, 28> sensitive_data;
6575  static const wayland::detail::bitfield<10, 28> latin;
6577  static const wayland::detail::bitfield<10, 28> multiline;
6578 };
6579 
6589 enum class zwp_text_input_v3_content_purpose : uint32_t
6590  {
6592  normal = 0,
6594  alpha = 1,
6596  digits = 2,
6598  number = 3,
6600  phone = 4,
6602  url = 5,
6604  email = 6,
6606  name = 7,
6608  password = 8,
6610  pin = 9,
6612  date = 10,
6614  time = 11,
6616  datetime = 12,
6618  terminal = 13
6619 };
6620 
6621 
6628 {
6629 private:
6630  struct events_t : public detail::events_base_t
6631  {
6632  };
6633 
6634  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6635 
6636  zwp_text_input_manager_v3_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6637 
6638 public:
6640  explicit zwp_text_input_manager_v3_t(const proxy_t &proxy);
6641  zwp_text_input_manager_v3_t(zwp_text_input_manager_v3 *p, wrapper_type t = wrapper_type::standard);
6642 
6643  zwp_text_input_manager_v3_t proxy_create_wrapper();
6644 
6645  static const std::string interface_name;
6646 
6647  operator zwp_text_input_manager_v3*() const;
6648 
6656 
6659  static constexpr std::uint32_t get_text_input_since_version = 1;
6660 
6661 };
6662 
6663 
6672 {
6673 private:
6674  struct events_t : public detail::events_base_t
6675  {
6676  };
6677 
6678  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6679 
6680  xdg_activation_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6681 
6682 public:
6684  explicit xdg_activation_v1_t(const proxy_t &proxy);
6685  xdg_activation_v1_t(xdg_activation_v1 *p, wrapper_type t = wrapper_type::standard);
6686 
6687  xdg_activation_v1_t proxy_create_wrapper();
6688 
6689  static const std::string interface_name;
6690 
6691  operator xdg_activation_v1*() const;
6692 
6701 
6704  static constexpr std::uint32_t get_activation_token_since_version = 1;
6705 
6722  void activate(std::string const& token, surface_t const& surface);
6723 
6726  static constexpr std::uint32_t activate_since_version = 1;
6727 
6728 };
6729 
6730 
6744 {
6745 private:
6746  struct events_t : public detail::events_base_t
6747  {
6748  std::function<void(std::string)> done;
6749  };
6750 
6751  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6752 
6753  xdg_activation_token_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6754 
6755 public:
6757  explicit xdg_activation_token_v1_t(const proxy_t &proxy);
6758  xdg_activation_token_v1_t(xdg_activation_token_v1 *p, wrapper_type t = wrapper_type::standard);
6759 
6760  xdg_activation_token_v1_t proxy_create_wrapper();
6761 
6762  static const std::string interface_name;
6763 
6764  operator xdg_activation_token_v1*() const;
6765 
6776  void set_serial(uint32_t serial, seat_t const& seat);
6777 
6780  static constexpr std::uint32_t set_serial_since_version = 1;
6781 
6791  void set_app_id(std::string const& app_id);
6792 
6795  static constexpr std::uint32_t set_app_id_since_version = 1;
6796 
6806  void set_surface(surface_t const& surface);
6807 
6810  static constexpr std::uint32_t set_surface_since_version = 1;
6811 
6818  void commit();
6819 
6822  static constexpr std::uint32_t commit_since_version = 1;
6823 
6842  std::function<void(std::string)> &on_done();
6843 
6844 };
6845 
6849 enum class xdg_activation_token_v1_error : uint32_t
6850  {
6852  already_used = 0
6853 };
6854 
6855 
6883 {
6884 private:
6885  struct events_t : public detail::events_base_t
6886  {
6887  };
6888 
6889  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6890 
6891  zxdg_decoration_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6892 
6893 public:
6895  explicit zxdg_decoration_manager_v1_t(const proxy_t &proxy);
6896  zxdg_decoration_manager_v1_t(zxdg_decoration_manager_v1 *p, wrapper_type t = wrapper_type::standard);
6897 
6898  zxdg_decoration_manager_v1_t proxy_create_wrapper();
6899 
6900  static const std::string interface_name;
6901 
6902  operator zxdg_decoration_manager_v1*() const;
6903 
6917 
6920  static constexpr std::uint32_t get_toplevel_decoration_since_version = 1;
6921 
6922 };
6923 
6924 
6936 {
6937 private:
6938  struct events_t : public detail::events_base_t
6939  {
6940  std::function<void(zxdg_toplevel_decoration_v1_mode)> configure;
6941  };
6942 
6943  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6944 
6945  zxdg_toplevel_decoration_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6946 
6947 public:
6949  explicit zxdg_toplevel_decoration_v1_t(const proxy_t &proxy);
6950  zxdg_toplevel_decoration_v1_t(zxdg_toplevel_decoration_v1 *p, wrapper_type t = wrapper_type::standard);
6951 
6952  zxdg_toplevel_decoration_v1_t proxy_create_wrapper();
6953 
6954  static const std::string interface_name;
6955 
6956  operator zxdg_toplevel_decoration_v1*() const;
6957 
6981  void set_mode(zxdg_toplevel_decoration_v1_mode const& mode);
6982 
6985  static constexpr std::uint32_t set_mode_since_version = 1;
6986 
6995  void unset_mode();
6996 
6999  static constexpr std::uint32_t unset_mode_since_version = 1;
7000 
7013  std::function<void(zxdg_toplevel_decoration_v1_mode)> &on_configure();
7014 
7015 };
7016 
7020 enum class zxdg_toplevel_decoration_v1_error : uint32_t
7021  {
7023  unconfigured_buffer = 0,
7025  already_constructed = 1,
7027  orphaned = 2
7028 };
7029 
7035 enum class zxdg_toplevel_decoration_v1_mode : uint32_t
7036  {
7038  client_side = 1,
7040  server_side = 2
7041 };
7042 
7043 
7051 {
7052 private:
7053  struct events_t : public detail::events_base_t
7054  {
7055  };
7056 
7057  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7058 
7059  zxdg_exporter_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7060 
7061 public:
7063  explicit zxdg_exporter_v1_t(const proxy_t &proxy);
7064  zxdg_exporter_v1_t(zxdg_exporter_v1 *p, wrapper_type t = wrapper_type::standard);
7065 
7066  zxdg_exporter_v1_t proxy_create_wrapper();
7067 
7068  static const std::string interface_name;
7069 
7070  operator zxdg_exporter_v1*() const;
7071 
7086  zxdg_exported_v1_t _export(surface_t const& surface);
7087 
7090  static constexpr std::uint32_t export_since_version = 1;
7091 
7092 };
7093 
7094 
7103 {
7104 private:
7105  struct events_t : public detail::events_base_t
7106  {
7107  };
7108 
7109  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7110 
7111  zxdg_importer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7112 
7113 public:
7115  explicit zxdg_importer_v1_t(const proxy_t &proxy);
7116  zxdg_importer_v1_t(zxdg_importer_v1 *p, wrapper_type t = wrapper_type::standard);
7117 
7118  zxdg_importer_v1_t proxy_create_wrapper();
7119 
7120  static const std::string interface_name;
7121 
7122  operator zxdg_importer_v1*() const;
7123 
7135  zxdg_imported_v1_t import(std::string const& handle);
7136 
7139  static constexpr std::uint32_t import_since_version = 1;
7140 
7141 };
7142 
7143 
7153 {
7154 private:
7155  struct events_t : public detail::events_base_t
7156  {
7157  std::function<void(std::string)> handle;
7158  };
7159 
7160  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7161 
7162  zxdg_exported_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7163 
7164 public:
7166  explicit zxdg_exported_v1_t(const proxy_t &proxy);
7167  zxdg_exported_v1_t(zxdg_exported_v1 *p, wrapper_type t = wrapper_type::standard);
7168 
7169  zxdg_exported_v1_t proxy_create_wrapper();
7170 
7171  static const std::string interface_name;
7172 
7173  operator zxdg_exported_v1*() const;
7174 
7184  std::function<void(std::string)> &on_handle();
7185 
7186 };
7187 
7188 
7197 {
7198 private:
7199  struct events_t : public detail::events_base_t
7200  {
7201  std::function<void()> destroyed;
7202  };
7203 
7204  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7205 
7206  zxdg_imported_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7207 
7208 public:
7210  explicit zxdg_imported_v1_t(const proxy_t &proxy);
7211  zxdg_imported_v1_t(zxdg_imported_v1 *p, wrapper_type t = wrapper_type::standard);
7212 
7213  zxdg_imported_v1_t proxy_create_wrapper();
7214 
7215  static const std::string interface_name;
7216 
7217  operator zxdg_imported_v1*() const;
7218 
7228  void set_parent_of(surface_t const& surface);
7229 
7232  static constexpr std::uint32_t set_parent_of_since_version = 1;
7233 
7242  std::function<void()> &on_destroyed();
7243 
7244 };
7245 
7246 
7254 {
7255 private:
7256  struct events_t : public detail::events_base_t
7257  {
7258  };
7259 
7260  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7261 
7262  zxdg_exporter_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7263 
7264 public:
7266  explicit zxdg_exporter_v2_t(const proxy_t &proxy);
7267  zxdg_exporter_v2_t(zxdg_exporter_v2 *p, wrapper_type t = wrapper_type::standard);
7268 
7269  zxdg_exporter_v2_t proxy_create_wrapper();
7270 
7271  static const std::string interface_name;
7272 
7273  operator zxdg_exporter_v2*() const;
7274 
7291 
7294  static constexpr std::uint32_t export_toplevel_since_version = 1;
7295 
7296 };
7297 
7304 enum class zxdg_exporter_v2_error : uint32_t
7305  {
7307  invalid_surface = 0
7308 };
7309 
7310 
7319 {
7320 private:
7321  struct events_t : public detail::events_base_t
7322  {
7323  };
7324 
7325  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7326 
7327  zxdg_importer_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7328 
7329 public:
7331  explicit zxdg_importer_v2_t(const proxy_t &proxy);
7332  zxdg_importer_v2_t(zxdg_importer_v2 *p, wrapper_type t = wrapper_type::standard);
7333 
7334  zxdg_importer_v2_t proxy_create_wrapper();
7335 
7336  static const std::string interface_name;
7337 
7338  operator zxdg_importer_v2*() const;
7339 
7351  zxdg_imported_v2_t import_toplevel(std::string const& handle);
7352 
7355  static constexpr std::uint32_t import_toplevel_since_version = 1;
7356 
7357 };
7358 
7359 
7369 {
7370 private:
7371  struct events_t : public detail::events_base_t
7372  {
7373  std::function<void(std::string)> handle;
7374  };
7375 
7376  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7377 
7378  zxdg_exported_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7379 
7380 public:
7382  explicit zxdg_exported_v2_t(const proxy_t &proxy);
7383  zxdg_exported_v2_t(zxdg_exported_v2 *p, wrapper_type t = wrapper_type::standard);
7384 
7385  zxdg_exported_v2_t proxy_create_wrapper();
7386 
7387  static const std::string interface_name;
7388 
7389  operator zxdg_exported_v2*() const;
7390 
7400  std::function<void(std::string)> &on_handle();
7401 
7402 };
7403 
7404 
7413 {
7414 private:
7415  struct events_t : public detail::events_base_t
7416  {
7417  std::function<void()> destroyed;
7418  };
7419 
7420  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7421 
7422  zxdg_imported_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7423 
7424 public:
7426  explicit zxdg_imported_v2_t(const proxy_t &proxy);
7427  zxdg_imported_v2_t(zxdg_imported_v2 *p, wrapper_type t = wrapper_type::standard);
7428 
7429  zxdg_imported_v2_t proxy_create_wrapper();
7430 
7431  static const std::string interface_name;
7432 
7433  operator zxdg_imported_v2*() const;
7434 
7445  void set_parent_of(surface_t const& surface);
7446 
7449  static constexpr std::uint32_t set_parent_of_since_version = 1;
7450 
7459  std::function<void()> &on_destroyed();
7460 
7461 };
7462 
7469 enum class zxdg_imported_v2_error : uint32_t
7470  {
7472  invalid_surface = 0
7473 };
7474 
7475 
7482 {
7483 private:
7484  struct events_t : public detail::events_base_t
7485  {
7486  };
7487 
7488  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7489 
7490  zxdg_output_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7491 
7492 public:
7494  explicit zxdg_output_manager_v1_t(const proxy_t &proxy);
7495  zxdg_output_manager_v1_t(zxdg_output_manager_v1 *p, wrapper_type t = wrapper_type::standard);
7496 
7497  zxdg_output_manager_v1_t proxy_create_wrapper();
7498 
7499  static const std::string interface_name;
7500 
7501  operator zxdg_output_manager_v1*() const;
7502 
7509  zxdg_output_v1_t get_xdg_output(output_t const& output);
7510 
7513  static constexpr std::uint32_t get_xdg_output_since_version = 1;
7514 
7515 };
7516 
7517 
7532 {
7533 private:
7534  struct events_t : public detail::events_base_t
7535  {
7536  std::function<void(int32_t, int32_t)> logical_position;
7537  std::function<void(int32_t, int32_t)> logical_size;
7538  std::function<void()> done;
7539  std::function<void(std::string)> name;
7540  std::function<void(std::string)> description;
7541  };
7542 
7543  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7544 
7545  zxdg_output_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7546 
7547 public:
7548  zxdg_output_v1_t();
7549  explicit zxdg_output_v1_t(const proxy_t &proxy);
7550  zxdg_output_v1_t(zxdg_output_v1 *p, wrapper_type t = wrapper_type::standard);
7551 
7552  zxdg_output_v1_t proxy_create_wrapper();
7553 
7554  static const std::string interface_name;
7555 
7556  operator zxdg_output_v1*() const;
7557 
7570  std::function<void(int32_t, int32_t)> &on_logical_position();
7571 
7612  std::function<void(int32_t, int32_t)> &on_logical_size();
7613 
7627  std::function<void()> &on_done();
7628 
7652  std::function<void(std::string)> &on_name();
7653 
7674  std::function<void(std::string)> &on_description();
7675 
7676 };
7677 
7678 
7687 class zxdg_shell_v6_t : public proxy_t
7688 {
7689 private:
7690  struct events_t : public detail::events_base_t
7691  {
7692  std::function<void(uint32_t)> ping;
7693  };
7694 
7695  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7696 
7697  zxdg_shell_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7698 
7699 public:
7700  zxdg_shell_v6_t();
7701  explicit zxdg_shell_v6_t(const proxy_t &proxy);
7702  zxdg_shell_v6_t(zxdg_shell_v6 *p, wrapper_type t = wrapper_type::standard);
7703 
7704  zxdg_shell_v6_t proxy_create_wrapper();
7705 
7706  static const std::string interface_name;
7707 
7708  operator zxdg_shell_v6*() const;
7709 
7718 
7721  static constexpr std::uint32_t create_positioner_since_version = 1;
7722 
7740 
7743  static constexpr std::uint32_t get_xdg_surface_since_version = 1;
7744 
7752  void pong(uint32_t serial);
7753 
7756  static constexpr std::uint32_t pong_since_version = 1;
7757 
7774  std::function<void(uint32_t)> &on_ping();
7775 
7776 };
7777 
7781 enum class zxdg_shell_v6_error : uint32_t
7782  {
7784  role = 0,
7786  defunct_surfaces = 1,
7788  not_the_topmost_popup = 2,
7790  invalid_popup_parent = 3,
7792  invalid_surface_state = 4,
7794  invalid_positioner = 5
7795 };
7796 
7797 
7822 {
7823 private:
7824  struct events_t : public detail::events_base_t
7825  {
7826  };
7827 
7828  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7829 
7830  zxdg_positioner_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7831 
7832 public:
7834  explicit zxdg_positioner_v6_t(const proxy_t &proxy);
7835  zxdg_positioner_v6_t(zxdg_positioner_v6 *p, wrapper_type t = wrapper_type::standard);
7836 
7837  zxdg_positioner_v6_t proxy_create_wrapper();
7838 
7839  static const std::string interface_name;
7840 
7841  operator zxdg_positioner_v6*() const;
7842 
7854  void set_size(int32_t width, int32_t height);
7855 
7858  static constexpr std::uint32_t set_size_since_version = 1;
7859 
7878  void set_anchor_rect(int32_t x, int32_t y, int32_t width, int32_t height);
7879 
7882  static constexpr std::uint32_t set_anchor_rect_since_version = 1;
7883 
7899  void set_anchor(zxdg_positioner_v6_anchor const& anchor);
7900 
7903  static constexpr std::uint32_t set_anchor_since_version = 1;
7904 
7919  void set_gravity(zxdg_positioner_v6_gravity const& gravity);
7920 
7923  static constexpr std::uint32_t set_gravity_since_version = 1;
7924 
7943  void set_constraint_adjustment(zxdg_positioner_v6_constraint_adjustment const& constraint_adjustment);
7944 
7947  static constexpr std::uint32_t set_constraint_adjustment_since_version = 1;
7948 
7966  void set_offset(int32_t x, int32_t y);
7967 
7970  static constexpr std::uint32_t set_offset_since_version = 1;
7971 
7972 };
7973 
7977 enum class zxdg_positioner_v6_error : uint32_t
7978  {
7980  invalid_input = 0
7981 };
7982 
7986 struct zxdg_positioner_v6_anchor : public wayland::detail::bitfield<4, 37>
7987 {
7988  zxdg_positioner_v6_anchor(const wayland::detail::bitfield<4, 37> &b)
7989  : wayland::detail::bitfield<4, 37>(b) {}
7990  zxdg_positioner_v6_anchor(const uint32_t value)
7991  : wayland::detail::bitfield<4, 37>(value) {}
7993  static const wayland::detail::bitfield<4, 37> none;
7995  static const wayland::detail::bitfield<4, 37> top;
7997  static const wayland::detail::bitfield<4, 37> bottom;
7999  static const wayland::detail::bitfield<4, 37> left;
8001  static const wayland::detail::bitfield<4, 37> right;
8002 };
8003 
8007 struct zxdg_positioner_v6_gravity : public wayland::detail::bitfield<4, 38>
8008 {
8009  zxdg_positioner_v6_gravity(const wayland::detail::bitfield<4, 38> &b)
8010  : wayland::detail::bitfield<4, 38>(b) {}
8011  zxdg_positioner_v6_gravity(const uint32_t value)
8012  : wayland::detail::bitfield<4, 38>(value) {}
8014  static const wayland::detail::bitfield<4, 38> none;
8016  static const wayland::detail::bitfield<4, 38> top;
8018  static const wayland::detail::bitfield<4, 38> bottom;
8020  static const wayland::detail::bitfield<4, 38> left;
8022  static const wayland::detail::bitfield<4, 38> right;
8023 };
8024 
8040 struct zxdg_positioner_v6_constraint_adjustment : public wayland::detail::bitfield<6, 39>
8041 {
8042  zxdg_positioner_v6_constraint_adjustment(const wayland::detail::bitfield<6, 39> &b)
8043  : wayland::detail::bitfield<6, 39>(b) {}
8044  zxdg_positioner_v6_constraint_adjustment(const uint32_t value)
8045  : wayland::detail::bitfield<6, 39>(value) {}
8046  static const wayland::detail::bitfield<6, 39> none;
8047  static const wayland::detail::bitfield<6, 39> slide_x;
8048  static const wayland::detail::bitfield<6, 39> slide_y;
8049  static const wayland::detail::bitfield<6, 39> flip_x;
8050  static const wayland::detail::bitfield<6, 39> flip_y;
8051  static const wayland::detail::bitfield<6, 39> resize_x;
8052  static const wayland::detail::bitfield<6, 39> resize_y;
8053 };
8054 
8055 
8091 {
8092 private:
8093  struct events_t : public detail::events_base_t
8094  {
8095  std::function<void(uint32_t)> configure;
8096  };
8097 
8098  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8099 
8100  zxdg_surface_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8101 
8102 public:
8104  explicit zxdg_surface_v6_t(const proxy_t &proxy);
8105  zxdg_surface_v6_t(zxdg_surface_v6 *p, wrapper_type t = wrapper_type::standard);
8106 
8107  zxdg_surface_v6_t proxy_create_wrapper();
8108 
8109  static const std::string interface_name;
8110 
8111  operator zxdg_surface_v6*() const;
8112 
8123 
8126  static constexpr std::uint32_t get_toplevel_since_version = 1;
8127 
8139  zxdg_popup_v6_t get_popup(zxdg_surface_v6_t const& parent, zxdg_positioner_v6_t const& positioner);
8140 
8143  static constexpr std::uint32_t get_popup_since_version = 1;
8144 
8177  void set_window_geometry(int32_t x, int32_t y, int32_t width, int32_t height);
8178 
8181  static constexpr std::uint32_t set_window_geometry_since_version = 1;
8182 
8207  void ack_configure(uint32_t serial);
8208 
8211  static constexpr std::uint32_t ack_configure_since_version = 1;
8212 
8234  std::function<void(uint32_t)> &on_configure();
8235 
8236 };
8237 
8241 enum class zxdg_surface_v6_error : uint32_t
8242  {
8243  not_constructed = 1,
8244  already_constructed = 2,
8245  unconfigured_buffer = 3
8246 };
8247 
8248 
8259 {
8260 private:
8261  struct events_t : public detail::events_base_t
8262  {
8263  std::function<void(int32_t, int32_t, array_t)> configure;
8264  std::function<void()> close;
8265  };
8266 
8267  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8268 
8269  zxdg_toplevel_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8270 
8271 public:
8273  explicit zxdg_toplevel_v6_t(const proxy_t &proxy);
8274  zxdg_toplevel_v6_t(zxdg_toplevel_v6 *p, wrapper_type t = wrapper_type::standard);
8275 
8276  zxdg_toplevel_v6_t proxy_create_wrapper();
8277 
8278  static const std::string interface_name;
8279 
8280  operator zxdg_toplevel_v6*() const;
8281 
8294  void set_parent(zxdg_toplevel_v6_t const& parent);
8295 
8298  static constexpr std::uint32_t set_parent_since_version = 1;
8299 
8312  void set_title(std::string const& title);
8313 
8316  static constexpr std::uint32_t set_title_since_version = 1;
8317 
8343  void set_app_id(std::string const& app_id);
8344 
8347  static constexpr std::uint32_t set_app_id_since_version = 1;
8348 
8368  void show_window_menu(seat_t const& seat, uint32_t serial, int32_t x, int32_t y);
8369 
8372  static constexpr std::uint32_t show_window_menu_since_version = 1;
8373 
8396  void move(seat_t const& seat, uint32_t serial);
8397 
8400  static constexpr std::uint32_t move_since_version = 1;
8401 
8439  void resize(seat_t const& seat, uint32_t serial, zxdg_toplevel_v6_resize_edge const& edges);
8440 
8443  static constexpr std::uint32_t resize_since_version = 1;
8444 
8485  void set_max_size(int32_t width, int32_t height);
8486 
8489  static constexpr std::uint32_t set_max_size_since_version = 1;
8490 
8531  void set_min_size(int32_t width, int32_t height);
8532 
8535  static constexpr std::uint32_t set_min_size_since_version = 1;
8536 
8557  void set_maximized();
8558 
8561  static constexpr std::uint32_t set_maximized_since_version = 1;
8562 
8584  void unset_maximized();
8585 
8588  static constexpr std::uint32_t unset_maximized_since_version = 1;
8589 
8604  void set_fullscreen(output_t const& output);
8605 
8608  static constexpr std::uint32_t set_fullscreen_since_version = 1;
8609 
8613  void unset_fullscreen();
8614 
8617  static constexpr std::uint32_t unset_fullscreen_since_version = 1;
8618 
8631  void set_minimized();
8632 
8635  static constexpr std::uint32_t set_minimized_since_version = 1;
8636 
8663  std::function<void(int32_t, int32_t, array_t)> &on_configure();
8664 
8677  std::function<void()> &on_close();
8678 
8679 };
8680 
8687 struct zxdg_toplevel_v6_resize_edge : public wayland::detail::bitfield<4, 41>
8688 {
8689  zxdg_toplevel_v6_resize_edge(const wayland::detail::bitfield<4, 41> &b)
8690  : wayland::detail::bitfield<4, 41>(b) {}
8691  zxdg_toplevel_v6_resize_edge(const uint32_t value)
8692  : wayland::detail::bitfield<4, 41>(value) {}
8693  static const wayland::detail::bitfield<4, 41> none;
8694  static const wayland::detail::bitfield<4, 41> top;
8695  static const wayland::detail::bitfield<4, 41> bottom;
8696  static const wayland::detail::bitfield<4, 41> left;
8697  static const wayland::detail::bitfield<4, 41> top_left;
8698  static const wayland::detail::bitfield<4, 41> bottom_left;
8699  static const wayland::detail::bitfield<4, 41> right;
8700  static const wayland::detail::bitfield<4, 41> top_right;
8701  static const wayland::detail::bitfield<4, 41> bottom_right;
8702 };
8703 
8715 enum class zxdg_toplevel_v6_state : uint32_t
8716  {
8718  maximized = 1,
8720  fullscreen = 2,
8722  resizing = 3,
8724  activated = 4
8725 };
8726 
8727 
8765 class zxdg_popup_v6_t : public proxy_t
8766 {
8767 private:
8768  struct events_t : public detail::events_base_t
8769  {
8770  std::function<void(int32_t, int32_t, int32_t, int32_t)> configure;
8771  std::function<void()> popup_done;
8772  };
8773 
8774  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8775 
8776  zxdg_popup_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8777 
8778 public:
8779  zxdg_popup_v6_t();
8780  explicit zxdg_popup_v6_t(const proxy_t &proxy);
8781  zxdg_popup_v6_t(zxdg_popup_v6 *p, wrapper_type t = wrapper_type::standard);
8782 
8783  zxdg_popup_v6_t proxy_create_wrapper();
8784 
8785  static const std::string interface_name;
8786 
8787  operator zxdg_popup_v6*() const;
8788 
8836  void grab(seat_t const& seat, uint32_t serial);
8837 
8840  static constexpr std::uint32_t grab_since_version = 1;
8841 
8857  std::function<void(int32_t, int32_t, int32_t, int32_t)> &on_configure();
8858 
8866  std::function<void()> &on_popup_done();
8867 
8868 };
8869 
8873 enum class zxdg_popup_v6_error : uint32_t
8874  {
8876  invalid_grab = 0
8877 };
8878 
8879 
8886 {
8887 private:
8888  struct events_t : public detail::events_base_t
8889  {
8890  };
8891 
8892  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8893 
8894  zwp_xwayland_keyboard_grab_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8895 
8896 public:
8898  explicit zwp_xwayland_keyboard_grab_manager_v1_t(const proxy_t &proxy);
8899  zwp_xwayland_keyboard_grab_manager_v1_t(zwp_xwayland_keyboard_grab_manager_v1 *p, wrapper_type t = wrapper_type::standard);
8900 
8901  zwp_xwayland_keyboard_grab_manager_v1_t proxy_create_wrapper();
8902 
8903  static const std::string interface_name;
8904 
8905  operator zwp_xwayland_keyboard_grab_manager_v1*() const;
8906 
8932  zwp_xwayland_keyboard_grab_v1_t grab_keyboard(surface_t const& surface, seat_t const& seat);
8933 
8936  static constexpr std::uint32_t grab_keyboard_since_version = 1;
8937 
8938 };
8939 
8940 
8947 {
8948 private:
8949  struct events_t : public detail::events_base_t
8950  {
8951  };
8952 
8953  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8954 
8955  zwp_xwayland_keyboard_grab_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8956 
8957 public:
8959  explicit zwp_xwayland_keyboard_grab_v1_t(const proxy_t &proxy);
8960  zwp_xwayland_keyboard_grab_v1_t(zwp_xwayland_keyboard_grab_v1 *p, wrapper_type t = wrapper_type::standard);
8961 
8962  zwp_xwayland_keyboard_grab_v1_t proxy_create_wrapper();
8963 
8964  static const std::string interface_name;
8965 
8966  operator zwp_xwayland_keyboard_grab_v1*() const;
8967 
8968 };
8969 
8970 
8971 
8972 }
std::function< void()> & on_popup_done()
popup interaction is done
zwp_confined_pointer_v1_t confine_pointer(surface_t const &surface, pointer_t const &pointer, region_t const &region, zwp_pointer_constraints_v1_lifetime const &lifetime)
confine pointer to a region
void set_parent_of(surface_t const &surface)
set as the parent of some surface
std::function< void(uint32_t)> & on_frame()
end of a strip event sequence
zxdg_exported_v1_t _export(surface_t const &surface)
export a surface
static const wayland::detail::bitfield< 10, 28 > sensitive_data
typed text should not be stored
std::function< void()> & on_removed()
tablet removed event
std::function< void(zwp_tablet_tool_v2_t)> & on_tool_added()
a new tool has been used with a tablet
std::function< void(uint32_t, uint32_t, uint32_t)> & on_modifier()
supported buffer format modifier
static constexpr std::uint32_t get_activation_token_since_version
Minimum protocol version required for the get_activation_token function.
static constexpr std::uint32_t create_source_since_version
Minimum protocol version required for the create_source function.
std::function< void()> & on_done()
tablet description events sequence complete
zxdg_popup_v6_t get_popup(zxdg_surface_v6_t const &parent, zxdg_positioner_v6_t const &positioner)
assign the xdg_popup surface role
static constexpr std::uint32_t resize_since_version
Minimum protocol version required for the resize function.
static const wayland::detail::bitfield< 10, 23 > _default
auto completion, correction and capitalization
std::function< void(uint32_t)> & on_down()
tablet tool is making contact
static constexpr std::uint32_t set_region_since_version
Minimum protocol version required for the set_region function.
std::function< void()> & on_failed()
buffer creation failed
void release()
release the wl_fullscreen_shell interface
content for a wl_surface
std::function< void(uint32_t)> & on_pressure()
pressure change event
zxdg_exported_v2_t export_toplevel(surface_t const &surface)
export a toplevel surface
std::function< void(surface_t)> & on_leave()
leave event
static constexpr std::uint32_t invoke_action_since_version
Minimum protocol version required for the invoke_action function.
static constexpr std::uint32_t create_inhibitor_since_version
Minimum protocol version required for the create_inhibitor function.
void set_preferred_language(std::string const &language)
sets preferred language
static constexpr std::uint32_t import_since_version
Minimum protocol version required for the import function.
std::function< void(uint32_t, std::string)> & on_commit_string()
commit
void cursor_position(int32_t index, int32_t anchor)
set cursor to a new position
void set_content_type(zwp_text_input_v1_content_hint const &hint, zwp_text_input_v1_content_purpose const &purpose)
set content purpose and hint
std::function< void(int32_t, int32_t)> & on_tilt()
tilt change event
bool can_create_immed() const
Check whether the create_immed function is available with the currently bound version of the protocol...
offer to transfer primary selection contents
static constexpr std::uint32_t unset_fullscreen_since_version
Minimum protocol version required for the unset_fullscreen function.
void grab(seat_t const &seat, uint32_t serial)
make the popup take an explicit grab
xdg_activation_token_v1_t get_activation_token()
requests a token
group of input devices
std::function< void(zwp_tablet_v1_t)> & on_tablet_added()
new device notification
std::function< void()> & on_removed()
tool removed
zwp_linux_buffer_params_v1_t create_params()
create a temporary object for buffer parameters
static constexpr std::uint32_t set_cursor_position_hint_since_version
Minimum protocol version required for the set_cursor_position_hint function.
zxdg_toplevel_decoration_v1_t get_toplevel_decoration(xdg_toplevel_t const &toplevel)
create a new toplevel decoration object
static constexpr std::uint32_t set_parent_of_since_version
Minimum protocol version required for the set_parent_of function.
static constexpr std::uint32_t show_window_menu_since_version
Minimum protocol version required for the show_window_menu function.
static constexpr std::uint32_t set_anchor_since_version
Minimum protocol version required for the set_anchor function.
zwp_linux_dmabuf_feedback_v1_t get_surface_feedback(surface_t const &surface)
get feedback for a surface
std::function< void(uint32_t)> & on_position()
position changed
static constexpr std::uint32_t set_surrounding_text_since_version
Minimum protocol version required for the set_surrounding_text function.
void set_anchor_rect(int32_t x, int32_t y, int32_t width, int32_t height)
set the anchor rectangle within the parent surface
std::function< void(zwp_tablet_tool_v1_type)> & on_type()
tool type
static constexpr std::uint32_t set_min_size_since_version
Minimum protocol version required for the set_min_size function.
void set_surrounding_text(std::string const &text, uint32_t cursor, uint32_t anchor)
sets the surrounding text
static constexpr std::uint32_t receive_since_version
Minimum protocol version required for the receive function.
static constexpr std::uint32_t set_fullscreen_since_version
Minimum protocol version required for the set_fullscreen function.
static constexpr std::uint32_t set_maximized_since_version
Minimum protocol version required for the set_maximized function.
static constexpr std::uint32_t create_since_version
Minimum protocol version required for the create function.
static constexpr std::uint32_t confine_pointer_since_version
Minimum protocol version required for the confine_pointer function.
static constexpr std::uint32_t set_size_since_version
Minimum protocol version required for the set_size function.
std::function< void(std::string, int)> & on_send()
send the primary selection contents
zwp_fullscreen_shell_mode_feedback_v1_t present_surface_for_mode(surface_t const &surface, output_t const &output, int32_t framerate)
present surface for display at a particular mode
std::function< void()> & on_destroyed()
the imported surface handle has been destroyed
void set_surrounding_text(std::string const &text, int32_t cursor, int32_t anchor)
sets the surrounding text
static const wayland::detail::bitfield< 10, 23 > titlecase
prefer casing for titles and headings (can be language dependent)
static constexpr std::uint32_t release_since_version
Minimum protocol version required for the release function.
std::function< void(array_t)> & on_buttons()
buttons announced
std::function< void(array_t)> & on_modifiers_map()
modifiers map
zwp_tablet_seat_v1_t get_tablet_seat(seat_t const &seat)
get the tablet seat
std::function< void()> & on_done()
pad description event sequence complete
zwp_input_panel_surface_v1_t get_input_panel_surface(surface_t const &surface)
std::function< void()> & on_stop()
interaction stopped
std::function< void(uint32_t, uint32_t, uint32_t)> & on_mode_switch()
mode switch event
zwp_input_timestamps_v1_t get_pointer_timestamps(pointer_t const &pointer)
subscribe to high-resolution pointer timestamp events
std::function< void(int32_t, int32_t, array_t)> & on_configure()
suggest a surface change
static constexpr std::uint32_t set_text_change_cause_since_version
Minimum protocol version required for the set_text_change_cause function.
void disable()
Disable text input on a surface.
std::function< void(zwp_tablet_v2_t)> & on_tablet_added()
new device notification
static const wayland::detail::bitfield< 10, 23 > uppercase
prefer uppercase letters
std::function< void(std::string)> & on_handle()
the exported surface handle
std::function< void(uint32_t, zwp_tablet_v2_t, surface_t)> & on_proximity_in()
proximity in event
void receive(std::string const &mime_type, int fd)
request that the data is transferred
zxdg_output_v1_t get_xdg_output(output_t const &output)
create an xdg output from a wl_output
protocol for providing explicit synchronization
std::function< void(std::string)> & on_done()
the exported activation token
std::function< void()> & on_removed()
tool removed
std::function< void(uint32_t, uint32_t)> & on_hardware_serial()
unique hardware serial number of the tool
static constexpr std::uint32_t set_surface_since_version
Minimum protocol version required for the set_surface function.
static constexpr std::uint32_t get_popup_since_version
Minimum protocol version required for the get_popup function.
context object for inhibiting idle behavior
std::function< void(uint32_t, uint32_t)> & on_invoke_action()
static constexpr std::uint32_t get_xdg_surface_since_version
Minimum protocol version required for the get_xdg_surface function.
std::function< void(int32_t)> & on_preedit_cursor()
pre-edit cursor
std::function< void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> & on_keysym()
keysym
static const wayland::detail::bitfield< 10, 28 > titlecase
prefer casing for titles and headings (can be language dependent)
compositor output region
static constexpr std::uint32_t offer_since_version
Minimum protocol version required for the offer function.
std::function< void(std::string)> & on_path()
path to the device
static constexpr std::uint32_t pong_since_version
Minimum protocol version required for the pong function.
static constexpr std::uint32_t set_feedback_since_version
Minimum protocol version required for the set_feedback function.
std::function< void()> & on_tranche_done()
a preference tranche has been sent
static constexpr std::uint32_t modifiers_since_version
Minimum protocol version required for the modifiers function.
std::function< void(uint32_t, std::string, std::string)> & on_preedit_string()
pre-edit
std::function< void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> & on_button()
button event
void present_surface(surface_t const &surface, zwp_fullscreen_shell_v1_present_method const &method, output_t const &output)
present surface for display
static const wayland::detail::bitfield< 10, 23 > latin
just latin characters should be entered
std::function< void(uint32_t, uint32_t)> & on_hardware_id_wacom()
hardware id notification in Wacom's format
std::function< void(zwp_input_method_context_v1_t)> & on_deactivate()
deactivate event
std::function< void(int)> & on_fenced_release()
release buffer with fence
void set_min_size(int32_t width, int32_t height)
set the minimum size
void set_window_geometry(int32_t x, int32_t y, int32_t width, int32_t height)
set the new window geometry
void text_direction(uint32_t serial, uint32_t direction)
decoration object for a toplevel surface
static constexpr std::uint32_t set_content_type_since_version
Minimum protocol version required for the set_content_type function.
static constexpr std::uint32_t set_region_since_version
Minimum protocol version required for the set_region function.
buffer_t create_immed(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const &flags)
immediately create a wl_buffer from the given dmabufs
void move(seat_t const &seat, uint32_t serial)
start an interactive move
static constexpr std::uint32_t get_touch_timestamps_since_version
Minimum protocol version required for the get_touch_timestamps function.
std::function< void(uint32_t, uint32_t)> & on_id()
tablet device USB vendor/product id
void set_constraint_adjustment(zxdg_positioner_v6_constraint_adjustment const &constraint_adjustment)
set the adjustment to be done when constrained
static constexpr std::uint32_t move_since_version
Minimum protocol version required for the move function.
std::function< void(array_t)> & on_main_device()
preferred main device
std::function< void(uint32_t)> & on_done()
apply changes
static const wayland::detail::bitfield< 10, 28 > spellcheck
suggest word corrections
zwp_locked_pointer_v1_t lock_pointer(surface_t const &surface, pointer_t const &pointer, region_t const &region, zwp_pointer_constraints_v1_lifetime const &lifetime)
lock pointer to a position
std::function< void(std::string)> & on_name()
tablet device name
std::function< void(zwp_tablet_pad_group_v2_t)> & on_group()
group announced
static constexpr std::uint32_t import_toplevel_since_version
Minimum protocol version required for the import_toplevel function.
zxdg_toplevel_v6_t get_toplevel()
assign the xdg_toplevel surface role
zwp_linux_dmabuf_feedback_v1_t get_default_feedback()
get default feedback
bool can_get_default_feedback() const
Check whether the get_default_feedback function is available with the currently bound version of the ...
zwp_pointer_gesture_pinch_v1_t get_pinch_gesture(pointer_t const &pointer)
get pinch gesture
std::function< void()> & on_removed()
tablet removed event
static constexpr std::uint32_t activate_since_version
Minimum protocol version required for the activate function.
void set_anchor(zxdg_positioner_v6_anchor const &anchor)
set anchor rectangle anchor edges
static constexpr std::uint32_t grab_keyboard_since_version
Minimum protocol version required for the grab_keyboard function.
static constexpr std::uint32_t commit_state_since_version
Minimum protocol version required for the commit_state function.
void set_max_size(int32_t width, int32_t height)
set the maximum size
static constexpr std::uint32_t set_serial_since_version
Minimum protocol version required for the set_serial function.
std::function< void(uint32_t, uint32_t)> & on_hardware_serial()
unique hardware serial number of the tool
static const wayland::detail::bitfield< 10, 28 > lowercase
prefer lowercase letters
std::function< void()> & on_up()
tablet tool is no longer making contact
void set_offset(int32_t x, int32_t y)
set surface position offset
std::function< void(zwp_tablet_pad_v2_t)> & on_pad_added()
new pad notification
short-lived, popup surfaces for menus
std::function< void(zwp_tablet_tool_v1_t)> & on_tool_added()
a new tool has been used with a tablet
void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const &state, uint32_t modifiers)
keysym
factory for creating dmabuf-based wl_buffers
std::function< void(zxdg_toplevel_decoration_v1_mode)> & on_configure()
suggest a surface change
std::function< void()> & on_locked()
lock activation event
static constexpr std::uint32_t hide_input_panel_since_version
Minimum protocol version required for the hide_input_panel function.
static constexpr std::uint32_t set_feedback_since_version
Minimum protocol version required for the set_feedback function.
std::function< void(std::string)> & on_description()
human-readable description of this output
void preedit_string(uint32_t serial, std::string const &text, std::string const &commit)
pre-edit string
zxdg_surface_v6_t get_xdg_surface(surface_t const &surface)
create a shell surface from a surface
std::function< void(int32_t)> & on_rotation()
z-rotation change event
std::function< void(uint32_t)> & on_ping()
check if the client is alive
std::function< void(zwp_tablet_pad_strip_v2_t)> & on_strip()
strip announced
void set_app_id(std::string const &app_id)
set application ID
static constexpr std::uint32_t disable_since_version
Minimum protocol version required for the disable function.
std::function< void(int32_t, int32_t)> & on_wheel()
Wheel delta event.
std::function< void(uint32_t, surface_t)> & on_leave()
enter event
std::function< void(uint32_t)> & on_modes()
mode-switch ability announced
static const wayland::detail::bitfield< 10, 28 > latin
just Latin characters should be entered
static constexpr std::uint32_t get_release_since_version
Minimum protocol version required for the get_release function.
zwp_keyboard_shortcuts_inhibitor_v1_t inhibit_shortcuts(surface_t const &surface, seat_t const &seat)
create a new keyboard shortcuts inhibitor object
static constexpr std::uint32_t get_tablet_seat_since_version
Minimum protocol version required for the get_tablet_seat function.
std::function< void(uint32_t)> & on_buttons()
buttons announced
static constexpr std::uint32_t set_cursor_since_version
Minimum protocol version required for the set_cursor function.
void offer(std::string const &mime_type)
add an offered mime type
std::function< void(uint32_t, uint32_t)> & on_hardware_id_wacom()
hardware id notification in Wacom's format
static constexpr std::uint32_t get_device_since_version
Minimum protocol version required for the get_device function.
static constexpr std::uint32_t create_text_input_since_version
Minimum protocol version required for the create_text_input function.
std::function< void(uint32_t, zwp_tablet_v1_t, surface_t)> & on_proximity_in()
proximity in event
std::function< void(double)> & on_angle()
angle changed
static constexpr std::uint32_t set_acquire_fence_since_version
Minimum protocol version required for the set_acquire_fence function.
std::function< void(int32_t, int32_t)> & on_cursor_position()
set cursor to new position
std::function< void()> & on_close()
surface wants to be closed
static constexpr std::uint32_t get_default_feedback_since_version
Minimum protocol version required for the get_default_feedback function.
zwp_idle_inhibitor_v1_t create_inhibitor(surface_t const &surface)
create a new inhibitor object
void set_size(int32_t width, int32_t height)
set the size of the to-be positioned rectangle
static constexpr std::uint32_t commit_since_version
Minimum protocol version required for the commit function.
void set_serial(uint32_t serial, seat_t const &seat)
specifies the seat and serial of the activating event
std::function< void(zwp_tablet_pad_strip_v2_source)> & on_source()
strip event source
static constexpr std::uint32_t get_hold_gesture_since_version
Minimum protocol version required for the get_hold_gesture function.
std::function< void()> & on_unconfined()
pointer unconfined
static constexpr std::uint32_t text_direction_since_version
Minimum protocol version required for the text_direction function.
static constexpr std::uint32_t show_input_panel_since_version
Minimum protocol version required for the show_input_panel function.
std::function< void()> & on_done()
all feedback has been sent
static constexpr std::uint32_t get_surface_feedback_since_version
Minimum protocol version required for the get_surface_feedback function.
static constexpr std::uint32_t set_cursor_rectangle_since_version
Minimum protocol version required for the set_cursor_rectangle function.
std::function< void(std::string)> & on_preferred_language()
std::function< void()> & on_active()
shortcuts are inhibited
void set_cursor(uint32_t serial, surface_t const &surface, int32_t hotspot_x, int32_t hotspot_y)
set the tablet tool's surface
compositor logical output region
std::function< void()> & on_unlocked()
lock deactivation event
static const wayland::detail::bitfield< 10, 23 > multiline
the text input is multiline
std::function< void(std::string)> & on_path()
path to the device
static const wayland::detail::bitfield< 10, 28 > hidden_text
characters should be hidden
std::function< void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> & on_button()
physical button state
controller object for graphic tablet devices
zwp_pointer_gesture_swipe_v1_t get_swipe_gesture(pointer_t const &pointer)
get swipe gesture
std::function< void(uint32_t)> & on_pressure()
pressure change event
std::function< void(uint32_t, uint32_t, surface_t, uint32_t)> & on_begin()
multi-finger swipe begin
std::function< void(uint32_t, zwp_text_input_v1_text_direction)> & on_text_direction()
text direction
void add(int fd, uint32_t plane_idx, uint32_t offset, uint32_t stride, uint32_t modifier_hi, uint32_t modifier_lo)
add a dmabuf to the temporary set
zwp_input_timestamps_v1_t get_touch_timestamps(touch_t const &touch)
subscribe to high-resolution touch timestamp events
std::function< void(int32_t, uint32_t)> & on_delete_surrounding_text()
delete surrounding text
static const wayland::detail::bitfield< 10, 23 > none
no special behaviour
static constexpr std::uint32_t set_anchor_rect_since_version
Minimum protocol version required for the set_anchor_rect function.
static constexpr std::uint32_t get_toplevel_decoration_since_version
Minimum protocol version required for the get_toplevel_decoration function.
std::function< void(uint32_t, double, double)> & on_update()
multi-finger swipe motion
std::function< void()> & on_proximity_out()
proximity out event
void pong(uint32_t serial)
respond to a ping event
static constexpr std::uint32_t set_max_size_since_version
Minimum protocol version required for the set_max_size function.
void set_feedback(uint32_t button, std::string const &description, uint32_t serial)
set compositor feedback
parameters for creating a dmabuf-based wl_buffer
std::function< void(buffer_t)> & on_created()
buffer creation succeeded
static constexpr std::uint32_t modifiers_map_since_version
Minimum protocol version required for the modifiers_map function.
std::function< void()> & on_done()
tool description events sequence complete
static const wayland::detail::bitfield< 10, 23 > hidden_text
characters should be hidden
static constexpr std::uint32_t commit_string_since_version
Minimum protocol version required for the commit_string function.
static constexpr std::uint32_t keysym_since_version
Minimum protocol version required for the keysym function.
std::function< void(zwp_fullscreen_shell_v1_capability)> & on_capability()
advertises a capability of the compositor
std::function< void()> & on_inactive()
shortcuts are restored
std::function< void(uint32_t)> & on_down()
tablet tool is making contact
void set_feedback(std::string const &description, uint32_t serial)
set compositor feedback
static constexpr std::uint32_t create_positioner_since_version
Minimum protocol version required for the create_positioner function.
zwp_primary_selection_source_v1_t create_source()
create a new primary selection source
controller object for graphic tablet devices
controller object for graphic tablet devices of a seat
desktop user interface surface base interface
zwp_text_input_v1_t create_text_input()
create text input
std::function< void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> & on_content_type()
std::function< void(zwp_tablet_tool_v2_type)> & on_type()
tool type
void activate(seat_t const &seat, surface_t const &surface)
request activation
void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const &style)
pre-edit styling
static constexpr std::uint32_t preedit_styling_since_version
Minimum protocol version required for the preedit_styling function.
std::function< void(uint32_t)> & on_frame()
frame event
void set_fullscreen(output_t const &output)
set the window as fullscreen on a monitor
std::function< void(uint32_t)> & on_configure()
suggest a surface change
std::function< void(uint32_t, uint32_t, double, double, double, double)> & on_relative_motion()
relative pointer motion
static constexpr std::uint32_t set_parent_since_version
Minimum protocol version required for the set_parent function.
static constexpr std::uint32_t get_input_panel_surface_since_version
Minimum protocol version required for the get_input_panel_surface function.
static constexpr std::uint32_t ack_configure_since_version
Minimum protocol version required for the ack_configure function.
std::function< void(std::string, int32_t, int32_t)> & on_preedit_string()
pre-edit
static constexpr std::uint32_t set_title_since_version
Minimum protocol version required for the set_title function.
static constexpr std::uint32_t get_xdg_output_since_version
Minimum protocol version required for the get_xdg_output function.
static constexpr std::uint32_t get_relative_pointer_since_version
Minimum protocol version required for the get_relative_pointer function.
std::function< void(double, double)> & on_motion()
motion event
static constexpr std::uint32_t activate_since_version
Minimum protocol version required for the activate function.
void deactivate(seat_t const &seat)
request deactivation
static constexpr std::uint32_t get_text_input_since_version
Minimum protocol version required for the get_text_input function.
zwp_text_input_v3_t get_text_input(seat_t const &seat)
create a new text input object
std::function< void(uint32_t, uint32_t, surface_t, uint32_t)> & on_begin()
multi-finger pinch begin
void set_surface(surface_t const &surface)
specifies the application being activated
zwp_input_timestamps_v1_t get_keyboard_timestamps(keyboard_t const &keyboard)
subscribe to high-resolution keyboard timestamp events
std::function< void()> & on_done()
all information about the output have been sent
static const wayland::detail::bitfield< 10, 28 > multiline
the text input is multiline
keyboard input device
Represents a protocol object on the client side.
std::function< void(std::string)> & on_path()
path to the device
static constexpr std::uint32_t export_since_version
Minimum protocol version required for the _export function.
void commit_string(uint32_t serial, std::string const &text)
commit string
controller object for graphic tablet devices of a seat
interface for activating surfaces
std::function< void(std::string)> & on_name()
name of this output
void set_cursor(uint32_t serial, surface_t const &surface, int32_t hotspot_x, int32_t hotspot_y)
set the tablet tool's surface
static constexpr std::uint32_t deactivate_since_version
Minimum protocol version required for the deactivate function.
static const wayland::detail::bitfield< 10, 28 > none
no special behavior
receive relative pointer motion events
std::function< void(uint32_t)> & on_frame()
frame event
std::function< void(uint32_t)> & on_frame()
end of a ring event sequence
std::function< void()> & on_leave()
leave event
std::function< void()> & on_removed()
pad removed event
void set_minimized()
set the window as minimized
void set_parent_of(surface_t const &surface)
set as the parent of some surface
std::function< void()> & on_done()
tablet description events sequence complete
void key(uint32_t serial, uint32_t time, uint32_t key, keyboard_key_state const &state)
forward key event
std::function< void(surface_t)> & on_enter()
enter event
void invoke_action(uint32_t button, uint32_t index)
void set_mode(zxdg_toplevel_decoration_v1_mode const &mode)
set the decoration mode
static constexpr std::uint32_t get_toplevel_since_version
Minimum protocol version required for the get_toplevel function.
void set_cursor_position_hint(double surface_x, double surface_y)
set the pointer cursor position hint
context object for high-resolution input timestamps
void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height)
set cursor position
bool can_get_hold_gesture() const
Check whether the get_hold_gesture function is available with the currently bound version of the prot...
static constexpr std::uint32_t set_app_id_since_version
Minimum protocol version required for the set_app_id function.
void activate(std::string const &token, surface_t const &surface)
notify new interaction being available
void show_window_menu(seat_t const &seat, uint32_t serial, int32_t x, int32_t y)
show the window menu
std::function< void(zwp_tablet_tool_v1_capability)> & on_capability()
tool capability notification
void release()
destroy the pointer gesture object
static constexpr std::uint32_t set_constraint_adjustment_since_version
Minimum protocol version required for the set_constraint_adjustment function.
static constexpr std::uint32_t set_gravity_since_version
Minimum protocol version required for the set_gravity function.
static constexpr std::uint32_t inhibit_shortcuts_since_version
Minimum protocol version required for the inhibit_shortcuts function.
static constexpr std::uint32_t get_tablet_seat_since_version
Minimum protocol version required for the get_tablet_seat function.
std::function< void()> & on_immediate_release()
release buffer immediately
std::function< void(array_t)> & on_tranche_target_device()
target device
zwp_linux_surface_synchronization_v1_t get_synchronization(surface_t const &surface)
extend surface interface for explicit synchronization
std::function< void(uint32_t, uint32_t, uint32_t)> & on_timestamp()
high-resolution timestamp event
a set of buttons, rings and strips
std::function< void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> & on_button()
button event
std::function< void(zwp_input_method_context_v1_t)> & on_activate()
activate event
std::function< void()> & on_cancelled()
request for primary selection contents was canceled
void ack_configure(uint32_t serial)
ack a configure event
void set_gravity(zxdg_positioner_v6_gravity const &gravity)
set child surface gravity
static constexpr std::uint32_t get_synchronization_since_version
Minimum protocol version required for the get_synchronization function.
context object for keyboard shortcuts inhibitor
static constexpr std::uint32_t set_parent_of_since_version
Minimum protocol version required for the set_parent_of function.
std::function< void(zwp_tablet_pad_ring_v2_t)> & on_ring()
ring announced
std::function< void()> & on_up()
tablet tool is no longer making contact
static constexpr std::uint32_t set_content_type_since_version
Minimum protocol version required for the set_content_type function.
std::function< void(std::string)> & on_handle()
the exported surface handle
std::function< void(zwp_linux_dmabuf_feedback_v1_tranche_flags)> & on_tranche_flags()
tranche flags
static constexpr std::uint32_t set_app_id_since_version
Minimum protocol version required for the set_app_id function.
std::function< void(double, double)> & on_tilt()
tilt change event
std::function< void(std::string)> & on_commit_string()
text commit
std::function< void(uint32_t, double, double, double, double)> & on_update()
multi-finger pinch motion
std::function< void(int32_t, int32_t)> & on_logical_position()
position of the output within the global compositor space
static constexpr std::uint32_t set_preferred_language_since_version
Minimum protocol version required for the set_preferred_language function.
void set_title(std::string const &title)
set surface title
std::function< void(std::string)> & on_name()
tablet device name
static constexpr std::uint32_t language_since_version
Minimum protocol version required for the language function.
std::function< void(uint32_t, uint32_t, int32_t)> & on_end()
multi-finger pinch end
static constexpr std::uint32_t present_surface_since_version
Minimum protocol version required for the present_surface function.
offer to replace the contents of the primary selection
std::function< void()> & on_destroyed()
the imported surface handle has been destroyed
zwp_linux_buffer_release_v1_t get_release()
release fence for last-attached buffer
static constexpr std::uint32_t get_keyboard_timestamps_since_version
Minimum protocol version required for the get_keyboard_timestamps function.
std::function< void(uint32_t, uint32_t, int32_t)> & on_end()
multi-finger swipe end
std::function< void(uint32_t, uint32_t)> & on_delete_surrounding_text()
delete surrounding text
std::function< void(int32_t)> & on_slider()
Slider position change event.
void set_region(region_t const &region)
set a new lock region
static constexpr std::uint32_t grab_since_version
Minimum protocol version required for the grab function.
void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height)
zwp_pointer_gesture_hold_v1_t get_hold_gesture(pointer_t const &pointer)
get hold gesture
static constexpr std::uint32_t release_since_version
Minimum protocol version required for the release function.
static constexpr std::uint32_t set_cursor_since_version
Minimum protocol version required for the set_cursor function.
static const wayland::detail::bitfield< 10, 23 > lowercase
prefer lowercase letters
static const wayland::detail::bitfield< 10, 23 > auto_capitalization
switch to uppercase letters at the start of a sentence
interface for implementing keyboards
static const wayland::detail::bitfield< 10, 28 > completion
suggest word completions
static constexpr std::uint32_t export_toplevel_since_version
Minimum protocol version required for the export_toplevel function.
static constexpr std::uint32_t preedit_string_since_version
Minimum protocol version required for the preedit_string function.
std::function< void(double)> & on_rotation()
z-rotation change event
static constexpr std::uint32_t set_window_geometry_since_version
Minimum protocol version required for the set_window_geometry function.
void create(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const &flags)
create a wl_buffer from the given dmabufs
zxdg_imported_v2_t import_toplevel(std::string const &handle)
import a toplevel surface
std::function< void(std::string, uint32_t, uint32_t)> & on_surrounding_text()
surrounding text event
std::function< void(uint32_t, zwp_tablet_v2_t, surface_t)> & on_enter()
enter event
zwp_xwayland_keyboard_grab_v1_t grab_keyboard(surface_t const &surface, seat_t const &seat)
grab the keyboard to a surface
static constexpr std::uint32_t present_surface_for_mode_since_version
Minimum protocol version required for the present_surface_for_mode function.
static constexpr std::uint32_t unset_maximized_since_version
Minimum protocol version required for the unset_maximized function.
void set_feedback(std::string const &description, uint32_t serial)
set compositor feedback
std::function< void(uint32_t, uint32_t, surface_t, uint32_t)> & on_begin()
multi-finger hold begin
zxdg_positioner_v6_t create_positioner()
create a positioner object
static const wayland::detail::bitfield< 10, 23 > auto_correction
suggest word corrections
std::function< void(int, uint32_t)> & on_format_table()
format and modifier table
static constexpr std::uint32_t delete_surrounding_text_since_version
Minimum protocol version required for the delete_surrounding_text function.
void set_region(region_t const &region)
set a new confine region
static constexpr std::uint32_t add_since_version
Minimum protocol version required for the add function.
void set_text_change_cause(zwp_text_input_v3_change_cause const &cause)
indicates the cause of surrounding text change
std::function< void()> & on_done()
tablet group description events sequence complete
static constexpr std::uint32_t key_since_version
Minimum protocol version required for the key function.
bool can_get_surface_feedback() const
Check whether the get_surface_feedback function is available with the currently bound version of the ...
zwp_primary_selection_device_v1_t get_device(seat_t const &seat)
create a new primary selection device
static constexpr std::uint32_t create_immed_since_version
Minimum protocol version required for the create_immed function.
std::function< void(int32_t, int32_t)> & on_logical_size()
size of the output in the global compositor space
void set_app_id(std::string const &app_id)
specifies the application being activated
zwp_relative_pointer_v1_t get_relative_pointer(pointer_t const &pointer)
get a relative pointer object
std::function< void(array_t)> & on_tranche_formats()
supported buffer format modifier
std::function< void(std::string)> & on_offer()
advertise offered mime type
std::function< void(uint32_t)> & on_format()
supported buffer format
std::function< void(uint32_t)> & on_distance()
distance change event
static const wayland::detail::bitfield< 10, 28 > uppercase
prefer uppercase letters
void set_content_type(zwp_text_input_v3_content_hint const &hint, zwp_text_input_v3_content_purpose const &purpose)
set content purpose and hint
static constexpr std::uint32_t set_surrounding_text_since_version
Minimum protocol version required for the set_surrounding_text function.
std::function< void(int32_t)> & on_slider()
Slider position change event.
static constexpr std::uint32_t reset_since_version
Minimum protocol version required for the reset function.
static constexpr std::uint32_t set_feedback_since_version
Minimum protocol version required for the set_feedback function.
std::function< void()> & on_stop()
interaction stopped
static constexpr std::uint32_t get_pointer_timestamps_since_version
Minimum protocol version required for the get_pointer_timestamps function.
zwp_tablet_seat_v2_t get_tablet_seat(seat_t const &seat)
get the tablet seat
static constexpr std::uint32_t set_offset_since_version
Minimum protocol version required for the set_offset function.
std::function< void(zwp_tablet_pad_ring_v2_source)> & on_source()
ring event source
static constexpr std::uint32_t set_cursor_rectangle_since_version
Minimum protocol version required for the set_cursor_rectangle function.
std::function< void(double, int32_t)> & on_wheel()
Wheel delta event.
void enable()
Request text input to be enabled.
std::function< void(uint32_t, uint32_t)> & on_id()
tablet device USB vendor/product id
static const wayland::detail::bitfield< 10, 28 > auto_capitalization
switch to uppercase letters at the start of a sentence
std::function< void(uint32_t, uint32_t, int32_t)> & on_end()
multi-finger hold end
static constexpr std::uint32_t set_minimized_since_version
Minimum protocol version required for the set_minimized function.
std::function< void(surface_t)> & on_enter()
enter event
std::function< void(uint32_t, std::string)> & on_language()
language
std::function< void(zwp_tablet_tool_v2_capability)> & on_capability()
tool capability notification
void modifiers(uint32_t serial, uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, uint32_t group)
forward modifiers event
static const wayland::detail::bitfield< 10, 23 > password
hidden and sensitive text
static constexpr std::uint32_t get_pinch_gesture_since_version
Minimum protocol version required for the get_pinch_gesture function.
static constexpr std::uint32_t lock_pointer_since_version
Minimum protocol version required for the lock_pointer function.
bool can_release() const
Check whether the release function is available with the currently bound version of the protocol...
static constexpr std::uint32_t cursor_position_since_version
Minimum protocol version required for the cursor_position function.
std::function< void()> & on_proximity_out()
proximity out event
static constexpr std::uint32_t grab_keyboard_since_version
Minimum protocol version required for the grab_keyboard function.
static constexpr std::uint32_t get_swipe_gesture_since_version
Minimum protocol version required for the get_swipe_gesture function.
void resize(seat_t const &seat, uint32_t serial, zxdg_toplevel_v6_resize_edge const &edges)
start an interactive resize
std::function< void(uint32_t)> & on_distance()
distance change event
std::function< void(double, double)> & on_motion()
motion event
static constexpr std::uint32_t preedit_cursor_since_version
Minimum protocol version required for the preedit_cursor function.
std::function< void(int32_t, int32_t, int32_t, int32_t)> & on_configure()
configure the popup surface
void language(uint32_t serial, std::string const &language)
std::function< void()> & on_done()
tool description events sequence complete
static constexpr std::uint32_t set_mode_since_version
Minimum protocol version required for the set_mode function.
static const wayland::detail::bitfield< 10, 23 > auto_completion
suggest word completions
static constexpr std::uint32_t create_params_since_version
Minimum protocol version required for the create_params function.
std::function< void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> & on_preedit_styling()
pre-edit styling
void delete_surrounding_text(int32_t index, uint32_t length)
delete text
static constexpr std::uint32_t enable_since_version
Minimum protocol version required for the enable function.
void set_parent(zxdg_toplevel_v6_t const &parent)
set the parent of this surface
static constexpr std::uint32_t commit_since_version
Minimum protocol version required for the commit function.
std::function< void()> & on_confined()
pointer confined
static const wayland::detail::bitfield< 10, 23 > sensitive_data
typed text should not be stored
static constexpr std::uint32_t unset_mode_since_version
Minimum protocol version required for the unset_mode function.
std::function< void(uint32_t)> & on_input_panel_state()
state of the input panel
touchscreen input device