Wayland++  0.2.9
C++ Bindings for Wayland
wayland-client-protocol-unstable.hpp
1 #pragma once
2 
3 #include <array>
4 #include <functional>
5 #include <memory>
6 #include <string>
7 #include <vector>
8 
9 #include <wayland-client.hpp>
10 #include <wayland-client-protocol-extra.hpp>
11 
12 struct zwp_fullscreen_shell_v1;
13 struct zwp_fullscreen_shell_mode_feedback_v1;
14 struct zwp_idle_inhibit_manager_v1;
15 struct zwp_idle_inhibitor_v1;
16 struct zwp_input_method_context_v1;
17 struct zwp_input_method_v1;
18 struct zwp_input_panel_v1;
19 struct zwp_input_panel_surface_v1;
20 struct zwp_input_timestamps_manager_v1;
21 struct zwp_input_timestamps_v1;
22 struct zwp_keyboard_shortcuts_inhibit_manager_v1;
23 struct zwp_keyboard_shortcuts_inhibitor_v1;
24 struct zwp_linux_dmabuf_v1;
25 struct zwp_linux_buffer_params_v1;
26 struct zwp_linux_dmabuf_feedback_v1;
27 struct zwp_linux_explicit_synchronization_v1;
28 struct zwp_linux_surface_synchronization_v1;
29 struct zwp_linux_buffer_release_v1;
30 struct zwp_pointer_constraints_v1;
31 struct zwp_locked_pointer_v1;
32 struct zwp_confined_pointer_v1;
33 struct zwp_pointer_gestures_v1;
34 struct zwp_pointer_gesture_swipe_v1;
35 struct zwp_pointer_gesture_pinch_v1;
36 struct zwp_pointer_gesture_hold_v1;
37 struct zwp_primary_selection_device_manager_v1;
38 struct zwp_primary_selection_device_v1;
39 struct zwp_primary_selection_offer_v1;
40 struct zwp_primary_selection_source_v1;
41 struct zwp_relative_pointer_manager_v1;
42 struct zwp_relative_pointer_v1;
43 struct zwp_tablet_manager_v1;
44 struct zwp_tablet_seat_v1;
45 struct zwp_tablet_tool_v1;
46 struct zwp_tablet_v1;
47 struct zwp_tablet_manager_v2;
48 struct zwp_tablet_seat_v2;
49 struct zwp_tablet_tool_v2;
50 struct zwp_tablet_v2;
51 struct zwp_tablet_pad_ring_v2;
52 struct zwp_tablet_pad_strip_v2;
53 struct zwp_tablet_pad_group_v2;
54 struct zwp_tablet_pad_v2;
55 struct zwp_text_input_v1;
56 struct zwp_text_input_manager_v1;
57 struct zwp_text_input_v3;
58 struct zwp_text_input_manager_v3;
59 struct xdg_activation_v1;
60 struct xdg_activation_token_v1;
61 struct zxdg_decoration_manager_v1;
62 struct zxdg_toplevel_decoration_v1;
63 struct zxdg_exporter_v1;
64 struct zxdg_importer_v1;
65 struct zxdg_exported_v1;
66 struct zxdg_imported_v1;
67 struct zxdg_exporter_v2;
68 struct zxdg_importer_v2;
69 struct zxdg_exported_v2;
70 struct zxdg_imported_v2;
71 struct zxdg_output_manager_v1;
72 struct zxdg_output_v1;
73 struct zxdg_shell_v6;
74 struct zxdg_positioner_v6;
75 struct zxdg_surface_v6;
76 struct zxdg_toplevel_v6;
77 struct zxdg_popup_v6;
78 struct zwp_xwayland_keyboard_grab_manager_v1;
79 struct zwp_xwayland_keyboard_grab_v1;
80 
81 namespace wayland
82 {
83 class zwp_fullscreen_shell_v1_t;
84 enum class zwp_fullscreen_shell_v1_capability : uint32_t;
85 enum class zwp_fullscreen_shell_v1_present_method : uint32_t;
86 enum class zwp_fullscreen_shell_v1_error : uint32_t;
87 class zwp_fullscreen_shell_mode_feedback_v1_t;
88 class zwp_idle_inhibit_manager_v1_t;
89 class zwp_idle_inhibitor_v1_t;
90 class zwp_input_method_context_v1_t;
91 class zwp_input_method_v1_t;
92 class zwp_input_panel_v1_t;
93 class zwp_input_panel_surface_v1_t;
94 enum class zwp_input_panel_surface_v1_position : uint32_t;
95 class zwp_input_timestamps_manager_v1_t;
96 class zwp_input_timestamps_v1_t;
97 class zwp_keyboard_shortcuts_inhibit_manager_v1_t;
98 enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t;
99 class zwp_keyboard_shortcuts_inhibitor_v1_t;
100 class zwp_linux_dmabuf_v1_t;
101 class zwp_linux_buffer_params_v1_t;
102 enum class zwp_linux_buffer_params_v1_error : uint32_t;
103 struct zwp_linux_buffer_params_v1_flags;
104 class zwp_linux_dmabuf_feedback_v1_t;
105 struct zwp_linux_dmabuf_feedback_v1_tranche_flags;
106 class zwp_linux_explicit_synchronization_v1_t;
107 enum class zwp_linux_explicit_synchronization_v1_error : uint32_t;
108 class zwp_linux_surface_synchronization_v1_t;
109 enum class zwp_linux_surface_synchronization_v1_error : uint32_t;
110 class zwp_linux_buffer_release_v1_t;
111 class zwp_pointer_constraints_v1_t;
112 enum class zwp_pointer_constraints_v1_error : uint32_t;
113 enum class zwp_pointer_constraints_v1_lifetime : uint32_t;
114 class zwp_locked_pointer_v1_t;
115 class zwp_confined_pointer_v1_t;
116 class zwp_pointer_gestures_v1_t;
117 class zwp_pointer_gesture_swipe_v1_t;
118 class zwp_pointer_gesture_pinch_v1_t;
119 class zwp_pointer_gesture_hold_v1_t;
120 class zwp_primary_selection_device_manager_v1_t;
121 class zwp_primary_selection_device_v1_t;
122 class zwp_primary_selection_offer_v1_t;
123 class zwp_primary_selection_source_v1_t;
124 class zwp_relative_pointer_manager_v1_t;
125 class zwp_relative_pointer_v1_t;
126 class zwp_tablet_manager_v1_t;
127 class zwp_tablet_seat_v1_t;
128 class zwp_tablet_tool_v1_t;
129 enum class zwp_tablet_tool_v1_type : uint32_t;
130 enum class zwp_tablet_tool_v1_capability : uint32_t;
131 enum class zwp_tablet_tool_v1_button_state : uint32_t;
132 enum class zwp_tablet_tool_v1_error : uint32_t;
133 class zwp_tablet_v1_t;
134 class zwp_tablet_manager_v2_t;
135 class zwp_tablet_seat_v2_t;
136 class zwp_tablet_tool_v2_t;
137 enum class zwp_tablet_tool_v2_type : uint32_t;
138 enum class zwp_tablet_tool_v2_capability : uint32_t;
139 enum class zwp_tablet_tool_v2_button_state : uint32_t;
140 enum class zwp_tablet_tool_v2_error : uint32_t;
141 class zwp_tablet_v2_t;
142 class zwp_tablet_pad_ring_v2_t;
143 enum class zwp_tablet_pad_ring_v2_source : uint32_t;
144 class zwp_tablet_pad_strip_v2_t;
145 enum class zwp_tablet_pad_strip_v2_source : uint32_t;
146 class zwp_tablet_pad_group_v2_t;
147 class zwp_tablet_pad_v2_t;
148 enum class zwp_tablet_pad_v2_button_state : uint32_t;
149 class zwp_text_input_v1_t;
150 struct zwp_text_input_v1_content_hint;
151 enum class zwp_text_input_v1_content_purpose : uint32_t;
152 enum class zwp_text_input_v1_preedit_style : uint32_t;
153 enum class zwp_text_input_v1_text_direction : uint32_t;
154 class zwp_text_input_manager_v1_t;
155 class zwp_text_input_v3_t;
156 enum class zwp_text_input_v3_change_cause : uint32_t;
157 struct zwp_text_input_v3_content_hint;
158 enum class zwp_text_input_v3_content_purpose : uint32_t;
159 class zwp_text_input_manager_v3_t;
160 class xdg_activation_v1_t;
161 class xdg_activation_token_v1_t;
162 enum class xdg_activation_token_v1_error : uint32_t;
163 class zxdg_decoration_manager_v1_t;
164 class zxdg_toplevel_decoration_v1_t;
165 enum class zxdg_toplevel_decoration_v1_error : uint32_t;
166 enum class zxdg_toplevel_decoration_v1_mode : uint32_t;
167 class zxdg_exporter_v1_t;
168 class zxdg_importer_v1_t;
169 class zxdg_exported_v1_t;
170 class zxdg_imported_v1_t;
171 class zxdg_exporter_v2_t;
172 enum class zxdg_exporter_v2_error : uint32_t;
173 class zxdg_importer_v2_t;
174 class zxdg_exported_v2_t;
175 class zxdg_imported_v2_t;
176 enum class zxdg_imported_v2_error : uint32_t;
177 class zxdg_output_manager_v1_t;
178 class zxdg_output_v1_t;
179 class zxdg_shell_v6_t;
180 enum class zxdg_shell_v6_error : uint32_t;
181 class zxdg_positioner_v6_t;
182 enum class zxdg_positioner_v6_error : uint32_t;
183 struct zxdg_positioner_v6_anchor;
184 struct zxdg_positioner_v6_gravity;
185 struct zxdg_positioner_v6_constraint_adjustment;
186 class zxdg_surface_v6_t;
187 enum class zxdg_surface_v6_error : uint32_t;
188 class zxdg_toplevel_v6_t;
189 struct zxdg_toplevel_v6_resize_edge;
190 enum class zxdg_toplevel_v6_state : uint32_t;
191 class zxdg_popup_v6_t;
192 enum class zxdg_popup_v6_error : uint32_t;
193 class zwp_xwayland_keyboard_grab_manager_v1_t;
194 class zwp_xwayland_keyboard_grab_v1_t;
195 
196 namespace detail
197 {
198  extern const wl_interface zwp_fullscreen_shell_v1_interface;
199  extern const wl_interface zwp_fullscreen_shell_mode_feedback_v1_interface;
200  extern const wl_interface zwp_idle_inhibit_manager_v1_interface;
201  extern const wl_interface zwp_idle_inhibitor_v1_interface;
202  extern const wl_interface zwp_input_method_context_v1_interface;
203  extern const wl_interface zwp_input_method_v1_interface;
204  extern const wl_interface zwp_input_panel_v1_interface;
205  extern const wl_interface zwp_input_panel_surface_v1_interface;
206  extern const wl_interface zwp_input_timestamps_manager_v1_interface;
207  extern const wl_interface zwp_input_timestamps_v1_interface;
208  extern const wl_interface zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
209  extern const wl_interface zwp_keyboard_shortcuts_inhibitor_v1_interface;
210  extern const wl_interface zwp_linux_dmabuf_v1_interface;
211  extern const wl_interface zwp_linux_buffer_params_v1_interface;
212  extern const wl_interface zwp_linux_dmabuf_feedback_v1_interface;
213  extern const wl_interface zwp_linux_explicit_synchronization_v1_interface;
214  extern const wl_interface zwp_linux_surface_synchronization_v1_interface;
215  extern const wl_interface zwp_linux_buffer_release_v1_interface;
216  extern const wl_interface zwp_pointer_constraints_v1_interface;
217  extern const wl_interface zwp_locked_pointer_v1_interface;
218  extern const wl_interface zwp_confined_pointer_v1_interface;
219  extern const wl_interface zwp_pointer_gestures_v1_interface;
220  extern const wl_interface zwp_pointer_gesture_swipe_v1_interface;
221  extern const wl_interface zwp_pointer_gesture_pinch_v1_interface;
222  extern const wl_interface zwp_pointer_gesture_hold_v1_interface;
223  extern const wl_interface zwp_primary_selection_device_manager_v1_interface;
224  extern const wl_interface zwp_primary_selection_device_v1_interface;
225  extern const wl_interface zwp_primary_selection_offer_v1_interface;
226  extern const wl_interface zwp_primary_selection_source_v1_interface;
227  extern const wl_interface zwp_relative_pointer_manager_v1_interface;
228  extern const wl_interface zwp_relative_pointer_v1_interface;
229  extern const wl_interface zwp_tablet_manager_v1_interface;
230  extern const wl_interface zwp_tablet_seat_v1_interface;
231  extern const wl_interface zwp_tablet_tool_v1_interface;
232  extern const wl_interface zwp_tablet_v1_interface;
233  extern const wl_interface zwp_tablet_manager_v2_interface;
234  extern const wl_interface zwp_tablet_seat_v2_interface;
235  extern const wl_interface zwp_tablet_tool_v2_interface;
236  extern const wl_interface zwp_tablet_v2_interface;
237  extern const wl_interface zwp_tablet_pad_ring_v2_interface;
238  extern const wl_interface zwp_tablet_pad_strip_v2_interface;
239  extern const wl_interface zwp_tablet_pad_group_v2_interface;
240  extern const wl_interface zwp_tablet_pad_v2_interface;
241  extern const wl_interface zwp_text_input_v1_interface;
242  extern const wl_interface zwp_text_input_manager_v1_interface;
243  extern const wl_interface zwp_text_input_v3_interface;
244  extern const wl_interface zwp_text_input_manager_v3_interface;
245  extern const wl_interface xdg_activation_v1_interface;
246  extern const wl_interface xdg_activation_token_v1_interface;
247  extern const wl_interface zxdg_decoration_manager_v1_interface;
248  extern const wl_interface zxdg_toplevel_decoration_v1_interface;
249  extern const wl_interface zxdg_exporter_v1_interface;
250  extern const wl_interface zxdg_importer_v1_interface;
251  extern const wl_interface zxdg_exported_v1_interface;
252  extern const wl_interface zxdg_imported_v1_interface;
253  extern const wl_interface zxdg_exporter_v2_interface;
254  extern const wl_interface zxdg_importer_v2_interface;
255  extern const wl_interface zxdg_exported_v2_interface;
256  extern const wl_interface zxdg_imported_v2_interface;
257  extern const wl_interface zxdg_output_manager_v1_interface;
258  extern const wl_interface zxdg_output_v1_interface;
259  extern const wl_interface zxdg_shell_v6_interface;
260  extern const wl_interface zxdg_positioner_v6_interface;
261  extern const wl_interface zxdg_surface_v6_interface;
262  extern const wl_interface zxdg_toplevel_v6_interface;
263  extern const wl_interface zxdg_popup_v6_interface;
264  extern const wl_interface zwp_xwayland_keyboard_grab_manager_v1_interface;
265  extern const wl_interface zwp_xwayland_keyboard_grab_v1_interface;
266 }
267 
306 {
307 private:
308  struct events_t : public detail::events_base_t
309  {
310  std::function<void(zwp_fullscreen_shell_v1_capability)> capability;
311  };
312 
313  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
314 
315  zwp_fullscreen_shell_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
316 
317 public:
319  explicit zwp_fullscreen_shell_v1_t(const proxy_t &proxy);
320  zwp_fullscreen_shell_v1_t(zwp_fullscreen_shell_v1 *p, wrapper_type t = wrapper_type::standard);
321 
322  zwp_fullscreen_shell_v1_t proxy_create_wrapper();
323 
324  static const std::string interface_name;
325 
326  operator zwp_fullscreen_shell_v1*() const;
327 
337  void release();
338 
341  static constexpr std::uint32_t release_since_version = 1;
342 
371  void present_surface(surface_t const& surface, zwp_fullscreen_shell_v1_present_method const& method, output_t const& output);
372 
375  static constexpr std::uint32_t present_surface_since_version = 1;
376 
425  zwp_fullscreen_shell_mode_feedback_v1_t present_surface_for_mode(surface_t const& surface, output_t const& output, int32_t framerate);
426 
429  static constexpr std::uint32_t present_surface_for_mode_since_version = 1;
430 
444  std::function<void(zwp_fullscreen_shell_v1_capability)> &on_capability();
445 
446 };
447 
473 enum class zwp_fullscreen_shell_v1_capability : uint32_t
474  {
476  arbitrary_modes = 1,
478  cursor_plane = 2
479 };
480 
488 enum class zwp_fullscreen_shell_v1_present_method : uint32_t
489  {
491  _default = 0,
493  center = 1,
495  zoom = 2,
497  zoom_crop = 3,
499  stretch = 4
500 };
501 
507 enum class zwp_fullscreen_shell_v1_error : uint32_t
508  {
510  invalid_method = 0,
512  role = 1
513 };
514 
515 
519 class zwp_fullscreen_shell_mode_feedback_v1_t : public proxy_t
520 {
521 private:
522  struct events_t : public detail::events_base_t
523  {
524  std::function<void()> mode_successful;
525  std::function<void()> mode_failed;
526  std::function<void()> present_cancelled;
527  };
528 
529  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
530 
531  zwp_fullscreen_shell_mode_feedback_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
532 
533 public:
534  zwp_fullscreen_shell_mode_feedback_v1_t();
535  explicit zwp_fullscreen_shell_mode_feedback_v1_t(const proxy_t &proxy);
536  zwp_fullscreen_shell_mode_feedback_v1_t(zwp_fullscreen_shell_mode_feedback_v1 *p, wrapper_type t = wrapper_type::standard);
537 
538  zwp_fullscreen_shell_mode_feedback_v1_t proxy_create_wrapper();
539 
540  static const std::string interface_name;
541 
542  operator zwp_fullscreen_shell_mode_feedback_v1*() const;
543 
554  std::function<void()> &on_mode_successful();
555 
566  std::function<void()> &on_mode_failed();
567 
578  std::function<void()> &on_present_cancelled();
579 
580 };
581 
582 
600 {
601 private:
602  struct events_t : public detail::events_base_t
603  {
604  };
605 
606  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
607 
608  zwp_idle_inhibit_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
609 
610 public:
612  explicit zwp_idle_inhibit_manager_v1_t(const proxy_t &proxy);
613  zwp_idle_inhibit_manager_v1_t(zwp_idle_inhibit_manager_v1 *p, wrapper_type t = wrapper_type::standard);
614 
615  zwp_idle_inhibit_manager_v1_t proxy_create_wrapper();
616 
617  static const std::string interface_name;
618 
619  operator zwp_idle_inhibit_manager_v1*() const;
620 
628 
631  static constexpr std::uint32_t create_inhibitor_since_version = 1;
632 
633 };
634 
635 
653 {
654 private:
655  struct events_t : public detail::events_base_t
656  {
657  };
658 
659  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
660 
661  zwp_idle_inhibitor_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
662 
663 public:
665  explicit zwp_idle_inhibitor_v1_t(const proxy_t &proxy);
666  zwp_idle_inhibitor_v1_t(zwp_idle_inhibitor_v1 *p, wrapper_type t = wrapper_type::standard);
667 
668  zwp_idle_inhibitor_v1_t proxy_create_wrapper();
669 
670  static const std::string interface_name;
671 
672  operator zwp_idle_inhibitor_v1*() const;
673 
674 };
675 
676 
705 {
706 private:
707  struct events_t : public detail::events_base_t
708  {
709  std::function<void(std::string, uint32_t, uint32_t)> surrounding_text;
710  std::function<void()> reset;
711  std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> content_type;
712  std::function<void(uint32_t, uint32_t)> invoke_action;
713  std::function<void(uint32_t)> commit_state;
714  std::function<void(std::string)> preferred_language;
715  };
716 
717  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
718 
719  zwp_input_method_context_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
720 
721 public:
723  explicit zwp_input_method_context_v1_t(const proxy_t &proxy);
724  zwp_input_method_context_v1_t(zwp_input_method_context_v1 *p, wrapper_type t = wrapper_type::standard);
725 
726  zwp_input_method_context_v1_t proxy_create_wrapper();
727 
728  static const std::string interface_name;
729 
730  operator zwp_input_method_context_v1*() const;
731 
747  void commit_string(uint32_t serial, std::string const& text);
748 
751  static constexpr std::uint32_t commit_string_since_version = 1;
752 
767  void preedit_string(uint32_t serial, std::string const& text, std::string const& commit);
768 
771  static constexpr std::uint32_t preedit_string_since_version = 1;
772 
786  void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const& style);
787 
790  static constexpr std::uint32_t preedit_styling_since_version = 1;
791 
803  void preedit_cursor(int32_t index);
804 
807  static constexpr std::uint32_t preedit_cursor_since_version = 1;
808 
819  void delete_surrounding_text(int32_t index, uint32_t length);
820 
823  static constexpr std::uint32_t delete_surrounding_text_since_version = 1;
824 
841  void cursor_position(int32_t index, int32_t anchor);
842 
845  static constexpr std::uint32_t cursor_position_since_version = 1;
846 
851  void modifiers_map(array_t const& map);
852 
855  static constexpr std::uint32_t modifiers_map_since_version = 1;
856 
870  void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const& state, uint32_t modifiers);
871 
874  static constexpr std::uint32_t keysym_since_version = 1;
875 
885 
888  static constexpr std::uint32_t grab_keyboard_since_version = 1;
889 
904  void key(uint32_t serial, uint32_t time, uint32_t key, keyboard_key_state const& state);
905 
908  static constexpr std::uint32_t key_since_version = 1;
909 
923  void modifiers(uint32_t serial, uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, uint32_t group);
924 
927  static constexpr std::uint32_t modifiers_since_version = 1;
928 
934  void language(uint32_t serial, std::string const& language);
935 
938  static constexpr std::uint32_t language_since_version = 1;
939 
945  void text_direction(uint32_t serial, uint32_t direction);
946 
949  static constexpr std::uint32_t text_direction_since_version = 1;
950 
963  std::function<void(std::string, uint32_t, uint32_t)> &on_surrounding_text();
964 
968  std::function<void()> &on_reset();
969 
975  std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> &on_content_type();
976 
982  std::function<void(uint32_t, uint32_t)> &on_invoke_action();
983 
988  std::function<void(uint32_t)> &on_commit_state();
989 
994  std::function<void(std::string)> &on_preferred_language();
995 
996 };
997 
998 
1008 {
1009 private:
1010  struct events_t : public detail::events_base_t
1011  {
1012  std::function<void(zwp_input_method_context_v1_t)> activate;
1013  std::function<void(zwp_input_method_context_v1_t)> deactivate;
1014  };
1015 
1016  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1017 
1018  zwp_input_method_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1019 
1020 public:
1022  explicit zwp_input_method_v1_t(const proxy_t &proxy);
1023  zwp_input_method_v1_t(zwp_input_method_v1 *p, wrapper_type t = wrapper_type::standard);
1024 
1025  zwp_input_method_v1_t proxy_create_wrapper();
1026 
1027  static const std::string interface_name;
1028 
1029  operator zwp_input_method_v1*() const;
1030 
1038  std::function<void(zwp_input_method_context_v1_t)> &on_activate();
1039 
1048  std::function<void(zwp_input_method_context_v1_t)> &on_deactivate();
1049 
1050 };
1051 
1052 
1059 {
1060 private:
1061  struct events_t : public detail::events_base_t
1062  {
1063  };
1064 
1065  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1066 
1067  zwp_input_panel_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1068 
1069 public:
1071  explicit zwp_input_panel_v1_t(const proxy_t &proxy);
1072  zwp_input_panel_v1_t(zwp_input_panel_v1 *p, wrapper_type t = wrapper_type::standard);
1073 
1074  zwp_input_panel_v1_t proxy_create_wrapper();
1075 
1076  static const std::string interface_name;
1077 
1078  operator zwp_input_panel_v1*() const;
1079 
1084  zwp_input_panel_surface_v1_t get_input_panel_surface(surface_t const& surface);
1085 
1088  static constexpr std::uint32_t get_input_panel_surface_since_version = 1;
1089 
1090 };
1091 
1092 
1096 class zwp_input_panel_surface_v1_t : public proxy_t
1097 {
1098 private:
1099  struct events_t : public detail::events_base_t
1100  {
1101  };
1102 
1103  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1104 
1105  zwp_input_panel_surface_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1106 
1107 public:
1108  zwp_input_panel_surface_v1_t();
1109  explicit zwp_input_panel_surface_v1_t(const proxy_t &proxy);
1110  zwp_input_panel_surface_v1_t(zwp_input_panel_surface_v1 *p, wrapper_type t = wrapper_type::standard);
1111 
1112  zwp_input_panel_surface_v1_t proxy_create_wrapper();
1113 
1114  static const std::string interface_name;
1115 
1116  operator zwp_input_panel_surface_v1*() const;
1117 
1127  void set_toplevel(output_t const& output, zwp_input_panel_surface_v1_position const& position);
1128 
1131  static constexpr std::uint32_t set_toplevel_since_version = 1;
1132 
1141  void set_overlay_panel();
1142 
1145  static constexpr std::uint32_t set_overlay_panel_since_version = 1;
1146 
1147 };
1148 
1152 enum class zwp_input_panel_surface_v1_position : uint32_t
1153  {
1154  center_bottom = 0
1155 };
1156 
1157 
1165 {
1166 private:
1167  struct events_t : public detail::events_base_t
1168  {
1169  };
1170 
1171  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1172 
1173  zwp_input_timestamps_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1174 
1175 public:
1177  explicit zwp_input_timestamps_manager_v1_t(const proxy_t &proxy);
1178  zwp_input_timestamps_manager_v1_t(zwp_input_timestamps_manager_v1 *p, wrapper_type t = wrapper_type::standard);
1179 
1180  zwp_input_timestamps_manager_v1_t proxy_create_wrapper();
1181 
1182  static const std::string interface_name;
1183 
1184  operator zwp_input_timestamps_manager_v1*() const;
1185 
1200 
1203  static constexpr std::uint32_t get_keyboard_timestamps_since_version = 1;
1204 
1219 
1222  static constexpr std::uint32_t get_pointer_timestamps_since_version = 1;
1223 
1238 
1241  static constexpr std::uint32_t get_touch_timestamps_since_version = 1;
1242 
1243 };
1244 
1245 
1254 {
1255 private:
1256  struct events_t : public detail::events_base_t
1257  {
1258  std::function<void(uint32_t, uint32_t, uint32_t)> timestamp;
1259  };
1260 
1261  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1262 
1263  zwp_input_timestamps_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1264 
1265 public:
1267  explicit zwp_input_timestamps_v1_t(const proxy_t &proxy);
1268  zwp_input_timestamps_v1_t(zwp_input_timestamps_v1 *p, wrapper_type t = wrapper_type::standard);
1269 
1270  zwp_input_timestamps_v1_t proxy_create_wrapper();
1271 
1272  static const std::string interface_name;
1273 
1274  operator zwp_input_timestamps_v1*() const;
1275 
1297  std::function<void(uint32_t, uint32_t, uint32_t)> &on_timestamp();
1298 
1299 };
1300 
1301 
1308 {
1309 private:
1310  struct events_t : public detail::events_base_t
1311  {
1312  };
1313 
1314  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1315 
1316  zwp_keyboard_shortcuts_inhibit_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1317 
1318 public:
1321  zwp_keyboard_shortcuts_inhibit_manager_v1_t(zwp_keyboard_shortcuts_inhibit_manager_v1 *p, wrapper_type t = wrapper_type::standard);
1322 
1323  zwp_keyboard_shortcuts_inhibit_manager_v1_t proxy_create_wrapper();
1324 
1325  static const std::string interface_name;
1326 
1327  operator zwp_keyboard_shortcuts_inhibit_manager_v1*() const;
1328 
1341 
1344  static constexpr std::uint32_t inhibit_shortcuts_since_version = 1;
1345 
1346 };
1347 
1351 enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t
1352  {
1354  already_inhibited = 0
1355 };
1356 
1357 
1396 {
1397 private:
1398  struct events_t : public detail::events_base_t
1399  {
1400  std::function<void()> active;
1401  std::function<void()> inactive;
1402  };
1403 
1404  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1405 
1406  zwp_keyboard_shortcuts_inhibitor_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1407 
1408 public:
1410  explicit zwp_keyboard_shortcuts_inhibitor_v1_t(const proxy_t &proxy);
1411  zwp_keyboard_shortcuts_inhibitor_v1_t(zwp_keyboard_shortcuts_inhibitor_v1 *p, wrapper_type t = wrapper_type::standard);
1412 
1413  zwp_keyboard_shortcuts_inhibitor_v1_t proxy_create_wrapper();
1414 
1415  static const std::string interface_name;
1416 
1417  operator zwp_keyboard_shortcuts_inhibitor_v1*() const;
1418 
1434  std::function<void()> &on_active();
1435 
1442  std::function<void()> &on_inactive();
1443 
1444 };
1445 
1446 
1520 {
1521 private:
1522  struct events_t : public detail::events_base_t
1523  {
1524  std::function<void(uint32_t)> format;
1525  std::function<void(uint32_t, uint32_t, uint32_t)> modifier;
1526  };
1527 
1528  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1529 
1530  zwp_linux_dmabuf_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1531 
1532 public:
1534  explicit zwp_linux_dmabuf_v1_t(const proxy_t &proxy);
1535  zwp_linux_dmabuf_v1_t(zwp_linux_dmabuf_v1 *p, wrapper_type t = wrapper_type::standard);
1536 
1537  zwp_linux_dmabuf_v1_t proxy_create_wrapper();
1538 
1539  static const std::string interface_name;
1540 
1541  operator zwp_linux_dmabuf_v1*() const;
1542 
1553 
1556  static constexpr std::uint32_t create_params_since_version = 1;
1557 
1567 
1570  static constexpr std::uint32_t get_default_feedback_since_version = 4;
1571 
1575  bool can_get_default_feedback() const;
1576 
1589 
1592  static constexpr std::uint32_t get_surface_feedback_since_version = 4;
1593 
1597  bool can_get_surface_feedback() const;
1598 
1615  std::function<void(uint32_t)> &on_format();
1616 
1647  std::function<void(uint32_t, uint32_t, uint32_t)> &on_modifier();
1648 
1649 };
1650 
1651 
1671 {
1672 private:
1673  struct events_t : public detail::events_base_t
1674  {
1675  std::function<void(buffer_t)> created;
1676  std::function<void()> failed;
1677  };
1678 
1679  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1680 
1681  zwp_linux_buffer_params_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1682 
1683 public:
1685  explicit zwp_linux_buffer_params_v1_t(const proxy_t &proxy);
1686  zwp_linux_buffer_params_v1_t(zwp_linux_buffer_params_v1 *p, wrapper_type t = wrapper_type::standard);
1687 
1688  zwp_linux_buffer_params_v1_t proxy_create_wrapper();
1689 
1690  static const std::string interface_name;
1691 
1692  operator zwp_linux_buffer_params_v1*() const;
1693 
1720  void add(int fd, uint32_t plane_idx, uint32_t offset, uint32_t stride, uint32_t modifier_hi, uint32_t modifier_lo);
1721 
1724  static constexpr std::uint32_t add_since_version = 1;
1725 
1793  void create(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const& flags);
1794 
1797  static constexpr std::uint32_t create_since_version = 1;
1798 
1831  buffer_t create_immed(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const& flags);
1832 
1835  static constexpr std::uint32_t create_immed_since_version = 2;
1836 
1840  bool can_create_immed() const;
1841 
1852  std::function<void(buffer_t)> &on_created();
1853 
1864  std::function<void()> &on_failed();
1865 
1866 };
1867 
1871 enum class zwp_linux_buffer_params_v1_error : uint32_t
1872  {
1874  already_used = 0,
1876  plane_idx = 1,
1878  plane_set = 2,
1880  incomplete = 3,
1882  invalid_format = 4,
1884  invalid_dimensions = 5,
1886  out_of_bounds = 6,
1888  invalid_wl_buffer = 7
1889 };
1890 
1894 struct zwp_linux_buffer_params_v1_flags : public detail::bitfield<3, 6>
1895 {
1896  zwp_linux_buffer_params_v1_flags(const detail::bitfield<3, 6> &b)
1897  : detail::bitfield<3, 6>(b) {}
1898  zwp_linux_buffer_params_v1_flags(const uint32_t value)
1899  : detail::bitfield<3, 6>(value) {}
1901  static const detail::bitfield<3, 6> y_invert;
1903  static const detail::bitfield<3, 6> interlaced;
1905  static const detail::bitfield<3, 6> bottom_first;
1906 };
1907 
1908 
1939 {
1940 private:
1941  struct events_t : public detail::events_base_t
1942  {
1943  std::function<void()> done;
1944  std::function<void(int, uint32_t)> format_table;
1945  std::function<void(array_t)> main_device;
1946  std::function<void()> tranche_done;
1947  std::function<void(array_t)> tranche_target_device;
1948  std::function<void(array_t)> tranche_formats;
1949  std::function<void(zwp_linux_dmabuf_feedback_v1_tranche_flags)> tranche_flags;
1950  };
1951 
1952  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1953 
1954  zwp_linux_dmabuf_feedback_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1955 
1956 public:
1958  explicit zwp_linux_dmabuf_feedback_v1_t(const proxy_t &proxy);
1959  zwp_linux_dmabuf_feedback_v1_t(zwp_linux_dmabuf_feedback_v1 *p, wrapper_type t = wrapper_type::standard);
1960 
1961  zwp_linux_dmabuf_feedback_v1_t proxy_create_wrapper();
1962 
1963  static const std::string interface_name;
1964 
1965  operator zwp_linux_dmabuf_feedback_v1*() const;
1966 
1976  std::function<void()> &on_done();
1977 
1998  std::function<void(int, uint32_t)> &on_format_table();
1999 
2028  std::function<void(array_t)> &on_main_device();
2029 
2038  std::function<void()> &on_tranche_done();
2039 
2071  std::function<void(array_t)> &on_tranche_target_device();
2072 
2102  std::function<void(array_t)> &on_tranche_formats();
2103 
2117  std::function<void(zwp_linux_dmabuf_feedback_v1_tranche_flags)> &on_tranche_flags();
2118 
2119 };
2120 
2124 struct zwp_linux_dmabuf_feedback_v1_tranche_flags : public detail::bitfield<1, 7>
2125 {
2126  zwp_linux_dmabuf_feedback_v1_tranche_flags(const detail::bitfield<1, 7> &b)
2127  : detail::bitfield<1, 7>(b) {}
2128  zwp_linux_dmabuf_feedback_v1_tranche_flags(const uint32_t value)
2129  : detail::bitfield<1, 7>(value) {}
2131  static const detail::bitfield<1, 7> scanout;
2132 };
2133 
2134 
2156 {
2157 private:
2158  struct events_t : public detail::events_base_t
2159  {
2160  };
2161 
2162  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2163 
2164  zwp_linux_explicit_synchronization_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2165 
2166 public:
2168  explicit zwp_linux_explicit_synchronization_v1_t(const proxy_t &proxy);
2169  zwp_linux_explicit_synchronization_v1_t(zwp_linux_explicit_synchronization_v1 *p, wrapper_type t = wrapper_type::standard);
2170 
2171  zwp_linux_explicit_synchronization_v1_t proxy_create_wrapper();
2172 
2173  static const std::string interface_name;
2174 
2175  operator zwp_linux_explicit_synchronization_v1*() const;
2176 
2195 
2198  static constexpr std::uint32_t get_synchronization_since_version = 1;
2199 
2200 };
2201 
2205 enum class zwp_linux_explicit_synchronization_v1_error : uint32_t
2206  {
2208  synchronization_exists = 0
2209 };
2210 
2211 
2247 {
2248 private:
2249  struct events_t : public detail::events_base_t
2250  {
2251  };
2252 
2253  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2254 
2255  zwp_linux_surface_synchronization_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2256 
2257 public:
2259  explicit zwp_linux_surface_synchronization_v1_t(const proxy_t &proxy);
2260  zwp_linux_surface_synchronization_v1_t(zwp_linux_surface_synchronization_v1 *p, wrapper_type t = wrapper_type::standard);
2261 
2262  zwp_linux_surface_synchronization_v1_t proxy_create_wrapper();
2263 
2264  static const std::string interface_name;
2265 
2266  operator zwp_linux_surface_synchronization_v1*() const;
2267 
2296  void set_acquire_fence(int fd);
2297 
2300  static constexpr std::uint32_t set_acquire_fence_since_version = 1;
2301 
2325 
2328  static constexpr std::uint32_t get_release_since_version = 1;
2329 
2330 };
2331 
2335 enum class zwp_linux_surface_synchronization_v1_error : uint32_t
2336  {
2338  invalid_fence = 0,
2340  duplicate_fence = 1,
2342  duplicate_release = 2,
2344  no_surface = 3,
2346  unsupported_buffer = 4,
2348  no_buffer = 5
2349 };
2350 
2351 
2374 {
2375 private:
2376  struct events_t : public detail::events_base_t
2377  {
2378  std::function<void(int)> fenced_release;
2379  std::function<void()> immediate_release;
2380  };
2381 
2382  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2383 
2384  zwp_linux_buffer_release_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2385 
2386 public:
2388  explicit zwp_linux_buffer_release_v1_t(const proxy_t &proxy);
2389  zwp_linux_buffer_release_v1_t(zwp_linux_buffer_release_v1 *p, wrapper_type t = wrapper_type::standard);
2390 
2391  zwp_linux_buffer_release_v1_t proxy_create_wrapper();
2392 
2393  static const std::string interface_name;
2394 
2395  operator zwp_linux_buffer_release_v1*() const;
2396 
2413  std::function<void(int)> &on_fenced_release();
2414 
2430  std::function<void()> &on_immediate_release();
2431 
2432 };
2433 
2434 
2453 {
2454 private:
2455  struct events_t : public detail::events_base_t
2456  {
2457  };
2458 
2459  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2460 
2461  zwp_pointer_constraints_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2462 
2463 public:
2465  explicit zwp_pointer_constraints_v1_t(const proxy_t &proxy);
2466  zwp_pointer_constraints_v1_t(zwp_pointer_constraints_v1 *p, wrapper_type t = wrapper_type::standard);
2467 
2468  zwp_pointer_constraints_v1_t proxy_create_wrapper();
2469 
2470  static const std::string interface_name;
2471 
2472  operator zwp_pointer_constraints_v1*() const;
2473 
2516  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);
2517 
2520  static constexpr std::uint32_t lock_pointer_since_version = 1;
2521 
2547  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);
2548 
2551  static constexpr std::uint32_t confine_pointer_since_version = 1;
2552 
2553 };
2554 
2561 enum class zwp_pointer_constraints_v1_error : uint32_t
2562  {
2564  already_constrained = 1
2565 };
2566 
2574 enum class zwp_pointer_constraints_v1_lifetime : uint32_t
2575  {
2576  oneshot = 1,
2577  persistent = 2
2578 };
2579 
2580 
2609 {
2610 private:
2611  struct events_t : public detail::events_base_t
2612  {
2613  std::function<void()> locked;
2614  std::function<void()> unlocked;
2615  };
2616 
2617  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2618 
2619  zwp_locked_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2620 
2621 public:
2623  explicit zwp_locked_pointer_v1_t(const proxy_t &proxy);
2624  zwp_locked_pointer_v1_t(zwp_locked_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
2625 
2626  zwp_locked_pointer_v1_t proxy_create_wrapper();
2627 
2628  static const std::string interface_name;
2629 
2630  operator zwp_locked_pointer_v1*() const;
2631 
2649  void set_cursor_position_hint(double surface_x, double surface_y);
2650 
2653  static constexpr std::uint32_t set_cursor_position_hint_since_version = 1;
2654 
2667  void set_region(region_t const& region);
2668 
2671  static constexpr std::uint32_t set_region_since_version = 1;
2672 
2678  std::function<void()> &on_locked();
2679 
2690  std::function<void()> &on_unlocked();
2691 
2692 };
2693 
2694 
2716 {
2717 private:
2718  struct events_t : public detail::events_base_t
2719  {
2720  std::function<void()> confined;
2721  std::function<void()> unconfined;
2722  };
2723 
2724  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2725 
2726  zwp_confined_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2727 
2728 public:
2730  explicit zwp_confined_pointer_v1_t(const proxy_t &proxy);
2731  zwp_confined_pointer_v1_t(zwp_confined_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
2732 
2733  zwp_confined_pointer_v1_t proxy_create_wrapper();
2734 
2735  static const std::string interface_name;
2736 
2737  operator zwp_confined_pointer_v1*() const;
2738 
2760  void set_region(region_t const& region);
2761 
2764  static constexpr std::uint32_t set_region_since_version = 1;
2765 
2772  std::function<void()> &on_confined();
2773 
2784  std::function<void()> &on_unconfined();
2785 
2786 };
2787 
2788 
2810 {
2811 private:
2812  struct events_t : public detail::events_base_t
2813  {
2814  };
2815 
2816  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2817 
2818  zwp_pointer_gestures_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2819 
2820 public:
2822  explicit zwp_pointer_gestures_v1_t(const proxy_t &proxy);
2823  zwp_pointer_gestures_v1_t(zwp_pointer_gestures_v1 *p, wrapper_type t = wrapper_type::standard);
2824 
2825  zwp_pointer_gestures_v1_t proxy_create_wrapper();
2826 
2827  static const std::string interface_name;
2828 
2829  operator zwp_pointer_gestures_v1*() const;
2830 
2839 
2842  static constexpr std::uint32_t get_swipe_gesture_since_version = 1;
2843 
2852 
2855  static constexpr std::uint32_t get_pinch_gesture_since_version = 1;
2856 
2863  void release();
2864 
2867  static constexpr std::uint32_t release_since_version = 2;
2868 
2872  bool can_release() const;
2873 
2882 
2885  static constexpr std::uint32_t get_hold_gesture_since_version = 3;
2886 
2890  bool can_get_hold_gesture() const;
2891 
2892 };
2893 
2894 
2915 {
2916 private:
2917  struct events_t : public detail::events_base_t
2918  {
2919  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
2920  std::function<void(uint32_t, double, double)> update;
2921  std::function<void(uint32_t, uint32_t, int32_t)> end;
2922  };
2923 
2924  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2925 
2926  zwp_pointer_gesture_swipe_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2927 
2928 public:
2930  explicit zwp_pointer_gesture_swipe_v1_t(const proxy_t &proxy);
2931  zwp_pointer_gesture_swipe_v1_t(zwp_pointer_gesture_swipe_v1 *p, wrapper_type t = wrapper_type::standard);
2932 
2933  zwp_pointer_gesture_swipe_v1_t proxy_create_wrapper();
2934 
2935  static const std::string interface_name;
2936 
2937  operator zwp_pointer_gesture_swipe_v1*() const;
2938 
2949  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
2950 
2963  std::function<void(uint32_t, double, double)> &on_update();
2964 
2979  std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
2980 
2981 };
2982 
2983 
3004 {
3005 private:
3006  struct events_t : public detail::events_base_t
3007  {
3008  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
3009  std::function<void(uint32_t, double, double, double, double)> update;
3010  std::function<void(uint32_t, uint32_t, int32_t)> end;
3011  };
3012 
3013  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3014 
3015  zwp_pointer_gesture_pinch_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3016 
3017 public:
3019  explicit zwp_pointer_gesture_pinch_v1_t(const proxy_t &proxy);
3020  zwp_pointer_gesture_pinch_v1_t(zwp_pointer_gesture_pinch_v1 *p, wrapper_type t = wrapper_type::standard);
3021 
3022  zwp_pointer_gesture_pinch_v1_t proxy_create_wrapper();
3023 
3024  static const std::string interface_name;
3025 
3026  operator zwp_pointer_gesture_pinch_v1*() const;
3027 
3038  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
3039 
3061  std::function<void(uint32_t, double, double, double, double)> &on_update();
3062 
3077  std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
3078 
3079 };
3080 
3081 
3104 {
3105 private:
3106  struct events_t : public detail::events_base_t
3107  {
3108  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
3109  std::function<void(uint32_t, uint32_t, int32_t)> end;
3110  };
3111 
3112  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3113 
3114  zwp_pointer_gesture_hold_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3115 
3116 public:
3118  explicit zwp_pointer_gesture_hold_v1_t(const proxy_t &proxy);
3119  zwp_pointer_gesture_hold_v1_t(zwp_pointer_gesture_hold_v1 *p, wrapper_type t = wrapper_type::standard);
3120 
3121  zwp_pointer_gesture_hold_v1_t proxy_create_wrapper();
3122 
3123  static const std::string interface_name;
3124 
3125  operator zwp_pointer_gesture_hold_v1*() const;
3126 
3136  std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
3137 
3154  std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
3155 
3156 };
3157 
3158 
3168 {
3169 private:
3170  struct events_t : public detail::events_base_t
3171  {
3172  };
3173 
3174  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3175 
3176  zwp_primary_selection_device_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3177 
3178 public:
3180  explicit zwp_primary_selection_device_manager_v1_t(const proxy_t &proxy);
3181  zwp_primary_selection_device_manager_v1_t(zwp_primary_selection_device_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3182 
3183  zwp_primary_selection_device_manager_v1_t proxy_create_wrapper();
3184 
3185  static const std::string interface_name;
3186 
3187  operator zwp_primary_selection_device_manager_v1*() const;
3188 
3195 
3198  static constexpr std::uint32_t create_source_since_version = 1;
3199 
3206  zwp_primary_selection_device_v1_t get_device(seat_t const& seat);
3207 
3210  static constexpr std::uint32_t get_device_since_version = 1;
3211 
3212 };
3213 
3214 
3218 class zwp_primary_selection_device_v1_t : public proxy_t
3219 {
3220 private:
3221  struct events_t : public detail::events_base_t
3222  {
3223  std::function<void(zwp_primary_selection_offer_v1_t)> data_offer;
3224  std::function<void(zwp_primary_selection_offer_v1_t)> selection;
3225  };
3226 
3227  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3228 
3229  zwp_primary_selection_device_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3230 
3231 public:
3232  zwp_primary_selection_device_v1_t();
3233  explicit zwp_primary_selection_device_v1_t(const proxy_t &proxy);
3234  zwp_primary_selection_device_v1_t(zwp_primary_selection_device_v1 *p, wrapper_type t = wrapper_type::standard);
3235 
3236  zwp_primary_selection_device_v1_t proxy_create_wrapper();
3237 
3238  static const std::string interface_name;
3239 
3240  operator zwp_primary_selection_device_v1*() const;
3241 
3252  void set_selection(zwp_primary_selection_source_v1_t const& source, uint32_t serial);
3253 
3256  static constexpr std::uint32_t set_selection_since_version = 1;
3257 
3268  std::function<void(zwp_primary_selection_offer_v1_t)> &on_data_offer();
3269 
3284  std::function<void(zwp_primary_selection_offer_v1_t)> &on_selection();
3285 
3286 };
3287 
3288 
3299 {
3300 private:
3301  struct events_t : public detail::events_base_t
3302  {
3303  std::function<void(std::string)> offer;
3304  };
3305 
3306  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3307 
3308  zwp_primary_selection_offer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3309 
3310 public:
3312  explicit zwp_primary_selection_offer_v1_t(const proxy_t &proxy);
3313  zwp_primary_selection_offer_v1_t(zwp_primary_selection_offer_v1 *p, wrapper_type t = wrapper_type::standard);
3314 
3315  zwp_primary_selection_offer_v1_t proxy_create_wrapper();
3316 
3317  static const std::string interface_name;
3318 
3319  operator zwp_primary_selection_offer_v1*() const;
3320 
3336  void receive(std::string const& mime_type, int fd);
3337 
3340  static constexpr std::uint32_t receive_since_version = 1;
3341 
3351  std::function<void(std::string)> &on_offer();
3352 
3353 };
3354 
3355 
3364 {
3365 private:
3366  struct events_t : public detail::events_base_t
3367  {
3368  std::function<void(std::string, int)> send;
3369  std::function<void()> cancelled;
3370  };
3371 
3372  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3373 
3374  zwp_primary_selection_source_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3375 
3376 public:
3378  explicit zwp_primary_selection_source_v1_t(const proxy_t &proxy);
3379  zwp_primary_selection_source_v1_t(zwp_primary_selection_source_v1 *p, wrapper_type t = wrapper_type::standard);
3380 
3381  zwp_primary_selection_source_v1_t proxy_create_wrapper();
3382 
3383  static const std::string interface_name;
3384 
3385  operator zwp_primary_selection_source_v1*() const;
3386 
3394  void offer(std::string const& mime_type);
3395 
3398  static constexpr std::uint32_t offer_since_version = 1;
3399 
3409  std::function<void(std::string, int)> &on_send();
3410 
3417  std::function<void()> &on_cancelled();
3418 
3419 };
3420 
3421 
3429 {
3430 private:
3431  struct events_t : public detail::events_base_t
3432  {
3433  };
3434 
3435  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3436 
3437  zwp_relative_pointer_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3438 
3439 public:
3441  explicit zwp_relative_pointer_manager_v1_t(const proxy_t &proxy);
3442  zwp_relative_pointer_manager_v1_t(zwp_relative_pointer_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3443 
3444  zwp_relative_pointer_manager_v1_t proxy_create_wrapper();
3445 
3446  static const std::string interface_name;
3447 
3448  operator zwp_relative_pointer_manager_v1*() const;
3449 
3458 
3461  static constexpr std::uint32_t get_relative_pointer_since_version = 1;
3462 
3463 };
3464 
3465 
3475 {
3476 private:
3477  struct events_t : public detail::events_base_t
3478  {
3479  std::function<void(uint32_t, uint32_t, double, double, double, double)> relative_motion;
3480  };
3481 
3482  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3483 
3484  zwp_relative_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3485 
3486 public:
3488  explicit zwp_relative_pointer_v1_t(const proxy_t &proxy);
3489  zwp_relative_pointer_v1_t(zwp_relative_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
3490 
3491  zwp_relative_pointer_v1_t proxy_create_wrapper();
3492 
3493  static const std::string interface_name;
3494 
3495  operator zwp_relative_pointer_v1*() const;
3496 
3537  std::function<void(uint32_t, uint32_t, double, double, double, double)> &on_relative_motion();
3538 
3539 };
3540 
3541 
3550 {
3551 private:
3552  struct events_t : public detail::events_base_t
3553  {
3554  };
3555 
3556  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3557 
3558  zwp_tablet_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3559 
3560 public:
3562  explicit zwp_tablet_manager_v1_t(const proxy_t &proxy);
3563  zwp_tablet_manager_v1_t(zwp_tablet_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3564 
3565  zwp_tablet_manager_v1_t proxy_create_wrapper();
3566 
3567  static const std::string interface_name;
3568 
3569  operator zwp_tablet_manager_v1*() const;
3570 
3579 
3582  static constexpr std::uint32_t get_tablet_seat_since_version = 1;
3583 
3584 };
3585 
3586 
3595 {
3596 private:
3597  struct events_t : public detail::events_base_t
3598  {
3599  std::function<void(zwp_tablet_v1_t)> tablet_added;
3600  std::function<void(zwp_tablet_tool_v1_t)> tool_added;
3601  };
3602 
3603  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3604 
3605  zwp_tablet_seat_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3606 
3607 public:
3609  explicit zwp_tablet_seat_v1_t(const proxy_t &proxy);
3610  zwp_tablet_seat_v1_t(zwp_tablet_seat_v1 *p, wrapper_type t = wrapper_type::standard);
3611 
3612  zwp_tablet_seat_v1_t proxy_create_wrapper();
3613 
3614  static const std::string interface_name;
3615 
3616  operator zwp_tablet_seat_v1*() const;
3617 
3627  std::function<void(zwp_tablet_v1_t)> &on_tablet_added();
3628 
3638  std::function<void(zwp_tablet_tool_v1_t)> &on_tool_added();
3639 
3640 };
3641 
3642 
3668 {
3669 private:
3670  struct events_t : public detail::events_base_t
3671  {
3672  std::function<void(zwp_tablet_tool_v1_type)> type;
3673  std::function<void(uint32_t, uint32_t)> hardware_serial;
3674  std::function<void(uint32_t, uint32_t)> hardware_id_wacom;
3675  std::function<void(zwp_tablet_tool_v1_capability)> capability;
3676  std::function<void()> done;
3677  std::function<void()> removed;
3678  std::function<void(uint32_t, zwp_tablet_v1_t, surface_t)> proximity_in;
3679  std::function<void()> proximity_out;
3680  std::function<void(uint32_t)> down;
3681  std::function<void()> up;
3682  std::function<void(double, double)> motion;
3683  std::function<void(uint32_t)> pressure;
3684  std::function<void(uint32_t)> distance;
3685  std::function<void(int32_t, int32_t)> tilt;
3686  std::function<void(int32_t)> rotation;
3687  std::function<void(int32_t)> slider;
3688  std::function<void(int32_t, int32_t)> wheel;
3689  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> button;
3690  std::function<void(uint32_t)> frame;
3691  };
3692 
3693  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3694 
3695  zwp_tablet_tool_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3696 
3697 public:
3699  explicit zwp_tablet_tool_v1_t(const proxy_t &proxy);
3700  zwp_tablet_tool_v1_t(zwp_tablet_tool_v1 *p, wrapper_type t = wrapper_type::standard);
3701 
3702  zwp_tablet_tool_v1_t proxy_create_wrapper();
3703 
3704  static const std::string interface_name;
3705 
3706  operator zwp_tablet_tool_v1*() const;
3707 
3748  void set_cursor(uint32_t serial, surface_t const& surface, int32_t hotspot_x, int32_t hotspot_y);
3749 
3752  static constexpr std::uint32_t set_cursor_since_version = 1;
3753 
3764  std::function<void(zwp_tablet_tool_v1_type)> &on_type();
3765 
3787  std::function<void(uint32_t, uint32_t)> &on_hardware_serial();
3788 
3805  std::function<void(uint32_t, uint32_t)> &on_hardware_id_wacom();
3806 
3819  std::function<void(zwp_tablet_tool_v1_capability)> &on_capability();
3820 
3828  std::function<void()> &on_done();
3829 
3848  std::function<void()> &on_removed();
3849 
3866  std::function<void(uint32_t, zwp_tablet_v1_t, surface_t)> &on_proximity_in();
3867 
3884  std::function<void()> &on_proximity_out();
3885 
3903  std::function<void(uint32_t)> &on_down();
3904 
3925  std::function<void()> &on_up();
3926 
3934  std::function<void(double, double)> &on_motion();
3935 
3946  std::function<void(uint32_t)> &on_pressure();
3947 
3958  std::function<void(uint32_t)> &on_distance();
3959 
3970  std::function<void(int32_t, int32_t)> &on_tilt();
3971 
3980  std::function<void(int32_t)> &on_rotation();
3981 
3992  std::function<void(int32_t)> &on_slider();
3993 
4012  std::function<void(int32_t, int32_t)> &on_wheel();
4013 
4027  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> &on_button();
4028 
4038  std::function<void(uint32_t)> &on_frame();
4039 
4040 };
4041 
4055 enum class zwp_tablet_tool_v1_type : uint32_t
4056  {
4058  pen = 0x140,
4060  eraser = 0x141,
4062  brush = 0x142,
4064  pencil = 0x143,
4066  airbrush = 0x144,
4068  finger = 0x145,
4070  mouse = 0x146,
4072  lens = 0x147
4073 };
4074 
4083 enum class zwp_tablet_tool_v1_capability : uint32_t
4084  {
4086  tilt = 1,
4088  pressure = 2,
4090  distance = 3,
4092  rotation = 4,
4094  slider = 5,
4096  wheel = 6
4097 };
4098 
4104 enum class zwp_tablet_tool_v1_button_state : uint32_t
4105  {
4107  released = 0,
4109  pressed = 1
4110 };
4111 
4115 enum class zwp_tablet_tool_v1_error : uint32_t
4116  {
4118  role = 0
4119 };
4120 
4121 
4134 class zwp_tablet_v1_t : public proxy_t
4135 {
4136 private:
4137  struct events_t : public detail::events_base_t
4138  {
4139  std::function<void(std::string)> name;
4140  std::function<void(uint32_t, uint32_t)> id;
4141  std::function<void(std::string)> path;
4142  std::function<void()> done;
4143  std::function<void()> removed;
4144  };
4145 
4146  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4147 
4148  zwp_tablet_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4149 
4150 public:
4151  zwp_tablet_v1_t();
4152  explicit zwp_tablet_v1_t(const proxy_t &proxy);
4153  zwp_tablet_v1_t(zwp_tablet_v1 *p, wrapper_type t = wrapper_type::standard);
4154 
4155  zwp_tablet_v1_t proxy_create_wrapper();
4156 
4157  static const std::string interface_name;
4158 
4159  operator zwp_tablet_v1*() const;
4160 
4168  std::function<void(std::string)> &on_name();
4169 
4178  std::function<void(uint32_t, uint32_t)> &on_id();
4179 
4199  std::function<void(std::string)> &on_path();
4200 
4209  std::function<void()> &on_done();
4210 
4220  std::function<void()> &on_removed();
4221 
4222 };
4223 
4224 
4233 {
4234 private:
4235  struct events_t : public detail::events_base_t
4236  {
4237  };
4238 
4239  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4240 
4241  zwp_tablet_manager_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4242 
4243 public:
4245  explicit zwp_tablet_manager_v2_t(const proxy_t &proxy);
4246  zwp_tablet_manager_v2_t(zwp_tablet_manager_v2 *p, wrapper_type t = wrapper_type::standard);
4247 
4248  zwp_tablet_manager_v2_t proxy_create_wrapper();
4249 
4250  static const std::string interface_name;
4251 
4252  operator zwp_tablet_manager_v2*() const;
4253 
4262 
4265  static constexpr std::uint32_t get_tablet_seat_since_version = 1;
4266 
4267 };
4268 
4269 
4278 {
4279 private:
4280  struct events_t : public detail::events_base_t
4281  {
4282  std::function<void(zwp_tablet_v2_t)> tablet_added;
4283  std::function<void(zwp_tablet_tool_v2_t)> tool_added;
4284  std::function<void(zwp_tablet_pad_v2_t)> pad_added;
4285  };
4286 
4287  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4288 
4289  zwp_tablet_seat_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4290 
4291 public:
4293  explicit zwp_tablet_seat_v2_t(const proxy_t &proxy);
4294  zwp_tablet_seat_v2_t(zwp_tablet_seat_v2 *p, wrapper_type t = wrapper_type::standard);
4295 
4296  zwp_tablet_seat_v2_t proxy_create_wrapper();
4297 
4298  static const std::string interface_name;
4299 
4300  operator zwp_tablet_seat_v2*() const;
4301 
4311  std::function<void(zwp_tablet_v2_t)> &on_tablet_added();
4312 
4322  std::function<void(zwp_tablet_tool_v2_t)> &on_tool_added();
4323 
4339  std::function<void(zwp_tablet_pad_v2_t)> &on_pad_added();
4340 
4341 };
4342 
4343 
4369 {
4370 private:
4371  struct events_t : public detail::events_base_t
4372  {
4373  std::function<void(zwp_tablet_tool_v2_type)> type;
4374  std::function<void(uint32_t, uint32_t)> hardware_serial;
4375  std::function<void(uint32_t, uint32_t)> hardware_id_wacom;
4376  std::function<void(zwp_tablet_tool_v2_capability)> capability;
4377  std::function<void()> done;
4378  std::function<void()> removed;
4379  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> proximity_in;
4380  std::function<void()> proximity_out;
4381  std::function<void(uint32_t)> down;
4382  std::function<void()> up;
4383  std::function<void(double, double)> motion;
4384  std::function<void(uint32_t)> pressure;
4385  std::function<void(uint32_t)> distance;
4386  std::function<void(double, double)> tilt;
4387  std::function<void(double)> rotation;
4388  std::function<void(int32_t)> slider;
4389  std::function<void(double, int32_t)> wheel;
4390  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> button;
4391  std::function<void(uint32_t)> frame;
4392  };
4393 
4394  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4395 
4396  zwp_tablet_tool_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4397 
4398 public:
4400  explicit zwp_tablet_tool_v2_t(const proxy_t &proxy);
4401  zwp_tablet_tool_v2_t(zwp_tablet_tool_v2 *p, wrapper_type t = wrapper_type::standard);
4402 
4403  zwp_tablet_tool_v2_t proxy_create_wrapper();
4404 
4405  static const std::string interface_name;
4406 
4407  operator zwp_tablet_tool_v2*() const;
4408 
4447  void set_cursor(uint32_t serial, surface_t const& surface, int32_t hotspot_x, int32_t hotspot_y);
4448 
4451  static constexpr std::uint32_t set_cursor_since_version = 1;
4452 
4463  std::function<void(zwp_tablet_tool_v2_type)> &on_type();
4464 
4486  std::function<void(uint32_t, uint32_t)> &on_hardware_serial();
4487 
4504  std::function<void(uint32_t, uint32_t)> &on_hardware_id_wacom();
4505 
4518  std::function<void(zwp_tablet_tool_v2_capability)> &on_capability();
4519 
4527  std::function<void()> &on_done();
4528 
4547  std::function<void()> &on_removed();
4548 
4565  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> &on_proximity_in();
4566 
4583  std::function<void()> &on_proximity_out();
4584 
4602  std::function<void(uint32_t)> &on_down();
4603 
4624  std::function<void()> &on_up();
4625 
4633  std::function<void(double, double)> &on_motion();
4634 
4645  std::function<void(uint32_t)> &on_pressure();
4646 
4657  std::function<void(uint32_t)> &on_distance();
4658 
4669  std::function<void(double, double)> &on_tilt();
4670 
4679  std::function<void(double)> &on_rotation();
4680 
4691  std::function<void(int32_t)> &on_slider();
4692 
4711  std::function<void(double, int32_t)> &on_wheel();
4712 
4726  std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> &on_button();
4727 
4737  std::function<void(uint32_t)> &on_frame();
4738 
4739 };
4740 
4754 enum class zwp_tablet_tool_v2_type : uint32_t
4755  {
4757  pen = 0x140,
4759  eraser = 0x141,
4761  brush = 0x142,
4763  pencil = 0x143,
4765  airbrush = 0x144,
4767  finger = 0x145,
4769  mouse = 0x146,
4771  lens = 0x147
4772 };
4773 
4782 enum class zwp_tablet_tool_v2_capability : uint32_t
4783  {
4785  tilt = 1,
4787  pressure = 2,
4789  distance = 3,
4791  rotation = 4,
4793  slider = 5,
4795  wheel = 6
4796 };
4797 
4803 enum class zwp_tablet_tool_v2_button_state : uint32_t
4804  {
4806  released = 0,
4808  pressed = 1
4809 };
4810 
4814 enum class zwp_tablet_tool_v2_error : uint32_t
4815  {
4817  role = 0
4818 };
4819 
4820 
4833 class zwp_tablet_v2_t : public proxy_t
4834 {
4835 private:
4836  struct events_t : public detail::events_base_t
4837  {
4838  std::function<void(std::string)> name;
4839  std::function<void(uint32_t, uint32_t)> id;
4840  std::function<void(std::string)> path;
4841  std::function<void()> done;
4842  std::function<void()> removed;
4843  };
4844 
4845  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4846 
4847  zwp_tablet_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4848 
4849 public:
4850  zwp_tablet_v2_t();
4851  explicit zwp_tablet_v2_t(const proxy_t &proxy);
4852  zwp_tablet_v2_t(zwp_tablet_v2 *p, wrapper_type t = wrapper_type::standard);
4853 
4854  zwp_tablet_v2_t proxy_create_wrapper();
4855 
4856  static const std::string interface_name;
4857 
4858  operator zwp_tablet_v2*() const;
4859 
4867  std::function<void(std::string)> &on_name();
4868 
4877  std::function<void(uint32_t, uint32_t)> &on_id();
4878 
4898  std::function<void(std::string)> &on_path();
4899 
4908  std::function<void()> &on_done();
4909 
4919  std::function<void()> &on_removed();
4920 
4921 };
4922 
4923 
4934 {
4935 private:
4936  struct events_t : public detail::events_base_t
4937  {
4938  std::function<void(zwp_tablet_pad_ring_v2_source)> source;
4939  std::function<void(double)> angle;
4940  std::function<void()> stop;
4941  std::function<void(uint32_t)> frame;
4942  };
4943 
4944  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4945 
4946  zwp_tablet_pad_ring_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4947 
4948 public:
4950  explicit zwp_tablet_pad_ring_v2_t(const proxy_t &proxy);
4951  zwp_tablet_pad_ring_v2_t(zwp_tablet_pad_ring_v2 *p, wrapper_type t = wrapper_type::standard);
4952 
4953  zwp_tablet_pad_ring_v2_t proxy_create_wrapper();
4954 
4955  static const std::string interface_name;
4956 
4957  operator zwp_tablet_pad_ring_v2*() const;
4958 
4984  void set_feedback(std::string const& description, uint32_t serial);
4985 
4988  static constexpr std::uint32_t set_feedback_since_version = 1;
4989 
5007  std::function<void(zwp_tablet_pad_ring_v2_source)> &on_source();
5008 
5018  std::function<void(double)> &on_angle();
5019 
5034  std::function<void()> &on_stop();
5035 
5054  std::function<void(uint32_t)> &on_frame();
5055 
5056 };
5057 
5066 enum class zwp_tablet_pad_ring_v2_source : uint32_t
5067  {
5069  finger = 1
5070 };
5071 
5072 
5083 {
5084 private:
5085  struct events_t : public detail::events_base_t
5086  {
5087  std::function<void(zwp_tablet_pad_strip_v2_source)> source;
5088  std::function<void(uint32_t)> position;
5089  std::function<void()> stop;
5090  std::function<void(uint32_t)> frame;
5091  };
5092 
5093  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5094 
5095  zwp_tablet_pad_strip_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5096 
5097 public:
5099  explicit zwp_tablet_pad_strip_v2_t(const proxy_t &proxy);
5100  zwp_tablet_pad_strip_v2_t(zwp_tablet_pad_strip_v2 *p, wrapper_type t = wrapper_type::standard);
5101 
5102  zwp_tablet_pad_strip_v2_t proxy_create_wrapper();
5103 
5104  static const std::string interface_name;
5105 
5106  operator zwp_tablet_pad_strip_v2*() const;
5107 
5133  void set_feedback(std::string const& description, uint32_t serial);
5134 
5137  static constexpr std::uint32_t set_feedback_since_version = 1;
5138 
5156  std::function<void(zwp_tablet_pad_strip_v2_source)> &on_source();
5157 
5168  std::function<void(uint32_t)> &on_position();
5169 
5184  std::function<void()> &on_stop();
5185 
5205  std::function<void(uint32_t)> &on_frame();
5206 
5207 };
5208 
5217 enum class zwp_tablet_pad_strip_v2_source : uint32_t
5218  {
5220  finger = 1
5221 };
5222 
5223 
5250 {
5251 private:
5252  struct events_t : public detail::events_base_t
5253  {
5254  std::function<void(array_t)> buttons;
5255  std::function<void(zwp_tablet_pad_ring_v2_t)> ring;
5256  std::function<void(zwp_tablet_pad_strip_v2_t)> strip;
5257  std::function<void(uint32_t)> modes;
5258  std::function<void()> done;
5259  std::function<void(uint32_t, uint32_t, uint32_t)> mode_switch;
5260  };
5261 
5262  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5263 
5264  zwp_tablet_pad_group_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5265 
5266 public:
5268  explicit zwp_tablet_pad_group_v2_t(const proxy_t &proxy);
5269  zwp_tablet_pad_group_v2_t(zwp_tablet_pad_group_v2 *p, wrapper_type t = wrapper_type::standard);
5270 
5271  zwp_tablet_pad_group_v2_t proxy_create_wrapper();
5272 
5273  static const std::string interface_name;
5274 
5275  operator zwp_tablet_pad_group_v2*() const;
5276 
5294  std::function<void(array_t)> &on_buttons();
5295 
5306  std::function<void(zwp_tablet_pad_ring_v2_t)> &on_ring();
5307 
5318  std::function<void(zwp_tablet_pad_strip_v2_t)> &on_strip();
5319 
5337  std::function<void(uint32_t)> &on_modes();
5338 
5347  std::function<void()> &on_done();
5348 
5383  std::function<void(uint32_t, uint32_t, uint32_t)> &on_mode_switch();
5384 
5385 };
5386 
5387 
5415 {
5416 private:
5417  struct events_t : public detail::events_base_t
5418  {
5419  std::function<void(zwp_tablet_pad_group_v2_t)> group;
5420  std::function<void(std::string)> path;
5421  std::function<void(uint32_t)> buttons;
5422  std::function<void()> done;
5423  std::function<void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> button;
5424  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> enter;
5425  std::function<void(uint32_t, surface_t)> leave;
5426  std::function<void()> removed;
5427  };
5428 
5429  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5430 
5431  zwp_tablet_pad_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5432 
5433 public:
5435  explicit zwp_tablet_pad_v2_t(const proxy_t &proxy);
5436  zwp_tablet_pad_v2_t(zwp_tablet_pad_v2 *p, wrapper_type t = wrapper_type::standard);
5437 
5438  zwp_tablet_pad_v2_t proxy_create_wrapper();
5439 
5440  static const std::string interface_name;
5441 
5442  operator zwp_tablet_pad_v2*() const;
5443 
5475  void set_feedback(uint32_t button, std::string const& description, uint32_t serial);
5476 
5479  static constexpr std::uint32_t set_feedback_since_version = 1;
5480 
5491  std::function<void(zwp_tablet_pad_group_v2_t)> &on_group();
5492 
5508  std::function<void(std::string)> &on_path();
5509 
5521  std::function<void(uint32_t)> &on_buttons();
5522 
5530  std::function<void()> &on_done();
5531 
5540  std::function<void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> &on_button();
5541 
5550  std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> &on_enter();
5551 
5560  std::function<void(uint32_t, surface_t)> &on_leave();
5561 
5572  std::function<void()> &on_removed();
5573 
5574 };
5575 
5582 enum class zwp_tablet_pad_v2_button_state : uint32_t
5583  {
5585  released = 0,
5587  pressed = 1
5588 };
5589 
5590 
5625 {
5626 private:
5627  struct events_t : public detail::events_base_t
5628  {
5629  std::function<void(surface_t)> enter;
5630  std::function<void()> leave;
5631  std::function<void(array_t)> modifiers_map;
5632  std::function<void(uint32_t)> input_panel_state;
5633  std::function<void(uint32_t, std::string, std::string)> preedit_string;
5634  std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> preedit_styling;
5635  std::function<void(int32_t)> preedit_cursor;
5636  std::function<void(uint32_t, std::string)> commit_string;
5637  std::function<void(int32_t, int32_t)> cursor_position;
5638  std::function<void(int32_t, uint32_t)> delete_surrounding_text;
5639  std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> keysym;
5640  std::function<void(uint32_t, std::string)> language;
5641  std::function<void(uint32_t, zwp_text_input_v1_text_direction)> text_direction;
5642  };
5643 
5644  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5645 
5646  zwp_text_input_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5647 
5648 public:
5650  explicit zwp_text_input_v1_t(const proxy_t &proxy);
5651  zwp_text_input_v1_t(zwp_text_input_v1 *p, wrapper_type t = wrapper_type::standard);
5652 
5653  zwp_text_input_v1_t proxy_create_wrapper();
5654 
5655  static const std::string interface_name;
5656 
5657  operator zwp_text_input_v1*() const;
5658 
5672  void activate(seat_t const& seat, surface_t const& surface);
5673 
5676  static constexpr std::uint32_t activate_since_version = 1;
5677 
5686  void deactivate(seat_t const& seat);
5687 
5690  static constexpr std::uint32_t deactivate_since_version = 1;
5691 
5697  void show_input_panel();
5698 
5701  static constexpr std::uint32_t show_input_panel_since_version = 1;
5702 
5708  void hide_input_panel();
5709 
5712  static constexpr std::uint32_t hide_input_panel_since_version = 1;
5713 
5721  void reset();
5722 
5725  static constexpr std::uint32_t reset_since_version = 1;
5726 
5739  void set_surrounding_text(std::string const& text, uint32_t cursor, uint32_t anchor);
5740 
5743  static constexpr std::uint32_t set_surrounding_text_since_version = 1;
5744 
5758  void set_content_type(zwp_text_input_v1_content_hint const& hint, zwp_text_input_v1_content_purpose const& purpose);
5759 
5762  static constexpr std::uint32_t set_content_type_since_version = 1;
5763 
5771  void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height);
5772 
5775  static constexpr std::uint32_t set_cursor_rectangle_since_version = 1;
5776 
5789  void set_preferred_language(std::string const& language);
5790 
5793  static constexpr std::uint32_t set_preferred_language_since_version = 1;
5794 
5799  void commit_state(uint32_t serial);
5800 
5803  static constexpr std::uint32_t commit_state_since_version = 1;
5804 
5810  void invoke_action(uint32_t button, uint32_t index);
5811 
5814  static constexpr std::uint32_t invoke_action_since_version = 1;
5815 
5823  std::function<void(surface_t)> &on_enter();
5824 
5832  std::function<void()> &on_leave();
5833 
5842  std::function<void(array_t)> &on_modifiers_map();
5843 
5850  std::function<void(uint32_t)> &on_input_panel_state();
5851 
5868  std::function<void(uint32_t, std::string, std::string)> &on_preedit_string();
5869 
5884  std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> &on_preedit_styling();
5885 
5896  std::function<void(int32_t)> &on_preedit_cursor();
5897 
5911  std::function<void(uint32_t, std::string)> &on_commit_string();
5912 
5923  std::function<void(int32_t, int32_t)> &on_cursor_position();
5924 
5939  std::function<void(int32_t, uint32_t)> &on_delete_surrounding_text();
5940 
5956  std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> &on_keysym();
5957 
5966  std::function<void(uint32_t, std::string)> &on_language();
5967 
5979  std::function<void(uint32_t, zwp_text_input_v1_text_direction)> &on_text_direction();
5980 
5981 };
5982 
5989 struct zwp_text_input_v1_content_hint : public detail::bitfield<10, 23>
5990 {
5991  zwp_text_input_v1_content_hint(const detail::bitfield<10, 23> &b)
5992  : detail::bitfield<10, 23>(b) {}
5993  zwp_text_input_v1_content_hint(const uint32_t value)
5994  : detail::bitfield<10, 23>(value) {}
5996  static const detail::bitfield<10, 23> none;
5998  static const detail::bitfield<10, 23> _default;
6000  static const detail::bitfield<10, 23> password;
6002  static const detail::bitfield<10, 23> auto_completion;
6004  static const detail::bitfield<10, 23> auto_correction;
6006  static const detail::bitfield<10, 23> auto_capitalization;
6008  static const detail::bitfield<10, 23> lowercase;
6010  static const detail::bitfield<10, 23> uppercase;
6012  static const detail::bitfield<10, 23> titlecase;
6014  static const detail::bitfield<10, 23> hidden_text;
6016  static const detail::bitfield<10, 23> sensitive_data;
6018  static const detail::bitfield<10, 23> latin;
6020  static const detail::bitfield<10, 23> multiline;
6021 };
6022 
6032 enum class zwp_text_input_v1_content_purpose : uint32_t
6033  {
6035  normal = 0,
6037  alpha = 1,
6039  digits = 2,
6041  number = 3,
6043  phone = 4,
6045  url = 5,
6047  email = 6,
6049  name = 7,
6051  password = 8,
6053  date = 9,
6055  time = 10,
6057  datetime = 11,
6059  terminal = 12
6060 };
6061 
6065 enum class zwp_text_input_v1_preedit_style : uint32_t
6066  {
6068  _default = 0,
6070  none = 1,
6071  active = 2,
6072  inactive = 3,
6073  highlight = 4,
6074  underline = 5,
6075  selection = 6,
6076  incorrect = 7
6077 };
6078 
6082 enum class zwp_text_input_v1_text_direction : uint32_t
6083  {
6085  _auto = 0,
6087  ltr = 1,
6089  rtl = 2
6090 };
6091 
6092 
6099 {
6100 private:
6101  struct events_t : public detail::events_base_t
6102  {
6103  };
6104 
6105  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6106 
6107  zwp_text_input_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6108 
6109 public:
6111  explicit zwp_text_input_manager_v1_t(const proxy_t &proxy);
6112  zwp_text_input_manager_v1_t(zwp_text_input_manager_v1 *p, wrapper_type t = wrapper_type::standard);
6113 
6114  zwp_text_input_manager_v1_t proxy_create_wrapper();
6115 
6116  static const std::string interface_name;
6117 
6118  operator zwp_text_input_manager_v1*() const;
6119 
6126 
6129  static constexpr std::uint32_t create_text_input_since_version = 1;
6130 
6131 };
6132 
6133 
6165 {
6166 private:
6167  struct events_t : public detail::events_base_t
6168  {
6169  std::function<void(surface_t)> enter;
6170  std::function<void(surface_t)> leave;
6171  std::function<void(std::string, int32_t, int32_t)> preedit_string;
6172  std::function<void(std::string)> commit_string;
6173  std::function<void(uint32_t, uint32_t)> delete_surrounding_text;
6174  std::function<void(uint32_t)> done;
6175  };
6176 
6177  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6178 
6179  zwp_text_input_v3_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6180 
6181 public:
6183  explicit zwp_text_input_v3_t(const proxy_t &proxy);
6184  zwp_text_input_v3_t(zwp_text_input_v3 *p, wrapper_type t = wrapper_type::standard);
6185 
6186  zwp_text_input_v3_t proxy_create_wrapper();
6187 
6188  static const std::string interface_name;
6189 
6190  operator zwp_text_input_v3*() const;
6191 
6225  void enable();
6226 
6229  static constexpr std::uint32_t enable_since_version = 1;
6230 
6240  void disable();
6241 
6244  static constexpr std::uint32_t disable_since_version = 1;
6245 
6284  void set_surrounding_text(std::string const& text, int32_t cursor, int32_t anchor);
6285 
6288  static constexpr std::uint32_t set_surrounding_text_since_version = 1;
6289 
6309  void set_text_change_cause(zwp_text_input_v3_change_cause const& cause);
6310 
6313  static constexpr std::uint32_t set_text_change_cause_since_version = 1;
6314 
6332  void set_content_type(zwp_text_input_v3_content_hint const& hint, zwp_text_input_v3_content_purpose const& purpose);
6333 
6336  static constexpr std::uint32_t set_content_type_since_version = 1;
6337 
6363  void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height);
6364 
6367  static constexpr std::uint32_t set_cursor_rectangle_since_version = 1;
6368 
6396  void commit();
6397 
6400  static constexpr std::uint32_t commit_since_version = 1;
6401 
6415  std::function<void(surface_t)> &on_enter();
6416 
6433  std::function<void(surface_t)> &on_leave();
6434 
6460  std::function<void(std::string, int32_t, int32_t)> &on_preedit_string();
6461 
6475  std::function<void(std::string)> &on_commit_string();
6476 
6497  std::function<void(uint32_t, uint32_t)> &on_delete_surrounding_text();
6498 
6526  std::function<void(uint32_t)> &on_done();
6527 
6528 };
6529 
6535 enum class zwp_text_input_v3_change_cause : uint32_t
6536  {
6538  input_method = 0,
6540  other = 1
6541 };
6542 
6549 struct zwp_text_input_v3_content_hint : public detail::bitfield<10, 28>
6550 {
6551  zwp_text_input_v3_content_hint(const detail::bitfield<10, 28> &b)
6552  : detail::bitfield<10, 28>(b) {}
6553  zwp_text_input_v3_content_hint(const uint32_t value)
6554  : detail::bitfield<10, 28>(value) {}
6556  static const detail::bitfield<10, 28> none;
6558  static const detail::bitfield<10, 28> completion;
6560  static const detail::bitfield<10, 28> spellcheck;
6562  static const detail::bitfield<10, 28> auto_capitalization;
6564  static const detail::bitfield<10, 28> lowercase;
6566  static const detail::bitfield<10, 28> uppercase;
6568  static const detail::bitfield<10, 28> titlecase;
6570  static const detail::bitfield<10, 28> hidden_text;
6572  static const detail::bitfield<10, 28> sensitive_data;
6574  static const detail::bitfield<10, 28> latin;
6576  static const detail::bitfield<10, 28> multiline;
6577 };
6578 
6588 enum class zwp_text_input_v3_content_purpose : uint32_t
6589  {
6591  normal = 0,
6593  alpha = 1,
6595  digits = 2,
6597  number = 3,
6599  phone = 4,
6601  url = 5,
6603  email = 6,
6605  name = 7,
6607  password = 8,
6609  pin = 9,
6611  date = 10,
6613  time = 11,
6615  datetime = 12,
6617  terminal = 13
6618 };
6619 
6620 
6627 {
6628 private:
6629  struct events_t : public detail::events_base_t
6630  {
6631  };
6632 
6633  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6634 
6635  zwp_text_input_manager_v3_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6636 
6637 public:
6639  explicit zwp_text_input_manager_v3_t(const proxy_t &proxy);
6640  zwp_text_input_manager_v3_t(zwp_text_input_manager_v3 *p, wrapper_type t = wrapper_type::standard);
6641 
6642  zwp_text_input_manager_v3_t proxy_create_wrapper();
6643 
6644  static const std::string interface_name;
6645 
6646  operator zwp_text_input_manager_v3*() const;
6647 
6655 
6658  static constexpr std::uint32_t get_text_input_since_version = 1;
6659 
6660 };
6661 
6662 
6671 {
6672 private:
6673  struct events_t : public detail::events_base_t
6674  {
6675  };
6676 
6677  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6678 
6679  xdg_activation_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6680 
6681 public:
6683  explicit xdg_activation_v1_t(const proxy_t &proxy);
6684  xdg_activation_v1_t(xdg_activation_v1 *p, wrapper_type t = wrapper_type::standard);
6685 
6686  xdg_activation_v1_t proxy_create_wrapper();
6687 
6688  static const std::string interface_name;
6689 
6690  operator xdg_activation_v1*() const;
6691 
6700 
6703  static constexpr std::uint32_t get_activation_token_since_version = 1;
6704 
6721  void activate(std::string const& token, surface_t const& surface);
6722 
6725  static constexpr std::uint32_t activate_since_version = 1;
6726 
6727 };
6728 
6729 
6743 {
6744 private:
6745  struct events_t : public detail::events_base_t
6746  {
6747  std::function<void(std::string)> done;
6748  };
6749 
6750  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6751 
6752  xdg_activation_token_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6753 
6754 public:
6756  explicit xdg_activation_token_v1_t(const proxy_t &proxy);
6757  xdg_activation_token_v1_t(xdg_activation_token_v1 *p, wrapper_type t = wrapper_type::standard);
6758 
6759  xdg_activation_token_v1_t proxy_create_wrapper();
6760 
6761  static const std::string interface_name;
6762 
6763  operator xdg_activation_token_v1*() const;
6764 
6775  void set_serial(uint32_t serial, seat_t const& seat);
6776 
6779  static constexpr std::uint32_t set_serial_since_version = 1;
6780 
6790  void set_app_id(std::string const& app_id);
6791 
6794  static constexpr std::uint32_t set_app_id_since_version = 1;
6795 
6805  void set_surface(surface_t const& surface);
6806 
6809  static constexpr std::uint32_t set_surface_since_version = 1;
6810 
6817  void commit();
6818 
6821  static constexpr std::uint32_t commit_since_version = 1;
6822 
6841  std::function<void(std::string)> &on_done();
6842 
6843 };
6844 
6848 enum class xdg_activation_token_v1_error : uint32_t
6849  {
6851  already_used = 0
6852 };
6853 
6854 
6882 {
6883 private:
6884  struct events_t : public detail::events_base_t
6885  {
6886  };
6887 
6888  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6889 
6890  zxdg_decoration_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6891 
6892 public:
6894  explicit zxdg_decoration_manager_v1_t(const proxy_t &proxy);
6895  zxdg_decoration_manager_v1_t(zxdg_decoration_manager_v1 *p, wrapper_type t = wrapper_type::standard);
6896 
6897  zxdg_decoration_manager_v1_t proxy_create_wrapper();
6898 
6899  static const std::string interface_name;
6900 
6901  operator zxdg_decoration_manager_v1*() const;
6902 
6916 
6919  static constexpr std::uint32_t get_toplevel_decoration_since_version = 1;
6920 
6921 };
6922 
6923 
6935 {
6936 private:
6937  struct events_t : public detail::events_base_t
6938  {
6939  std::function<void(zxdg_toplevel_decoration_v1_mode)> configure;
6940  };
6941 
6942  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6943 
6944  zxdg_toplevel_decoration_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6945 
6946 public:
6948  explicit zxdg_toplevel_decoration_v1_t(const proxy_t &proxy);
6949  zxdg_toplevel_decoration_v1_t(zxdg_toplevel_decoration_v1 *p, wrapper_type t = wrapper_type::standard);
6950 
6951  zxdg_toplevel_decoration_v1_t proxy_create_wrapper();
6952 
6953  static const std::string interface_name;
6954 
6955  operator zxdg_toplevel_decoration_v1*() const;
6956 
6980  void set_mode(zxdg_toplevel_decoration_v1_mode const& mode);
6981 
6984  static constexpr std::uint32_t set_mode_since_version = 1;
6985 
6994  void unset_mode();
6995 
6998  static constexpr std::uint32_t unset_mode_since_version = 1;
6999 
7012  std::function<void(zxdg_toplevel_decoration_v1_mode)> &on_configure();
7013 
7014 };
7015 
7019 enum class zxdg_toplevel_decoration_v1_error : uint32_t
7020  {
7022  unconfigured_buffer = 0,
7024  already_constructed = 1,
7026  orphaned = 2
7027 };
7028 
7034 enum class zxdg_toplevel_decoration_v1_mode : uint32_t
7035  {
7037  client_side = 1,
7039  server_side = 2
7040 };
7041 
7042 
7050 {
7051 private:
7052  struct events_t : public detail::events_base_t
7053  {
7054  };
7055 
7056  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7057 
7058  zxdg_exporter_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7059 
7060 public:
7062  explicit zxdg_exporter_v1_t(const proxy_t &proxy);
7063  zxdg_exporter_v1_t(zxdg_exporter_v1 *p, wrapper_type t = wrapper_type::standard);
7064 
7065  zxdg_exporter_v1_t proxy_create_wrapper();
7066 
7067  static const std::string interface_name;
7068 
7069  operator zxdg_exporter_v1*() const;
7070 
7085  zxdg_exported_v1_t _export(surface_t const& surface);
7086 
7089  static constexpr std::uint32_t export_since_version = 1;
7090 
7091 };
7092 
7093 
7102 {
7103 private:
7104  struct events_t : public detail::events_base_t
7105  {
7106  };
7107 
7108  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7109 
7110  zxdg_importer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7111 
7112 public:
7114  explicit zxdg_importer_v1_t(const proxy_t &proxy);
7115  zxdg_importer_v1_t(zxdg_importer_v1 *p, wrapper_type t = wrapper_type::standard);
7116 
7117  zxdg_importer_v1_t proxy_create_wrapper();
7118 
7119  static const std::string interface_name;
7120 
7121  operator zxdg_importer_v1*() const;
7122 
7134  zxdg_imported_v1_t import(std::string const& handle);
7135 
7138  static constexpr std::uint32_t import_since_version = 1;
7139 
7140 };
7141 
7142 
7152 {
7153 private:
7154  struct events_t : public detail::events_base_t
7155  {
7156  std::function<void(std::string)> handle;
7157  };
7158 
7159  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7160 
7161  zxdg_exported_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7162 
7163 public:
7165  explicit zxdg_exported_v1_t(const proxy_t &proxy);
7166  zxdg_exported_v1_t(zxdg_exported_v1 *p, wrapper_type t = wrapper_type::standard);
7167 
7168  zxdg_exported_v1_t proxy_create_wrapper();
7169 
7170  static const std::string interface_name;
7171 
7172  operator zxdg_exported_v1*() const;
7173 
7183  std::function<void(std::string)> &on_handle();
7184 
7185 };
7186 
7187 
7196 {
7197 private:
7198  struct events_t : public detail::events_base_t
7199  {
7200  std::function<void()> destroyed;
7201  };
7202 
7203  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7204 
7205  zxdg_imported_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7206 
7207 public:
7209  explicit zxdg_imported_v1_t(const proxy_t &proxy);
7210  zxdg_imported_v1_t(zxdg_imported_v1 *p, wrapper_type t = wrapper_type::standard);
7211 
7212  zxdg_imported_v1_t proxy_create_wrapper();
7213 
7214  static const std::string interface_name;
7215 
7216  operator zxdg_imported_v1*() const;
7217 
7227  void set_parent_of(surface_t const& surface);
7228 
7231  static constexpr std::uint32_t set_parent_of_since_version = 1;
7232 
7241  std::function<void()> &on_destroyed();
7242 
7243 };
7244 
7245 
7253 {
7254 private:
7255  struct events_t : public detail::events_base_t
7256  {
7257  };
7258 
7259  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7260 
7261  zxdg_exporter_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7262 
7263 public:
7265  explicit zxdg_exporter_v2_t(const proxy_t &proxy);
7266  zxdg_exporter_v2_t(zxdg_exporter_v2 *p, wrapper_type t = wrapper_type::standard);
7267 
7268  zxdg_exporter_v2_t proxy_create_wrapper();
7269 
7270  static const std::string interface_name;
7271 
7272  operator zxdg_exporter_v2*() const;
7273 
7290 
7293  static constexpr std::uint32_t export_toplevel_since_version = 1;
7294 
7295 };
7296 
7303 enum class zxdg_exporter_v2_error : uint32_t
7304  {
7306  invalid_surface = 0
7307 };
7308 
7309 
7318 {
7319 private:
7320  struct events_t : public detail::events_base_t
7321  {
7322  };
7323 
7324  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7325 
7326  zxdg_importer_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7327 
7328 public:
7330  explicit zxdg_importer_v2_t(const proxy_t &proxy);
7331  zxdg_importer_v2_t(zxdg_importer_v2 *p, wrapper_type t = wrapper_type::standard);
7332 
7333  zxdg_importer_v2_t proxy_create_wrapper();
7334 
7335  static const std::string interface_name;
7336 
7337  operator zxdg_importer_v2*() const;
7338 
7350  zxdg_imported_v2_t import_toplevel(std::string const& handle);
7351 
7354  static constexpr std::uint32_t import_toplevel_since_version = 1;
7355 
7356 };
7357 
7358 
7368 {
7369 private:
7370  struct events_t : public detail::events_base_t
7371  {
7372  std::function<void(std::string)> handle;
7373  };
7374 
7375  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7376 
7377  zxdg_exported_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7378 
7379 public:
7381  explicit zxdg_exported_v2_t(const proxy_t &proxy);
7382  zxdg_exported_v2_t(zxdg_exported_v2 *p, wrapper_type t = wrapper_type::standard);
7383 
7384  zxdg_exported_v2_t proxy_create_wrapper();
7385 
7386  static const std::string interface_name;
7387 
7388  operator zxdg_exported_v2*() const;
7389 
7399  std::function<void(std::string)> &on_handle();
7400 
7401 };
7402 
7403 
7412 {
7413 private:
7414  struct events_t : public detail::events_base_t
7415  {
7416  std::function<void()> destroyed;
7417  };
7418 
7419  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7420 
7421  zxdg_imported_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7422 
7423 public:
7425  explicit zxdg_imported_v2_t(const proxy_t &proxy);
7426  zxdg_imported_v2_t(zxdg_imported_v2 *p, wrapper_type t = wrapper_type::standard);
7427 
7428  zxdg_imported_v2_t proxy_create_wrapper();
7429 
7430  static const std::string interface_name;
7431 
7432  operator zxdg_imported_v2*() const;
7433 
7444  void set_parent_of(surface_t const& surface);
7445 
7448  static constexpr std::uint32_t set_parent_of_since_version = 1;
7449 
7458  std::function<void()> &on_destroyed();
7459 
7460 };
7461 
7468 enum class zxdg_imported_v2_error : uint32_t
7469  {
7471  invalid_surface = 0
7472 };
7473 
7474 
7481 {
7482 private:
7483  struct events_t : public detail::events_base_t
7484  {
7485  };
7486 
7487  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7488 
7489  zxdg_output_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7490 
7491 public:
7493  explicit zxdg_output_manager_v1_t(const proxy_t &proxy);
7494  zxdg_output_manager_v1_t(zxdg_output_manager_v1 *p, wrapper_type t = wrapper_type::standard);
7495 
7496  zxdg_output_manager_v1_t proxy_create_wrapper();
7497 
7498  static const std::string interface_name;
7499 
7500  operator zxdg_output_manager_v1*() const;
7501 
7508  zxdg_output_v1_t get_xdg_output(output_t const& output);
7509 
7512  static constexpr std::uint32_t get_xdg_output_since_version = 1;
7513 
7514 };
7515 
7516 
7531 {
7532 private:
7533  struct events_t : public detail::events_base_t
7534  {
7535  std::function<void(int32_t, int32_t)> logical_position;
7536  std::function<void(int32_t, int32_t)> logical_size;
7537  std::function<void()> done;
7538  std::function<void(std::string)> name;
7539  std::function<void(std::string)> description;
7540  };
7541 
7542  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7543 
7544  zxdg_output_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7545 
7546 public:
7547  zxdg_output_v1_t();
7548  explicit zxdg_output_v1_t(const proxy_t &proxy);
7549  zxdg_output_v1_t(zxdg_output_v1 *p, wrapper_type t = wrapper_type::standard);
7550 
7551  zxdg_output_v1_t proxy_create_wrapper();
7552 
7553  static const std::string interface_name;
7554 
7555  operator zxdg_output_v1*() const;
7556 
7569  std::function<void(int32_t, int32_t)> &on_logical_position();
7570 
7611  std::function<void(int32_t, int32_t)> &on_logical_size();
7612 
7626  std::function<void()> &on_done();
7627 
7651  std::function<void(std::string)> &on_name();
7652 
7673  std::function<void(std::string)> &on_description();
7674 
7675 };
7676 
7677 
7686 class zxdg_shell_v6_t : public proxy_t
7687 {
7688 private:
7689  struct events_t : public detail::events_base_t
7690  {
7691  std::function<void(uint32_t)> ping;
7692  };
7693 
7694  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7695 
7696  zxdg_shell_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7697 
7698 public:
7699  zxdg_shell_v6_t();
7700  explicit zxdg_shell_v6_t(const proxy_t &proxy);
7701  zxdg_shell_v6_t(zxdg_shell_v6 *p, wrapper_type t = wrapper_type::standard);
7702 
7703  zxdg_shell_v6_t proxy_create_wrapper();
7704 
7705  static const std::string interface_name;
7706 
7707  operator zxdg_shell_v6*() const;
7708 
7717 
7720  static constexpr std::uint32_t create_positioner_since_version = 1;
7721 
7739 
7742  static constexpr std::uint32_t get_xdg_surface_since_version = 1;
7743 
7751  void pong(uint32_t serial);
7752 
7755  static constexpr std::uint32_t pong_since_version = 1;
7756 
7773  std::function<void(uint32_t)> &on_ping();
7774 
7775 };
7776 
7780 enum class zxdg_shell_v6_error : uint32_t
7781  {
7783  role = 0,
7785  defunct_surfaces = 1,
7787  not_the_topmost_popup = 2,
7789  invalid_popup_parent = 3,
7791  invalid_surface_state = 4,
7793  invalid_positioner = 5
7794 };
7795 
7796 
7821 {
7822 private:
7823  struct events_t : public detail::events_base_t
7824  {
7825  };
7826 
7827  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7828 
7829  zxdg_positioner_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7830 
7831 public:
7833  explicit zxdg_positioner_v6_t(const proxy_t &proxy);
7834  zxdg_positioner_v6_t(zxdg_positioner_v6 *p, wrapper_type t = wrapper_type::standard);
7835 
7836  zxdg_positioner_v6_t proxy_create_wrapper();
7837 
7838  static const std::string interface_name;
7839 
7840  operator zxdg_positioner_v6*() const;
7841 
7853  void set_size(int32_t width, int32_t height);
7854 
7857  static constexpr std::uint32_t set_size_since_version = 1;
7858 
7877  void set_anchor_rect(int32_t x, int32_t y, int32_t width, int32_t height);
7878 
7881  static constexpr std::uint32_t set_anchor_rect_since_version = 1;
7882 
7898  void set_anchor(zxdg_positioner_v6_anchor const& anchor);
7899 
7902  static constexpr std::uint32_t set_anchor_since_version = 1;
7903 
7918  void set_gravity(zxdg_positioner_v6_gravity const& gravity);
7919 
7922  static constexpr std::uint32_t set_gravity_since_version = 1;
7923 
7942  void set_constraint_adjustment(zxdg_positioner_v6_constraint_adjustment const& constraint_adjustment);
7943 
7946  static constexpr std::uint32_t set_constraint_adjustment_since_version = 1;
7947 
7965  void set_offset(int32_t x, int32_t y);
7966 
7969  static constexpr std::uint32_t set_offset_since_version = 1;
7970 
7971 };
7972 
7976 enum class zxdg_positioner_v6_error : uint32_t
7977  {
7979  invalid_input = 0
7980 };
7981 
7985 struct zxdg_positioner_v6_anchor : public detail::bitfield<4, 37>
7986 {
7987  zxdg_positioner_v6_anchor(const detail::bitfield<4, 37> &b)
7988  : detail::bitfield<4, 37>(b) {}
7989  zxdg_positioner_v6_anchor(const uint32_t value)
7990  : detail::bitfield<4, 37>(value) {}
7992  static const detail::bitfield<4, 37> none;
7994  static const detail::bitfield<4, 37> top;
7996  static const detail::bitfield<4, 37> bottom;
7998  static const detail::bitfield<4, 37> left;
8000  static const detail::bitfield<4, 37> right;
8001 };
8002 
8006 struct zxdg_positioner_v6_gravity : public detail::bitfield<4, 38>
8007 {
8008  zxdg_positioner_v6_gravity(const detail::bitfield<4, 38> &b)
8009  : detail::bitfield<4, 38>(b) {}
8010  zxdg_positioner_v6_gravity(const uint32_t value)
8011  : detail::bitfield<4, 38>(value) {}
8013  static const detail::bitfield<4, 38> none;
8015  static const detail::bitfield<4, 38> top;
8017  static const detail::bitfield<4, 38> bottom;
8019  static const detail::bitfield<4, 38> left;
8021  static const detail::bitfield<4, 38> right;
8022 };
8023 
8039 struct zxdg_positioner_v6_constraint_adjustment : public detail::bitfield<6, 39>
8040 {
8041  zxdg_positioner_v6_constraint_adjustment(const detail::bitfield<6, 39> &b)
8042  : detail::bitfield<6, 39>(b) {}
8043  zxdg_positioner_v6_constraint_adjustment(const uint32_t value)
8044  : detail::bitfield<6, 39>(value) {}
8045  static const detail::bitfield<6, 39> none;
8046  static const detail::bitfield<6, 39> slide_x;
8047  static const detail::bitfield<6, 39> slide_y;
8048  static const detail::bitfield<6, 39> flip_x;
8049  static const detail::bitfield<6, 39> flip_y;
8050  static const detail::bitfield<6, 39> resize_x;
8051  static const detail::bitfield<6, 39> resize_y;
8052 };
8053 
8054 
8090 {
8091 private:
8092  struct events_t : public detail::events_base_t
8093  {
8094  std::function<void(uint32_t)> configure;
8095  };
8096 
8097  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8098 
8099  zxdg_surface_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8100 
8101 public:
8103  explicit zxdg_surface_v6_t(const proxy_t &proxy);
8104  zxdg_surface_v6_t(zxdg_surface_v6 *p, wrapper_type t = wrapper_type::standard);
8105 
8106  zxdg_surface_v6_t proxy_create_wrapper();
8107 
8108  static const std::string interface_name;
8109 
8110  operator zxdg_surface_v6*() const;
8111 
8122 
8125  static constexpr std::uint32_t get_toplevel_since_version = 1;
8126 
8138  zxdg_popup_v6_t get_popup(zxdg_surface_v6_t const& parent, zxdg_positioner_v6_t const& positioner);
8139 
8142  static constexpr std::uint32_t get_popup_since_version = 1;
8143 
8176  void set_window_geometry(int32_t x, int32_t y, int32_t width, int32_t height);
8177 
8180  static constexpr std::uint32_t set_window_geometry_since_version = 1;
8181 
8206  void ack_configure(uint32_t serial);
8207 
8210  static constexpr std::uint32_t ack_configure_since_version = 1;
8211 
8233  std::function<void(uint32_t)> &on_configure();
8234 
8235 };
8236 
8240 enum class zxdg_surface_v6_error : uint32_t
8241  {
8242  not_constructed = 1,
8243  already_constructed = 2,
8244  unconfigured_buffer = 3
8245 };
8246 
8247 
8258 {
8259 private:
8260  struct events_t : public detail::events_base_t
8261  {
8262  std::function<void(int32_t, int32_t, array_t)> configure;
8263  std::function<void()> close;
8264  };
8265 
8266  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8267 
8268  zxdg_toplevel_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8269 
8270 public:
8272  explicit zxdg_toplevel_v6_t(const proxy_t &proxy);
8273  zxdg_toplevel_v6_t(zxdg_toplevel_v6 *p, wrapper_type t = wrapper_type::standard);
8274 
8275  zxdg_toplevel_v6_t proxy_create_wrapper();
8276 
8277  static const std::string interface_name;
8278 
8279  operator zxdg_toplevel_v6*() const;
8280 
8293  void set_parent(zxdg_toplevel_v6_t const& parent);
8294 
8297  static constexpr std::uint32_t set_parent_since_version = 1;
8298 
8311  void set_title(std::string const& title);
8312 
8315  static constexpr std::uint32_t set_title_since_version = 1;
8316 
8342  void set_app_id(std::string const& app_id);
8343 
8346  static constexpr std::uint32_t set_app_id_since_version = 1;
8347 
8367  void show_window_menu(seat_t const& seat, uint32_t serial, int32_t x, int32_t y);
8368 
8371  static constexpr std::uint32_t show_window_menu_since_version = 1;
8372 
8395  void move(seat_t const& seat, uint32_t serial);
8396 
8399  static constexpr std::uint32_t move_since_version = 1;
8400 
8438  void resize(seat_t const& seat, uint32_t serial, zxdg_toplevel_v6_resize_edge const& edges);
8439 
8442  static constexpr std::uint32_t resize_since_version = 1;
8443 
8484  void set_max_size(int32_t width, int32_t height);
8485 
8488  static constexpr std::uint32_t set_max_size_since_version = 1;
8489 
8530  void set_min_size(int32_t width, int32_t height);
8531 
8534  static constexpr std::uint32_t set_min_size_since_version = 1;
8535 
8556  void set_maximized();
8557 
8560  static constexpr std::uint32_t set_maximized_since_version = 1;
8561 
8583  void unset_maximized();
8584 
8587  static constexpr std::uint32_t unset_maximized_since_version = 1;
8588 
8603  void set_fullscreen(output_t const& output);
8604 
8607  static constexpr std::uint32_t set_fullscreen_since_version = 1;
8608 
8612  void unset_fullscreen();
8613 
8616  static constexpr std::uint32_t unset_fullscreen_since_version = 1;
8617 
8630  void set_minimized();
8631 
8634  static constexpr std::uint32_t set_minimized_since_version = 1;
8635 
8662  std::function<void(int32_t, int32_t, array_t)> &on_configure();
8663 
8676  std::function<void()> &on_close();
8677 
8678 };
8679 
8686 struct zxdg_toplevel_v6_resize_edge : public detail::bitfield<4, 41>
8687 {
8688  zxdg_toplevel_v6_resize_edge(const detail::bitfield<4, 41> &b)
8689  : detail::bitfield<4, 41>(b) {}
8690  zxdg_toplevel_v6_resize_edge(const uint32_t value)
8691  : detail::bitfield<4, 41>(value) {}
8692  static const detail::bitfield<4, 41> none;
8693  static const detail::bitfield<4, 41> top;
8694  static const detail::bitfield<4, 41> bottom;
8695  static const detail::bitfield<4, 41> left;
8696  static const detail::bitfield<4, 41> top_left;
8697  static const detail::bitfield<4, 41> bottom_left;
8698  static const detail::bitfield<4, 41> right;
8699  static const detail::bitfield<4, 41> top_right;
8700  static const detail::bitfield<4, 41> bottom_right;
8701 };
8702 
8714 enum class zxdg_toplevel_v6_state : uint32_t
8715  {
8717  maximized = 1,
8719  fullscreen = 2,
8721  resizing = 3,
8723  activated = 4
8724 };
8725 
8726 
8764 class zxdg_popup_v6_t : public proxy_t
8765 {
8766 private:
8767  struct events_t : public detail::events_base_t
8768  {
8769  std::function<void(int32_t, int32_t, int32_t, int32_t)> configure;
8770  std::function<void()> popup_done;
8771  };
8772 
8773  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8774 
8775  zxdg_popup_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8776 
8777 public:
8778  zxdg_popup_v6_t();
8779  explicit zxdg_popup_v6_t(const proxy_t &proxy);
8780  zxdg_popup_v6_t(zxdg_popup_v6 *p, wrapper_type t = wrapper_type::standard);
8781 
8782  zxdg_popup_v6_t proxy_create_wrapper();
8783 
8784  static const std::string interface_name;
8785 
8786  operator zxdg_popup_v6*() const;
8787 
8835  void grab(seat_t const& seat, uint32_t serial);
8836 
8839  static constexpr std::uint32_t grab_since_version = 1;
8840 
8856  std::function<void(int32_t, int32_t, int32_t, int32_t)> &on_configure();
8857 
8865  std::function<void()> &on_popup_done();
8866 
8867 };
8868 
8872 enum class zxdg_popup_v6_error : uint32_t
8873  {
8875  invalid_grab = 0
8876 };
8877 
8878 
8885 {
8886 private:
8887  struct events_t : public detail::events_base_t
8888  {
8889  };
8890 
8891  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8892 
8893  zwp_xwayland_keyboard_grab_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8894 
8895 public:
8897  explicit zwp_xwayland_keyboard_grab_manager_v1_t(const proxy_t &proxy);
8898  zwp_xwayland_keyboard_grab_manager_v1_t(zwp_xwayland_keyboard_grab_manager_v1 *p, wrapper_type t = wrapper_type::standard);
8899 
8900  zwp_xwayland_keyboard_grab_manager_v1_t proxy_create_wrapper();
8901 
8902  static const std::string interface_name;
8903 
8904  operator zwp_xwayland_keyboard_grab_manager_v1*() const;
8905 
8931  zwp_xwayland_keyboard_grab_v1_t grab_keyboard(surface_t const& surface, seat_t const& seat);
8932 
8935  static constexpr std::uint32_t grab_keyboard_since_version = 1;
8936 
8937 };
8938 
8939 
8946 {
8947 private:
8948  struct events_t : public detail::events_base_t
8949  {
8950  };
8951 
8952  static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8953 
8954  zwp_xwayland_keyboard_grab_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8955 
8956 public:
8958  explicit zwp_xwayland_keyboard_grab_v1_t(const proxy_t &proxy);
8959  zwp_xwayland_keyboard_grab_v1_t(zwp_xwayland_keyboard_grab_v1 *p, wrapper_type t = wrapper_type::standard);
8960 
8961  zwp_xwayland_keyboard_grab_v1_t proxy_create_wrapper();
8962 
8963  static const std::string interface_name;
8964 
8965  operator zwp_xwayland_keyboard_grab_v1*() const;
8966 
8967 };
8968 
8969 
8970 
8971 }
content for a wl_surface
compositor output region
Represents a protocol object on the client side.
group of input devices
touchscreen input device
static constexpr std::uint32_t set_serial_since_version
Minimum protocol version required for the set_serial function.
static constexpr std::uint32_t set_app_id_since_version
Minimum protocol version required for the set_app_id function.
std::function< void(std::string)> & on_done()
the exported activation token
static constexpr std::uint32_t set_surface_since_version
Minimum protocol version required for the set_surface function.
void set_serial(uint32_t serial, seat_t const &seat)
specifies the seat and serial of the activating event
void set_app_id(std::string const &app_id)
specifies the application being activated
void set_surface(surface_t const &surface)
specifies the application being activated
static constexpr std::uint32_t commit_since_version
Minimum protocol version required for the commit function.
static constexpr std::uint32_t activate_since_version
Minimum protocol version required for the activate function.
void activate(std::string const &token, surface_t const &surface)
notify new interaction being available
static constexpr std::uint32_t get_activation_token_since_version
Minimum protocol version required for the get_activation_token function.
xdg_activation_token_v1_t get_activation_token()
requests a token
static constexpr std::uint32_t set_region_since_version
Minimum protocol version required for the set_region function.
std::function< void()> & on_unconfined()
pointer unconfined
std::function< void()> & on_confined()
pointer confined
void set_region(region_t const &region)
set a new confine region
void release()
release the wl_fullscreen_shell interface
static constexpr std::uint32_t present_surface_since_version
Minimum protocol version required for the present_surface function.
static constexpr std::uint32_t present_surface_for_mode_since_version
Minimum protocol version required for the present_surface_for_mode function.
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(zwp_fullscreen_shell_v1_capability)> & on_capability()
advertises a capability of the compositor
static constexpr std::uint32_t release_since_version
Minimum protocol version required for the release function.
void present_surface(surface_t const &surface, zwp_fullscreen_shell_v1_present_method const &method, output_t const &output)
present surface for display
static constexpr std::uint32_t create_inhibitor_since_version
Minimum protocol version required for the create_inhibitor function.
zwp_idle_inhibitor_v1_t create_inhibitor(surface_t const &surface)
create a new inhibitor object
context object for inhibiting idle behavior
static constexpr std::uint32_t preedit_string_since_version
Minimum protocol version required for the preedit_string function.
static constexpr std::uint32_t grab_keyboard_since_version
Minimum protocol version required for the grab_keyboard function.
std::function< void(uint32_t, uint32_t)> & on_invoke_action()
void modifiers(uint32_t serial, uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, uint32_t group)
forward modifiers event
static constexpr std::uint32_t modifiers_map_since_version
Minimum protocol version required for the modifiers_map function.
static constexpr std::uint32_t preedit_styling_since_version
Minimum protocol version required for the preedit_styling function.
void preedit_string(uint32_t serial, std::string const &text, std::string const &commit)
pre-edit string
void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const &style)
pre-edit styling
std::function< void(std::string, uint32_t, uint32_t)> & on_surrounding_text()
surrounding text event
static constexpr std::uint32_t commit_string_since_version
Minimum protocol version required for the commit_string function.
void cursor_position(int32_t index, int32_t anchor)
set cursor to a new position
static constexpr std::uint32_t language_since_version
Minimum protocol version required for the language function.
void text_direction(uint32_t serial, uint32_t direction)
static constexpr std::uint32_t key_since_version
Minimum protocol version required for the key function.
std::function< void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> & on_content_type()
static constexpr std::uint32_t modifiers_since_version
Minimum protocol version required for the modifiers function.
void language(uint32_t serial, std::string const &language)
void delete_surrounding_text(int32_t index, uint32_t length)
delete text
static constexpr std::uint32_t text_direction_since_version
Minimum protocol version required for the text_direction function.
void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const &state, uint32_t modifiers)
keysym
void commit_string(uint32_t serial, std::string const &text)
commit string
static constexpr std::uint32_t preedit_cursor_since_version
Minimum protocol version required for the preedit_cursor function.
static constexpr std::uint32_t keysym_since_version
Minimum protocol version required for the keysym function.
void key(uint32_t serial, uint32_t time, uint32_t key, keyboard_key_state const &state)
forward key event
static constexpr std::uint32_t cursor_position_since_version
Minimum protocol version required for the cursor_position function.
static constexpr std::uint32_t delete_surrounding_text_since_version
Minimum protocol version required for the delete_surrounding_text function.
std::function< void(std::string)> & on_preferred_language()
std::function< void(zwp_input_method_context_v1_t)> & on_activate()
activate event
std::function< void(zwp_input_method_context_v1_t)> & on_deactivate()
deactivate event
interface for implementing keyboards
zwp_input_panel_surface_v1_t get_input_panel_surface(surface_t const &surface)
static constexpr std::uint32_t get_input_panel_surface_since_version
Minimum protocol version required for the get_input_panel_surface function.
context object for high-resolution input timestamps
zwp_input_timestamps_v1_t get_keyboard_timestamps(keyboard_t const &keyboard)
subscribe to high-resolution keyboard timestamp events
static constexpr std::uint32_t get_pointer_timestamps_since_version
Minimum protocol version required for the get_pointer_timestamps function.
static constexpr std::uint32_t get_touch_timestamps_since_version
Minimum protocol version required for the get_touch_timestamps function.
zwp_input_timestamps_v1_t get_touch_timestamps(touch_t const &touch)
subscribe to high-resolution touch timestamp events
zwp_input_timestamps_v1_t get_pointer_timestamps(pointer_t const &pointer)
subscribe to high-resolution pointer timestamp events
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, uint32_t)> & on_timestamp()
high-resolution timestamp event
static constexpr std::uint32_t inhibit_shortcuts_since_version
Minimum protocol version required for the inhibit_shortcuts function.
zwp_keyboard_shortcuts_inhibitor_v1_t inhibit_shortcuts(surface_t const &surface, seat_t const &seat)
create a new keyboard shortcuts inhibitor object
context object for keyboard shortcuts inhibitor
std::function< void()> & on_inactive()
shortcuts are restored
std::function< void()> & on_active()
shortcuts are inhibited
parameters for creating a dmabuf-based wl_buffer
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
std::function< void()> & on_failed()
buffer creation failed
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
static constexpr std::uint32_t create_since_version
Minimum protocol version required for the create function.
std::function< void(buffer_t)> & on_created()
buffer creation succeeded
bool can_create_immed() const
Check whether the create_immed function is available with the currently bound version of the protocol...
static constexpr std::uint32_t add_since_version
Minimum protocol version required for the add 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
static constexpr std::uint32_t create_immed_since_version
Minimum protocol version required for the create_immed function.
std::function< void(int)> & on_fenced_release()
release buffer with fence
std::function< void()> & on_immediate_release()
release buffer immediately
std::function< void()> & on_tranche_done()
a preference tranche has been sent
std::function< void(array_t)> & on_main_device()
preferred main device
std::function< void(zwp_linux_dmabuf_feedback_v1_tranche_flags)> & on_tranche_flags()
tranche flags
std::function< void()> & on_done()
all feedback has been sent
std::function< void(array_t)> & on_tranche_formats()
supported buffer format modifier
std::function< void(int, uint32_t)> & on_format_table()
format and modifier table
std::function< void(array_t)> & on_tranche_target_device()
target device
factory for creating dmabuf-based wl_buffers
static constexpr std::uint32_t get_default_feedback_since_version
Minimum protocol version required for the get_default_feedback function.
std::function< void(uint32_t)> & on_format()
supported buffer format
bool can_get_default_feedback() const
Check whether the get_default_feedback function is available with the currently bound version of the ...
bool can_get_surface_feedback() const
Check whether the get_surface_feedback function is available with the currently bound version of the ...
zwp_linux_dmabuf_feedback_v1_t get_surface_feedback(surface_t const &surface)
get feedback for a surface
static constexpr std::uint32_t create_params_since_version
Minimum protocol version required for the create_params function.
zwp_linux_dmabuf_feedback_v1_t get_default_feedback()
get default feedback
std::function< void(uint32_t, uint32_t, uint32_t)> & on_modifier()
supported buffer format modifier
static constexpr std::uint32_t get_surface_feedback_since_version
Minimum protocol version required for the get_surface_feedback function.
zwp_linux_buffer_params_v1_t create_params()
create a temporary object for buffer parameters
static constexpr std::uint32_t get_synchronization_since_version
Minimum protocol version required for the get_synchronization function.
zwp_linux_surface_synchronization_v1_t get_synchronization(surface_t const &surface)
extend surface interface for explicit synchronization
static constexpr std::uint32_t get_release_since_version
Minimum protocol version required for the get_release function.
zwp_linux_buffer_release_v1_t get_release()
release fence for last-attached buffer
static constexpr std::uint32_t set_acquire_fence_since_version
Minimum protocol version required for the set_acquire_fence function.
receive relative pointer motion events
static constexpr std::uint32_t set_cursor_position_hint_since_version
Minimum protocol version required for the set_cursor_position_hint function.
void set_cursor_position_hint(double surface_x, double surface_y)
set the pointer cursor position hint
void set_region(region_t const &region)
set a new lock region
std::function< void()> & on_unlocked()
lock deactivation event
std::function< void()> & on_locked()
lock activation event
static constexpr std::uint32_t set_region_since_version
Minimum protocol version required for the set_region function.
static constexpr std::uint32_t lock_pointer_since_version
Minimum protocol version required for the lock_pointer function.
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
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
static constexpr std::uint32_t confine_pointer_since_version
Minimum protocol version required for the confine_pointer function.
std::function< void(uint32_t, uint32_t, int32_t)> & on_end()
multi-finger hold end
std::function< void(uint32_t, uint32_t, surface_t, uint32_t)> & on_begin()
multi-finger hold begin
std::function< void(uint32_t, uint32_t, int32_t)> & on_end()
multi-finger pinch end
std::function< void(uint32_t, double, double, double, double)> & on_update()
multi-finger pinch motion
std::function< void(uint32_t, uint32_t, surface_t, uint32_t)> & on_begin()
multi-finger pinch begin
std::function< void(uint32_t, uint32_t, surface_t, uint32_t)> & on_begin()
multi-finger swipe begin
std::function< void(uint32_t, uint32_t, int32_t)> & on_end()
multi-finger swipe end
std::function< void(uint32_t, double, double)> & on_update()
multi-finger swipe motion
static constexpr std::uint32_t get_hold_gesture_since_version
Minimum protocol version required for the get_hold_gesture function.
static constexpr std::uint32_t release_since_version
Minimum protocol version required for the release function.
zwp_pointer_gesture_swipe_v1_t get_swipe_gesture(pointer_t const &pointer)
get swipe gesture
zwp_pointer_gesture_pinch_v1_t get_pinch_gesture(pointer_t const &pointer)
get pinch gesture
void release()
destroy the pointer gesture object
static constexpr std::uint32_t get_swipe_gesture_since_version
Minimum protocol version required for the get_swipe_gesture function.
static constexpr std::uint32_t get_pinch_gesture_since_version
Minimum protocol version required for the get_pinch_gesture function.
bool can_release() const
Check whether the release function is available with the currently bound version of the protocol.
bool can_get_hold_gesture() const
Check whether the get_hold_gesture function is available with the currently bound version of the prot...
zwp_pointer_gesture_hold_v1_t get_hold_gesture(pointer_t const &pointer)
get hold gesture
static constexpr std::uint32_t get_device_since_version
Minimum protocol version required for the get_device function.
zwp_primary_selection_device_v1_t get_device(seat_t const &seat)
create a new primary selection device
zwp_primary_selection_source_v1_t create_source()
create a new primary selection source
static constexpr std::uint32_t create_source_since_version
Minimum protocol version required for the create_source function.
offer to transfer primary selection contents
void receive(std::string const &mime_type, int fd)
request that the data is transferred
std::function< void(std::string)> & on_offer()
advertise offered mime type
static constexpr std::uint32_t receive_since_version
Minimum protocol version required for the receive function.
offer to replace the contents of the primary selection
std::function< void()> & on_cancelled()
request for primary selection contents was canceled
void offer(std::string const &mime_type)
add an offered mime type
std::function< void(std::string, int)> & on_send()
send the primary selection contents
static constexpr std::uint32_t offer_since_version
Minimum protocol version required for the offer function.
zwp_relative_pointer_v1_t get_relative_pointer(pointer_t const &pointer)
get a relative pointer object
static constexpr std::uint32_t get_relative_pointer_since_version
Minimum protocol version required for the get_relative_pointer function.
std::function< void(uint32_t, uint32_t, double, double, double, double)> & on_relative_motion()
relative pointer motion
controller object for graphic tablet devices
static constexpr std::uint32_t get_tablet_seat_since_version
Minimum protocol version required for the get_tablet_seat function.
zwp_tablet_seat_v1_t get_tablet_seat(seat_t const &seat)
get the tablet seat
controller object for graphic tablet devices
static constexpr std::uint32_t get_tablet_seat_since_version
Minimum protocol version required for the get_tablet_seat function.
zwp_tablet_seat_v2_t get_tablet_seat(seat_t const &seat)
get the tablet seat
std::function< void()> & on_done()
tablet group description events sequence complete
std::function< void(uint32_t)> & on_modes()
mode-switch ability announced
std::function< void(zwp_tablet_pad_strip_v2_t)> & on_strip()
strip announced
std::function< void(array_t)> & on_buttons()
buttons announced
std::function< void(uint32_t, uint32_t, uint32_t)> & on_mode_switch()
mode switch event
std::function< void(zwp_tablet_pad_ring_v2_t)> & on_ring()
ring announced
std::function< void(double)> & on_angle()
angle changed
void set_feedback(std::string const &description, uint32_t serial)
set compositor feedback
std::function< void(uint32_t)> & on_frame()
end of a ring event sequence
static constexpr std::uint32_t set_feedback_since_version
Minimum protocol version required for the set_feedback function.
std::function< void(zwp_tablet_pad_ring_v2_source)> & on_source()
ring event source
std::function< void()> & on_stop()
interaction stopped
std::function< void(zwp_tablet_pad_strip_v2_source)> & on_source()
strip event source
std::function< void(uint32_t)> & on_frame()
end of a strip event sequence
std::function< void(uint32_t)> & on_position()
position changed
void set_feedback(std::string const &description, uint32_t serial)
set compositor feedback
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
a set of buttons, rings and strips
std::function< void(uint32_t, surface_t)> & on_leave()
enter event
std::function< void(uint32_t, zwp_tablet_v2_t, surface_t)> & on_enter()
enter event
std::function< void(std::string)> & on_path()
path to the device
void set_feedback(uint32_t button, std::string const &description, uint32_t serial)
set compositor feedback
std::function< void()> & on_done()
pad description event sequence complete
std::function< void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> & on_button()
physical button state
static constexpr std::uint32_t set_feedback_since_version
Minimum protocol version required for the set_feedback function.
std::function< void(uint32_t)> & on_buttons()
buttons announced
std::function< void()> & on_removed()
pad removed event
std::function< void(zwp_tablet_pad_group_v2_t)> & on_group()
group announced
controller object for graphic tablet devices of a seat
std::function< void(zwp_tablet_tool_v1_t)> & on_tool_added()
a new tool has been used with a tablet
std::function< void(zwp_tablet_v1_t)> & on_tablet_added()
new device notification
controller object for graphic tablet devices of a seat
std::function< void(zwp_tablet_pad_v2_t)> & on_pad_added()
new pad notification
std::function< void(zwp_tablet_tool_v2_t)> & on_tool_added()
a new tool has been used with a tablet
std::function< void(zwp_tablet_v2_t)> & on_tablet_added()
new device notification
void set_cursor(uint32_t serial, surface_t const &surface, int32_t hotspot_x, int32_t hotspot_y)
set the tablet tool's surface
std::function< void(double, double)> & on_motion()
motion event
std::function< void(int32_t)> & on_slider()
Slider position change event.
std::function< void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> & on_button()
button event
std::function< void()> & on_proximity_out()
proximity out event
std::function< void()> & on_up()
tablet tool is no longer making contact
std::function< void(uint32_t)> & on_frame()
frame event
static constexpr std::uint32_t set_cursor_since_version
Minimum protocol version required for the set_cursor function.
std::function< void(uint32_t)> & on_distance()
distance change event
std::function< void(uint32_t)> & on_down()
tablet tool is making contact
std::function< void(zwp_tablet_tool_v1_capability)> & on_capability()
tool capability notification
std::function< void(int32_t)> & on_rotation()
z-rotation change event
std::function< void()> & on_done()
tool description events sequence complete
std::function< void(zwp_tablet_tool_v1_type)> & on_type()
tool type
std::function< void(int32_t, int32_t)> & on_wheel()
Wheel delta event.
std::function< void()> & on_removed()
tool removed
std::function< void(uint32_t, uint32_t)> & on_hardware_id_wacom()
hardware id notification in Wacom's format
std::function< void(uint32_t, uint32_t)> & on_hardware_serial()
unique hardware serial number of the tool
std::function< void(uint32_t)> & on_pressure()
pressure change event
std::function< void(uint32_t, zwp_tablet_v1_t, surface_t)> & on_proximity_in()
proximity in event
std::function< void(int32_t, int32_t)> & on_tilt()
tilt change event
std::function< void()> & on_removed()
tool removed
std::function< void(uint32_t, uint32_t)> & on_hardware_serial()
unique hardware serial number of the tool
std::function< void(double)> & on_rotation()
z-rotation change event
std::function< void(uint32_t)> & on_down()
tablet tool is making contact
static constexpr std::uint32_t set_cursor_since_version
Minimum protocol version required for the set_cursor function.
std::function< void(double, double)> & on_tilt()
tilt change event
std::function< void(double, int32_t)> & on_wheel()
Wheel delta event.
std::function< void(int32_t)> & on_slider()
Slider position change event.
std::function< void()> & on_up()
tablet tool is no longer making contact
std::function< void(zwp_tablet_tool_v2_type)> & on_type()
tool type
std::function< void(double, double)> & on_motion()
motion event
std::function< void()> & on_done()
tool description events sequence complete
std::function< void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> & on_button()
button event
std::function< void(uint32_t)> & on_frame()
frame event
std::function< void(zwp_tablet_tool_v2_capability)> & on_capability()
tool capability notification
std::function< void(uint32_t, uint32_t)> & on_hardware_id_wacom()
hardware id notification in Wacom's format
std::function< void(uint32_t)> & on_distance()
distance change event
void set_cursor(uint32_t serial, surface_t const &surface, int32_t hotspot_x, int32_t hotspot_y)
set the tablet tool's surface
std::function< void(uint32_t)> & on_pressure()
pressure change event
std::function< void()> & on_proximity_out()
proximity out event
std::function< void(uint32_t, zwp_tablet_v2_t, surface_t)> & on_proximity_in()
proximity in event
std::function< void(std::string)> & on_name()
tablet device name
std::function< void(uint32_t, uint32_t)> & on_id()
tablet device USB vendor/product id
std::function< void()> & on_done()
tablet description events sequence complete
std::function< void(std::string)> & on_path()
path to the device
std::function< void()> & on_removed()
tablet removed event
std::function< void()> & on_removed()
tablet removed event
std::function< void(uint32_t, uint32_t)> & on_id()
tablet device USB vendor/product id
std::function< void(std::string)> & on_path()
path to the device
std::function< void()> & on_done()
tablet description events sequence complete
std::function< void(std::string)> & on_name()
tablet device name
zwp_text_input_v1_t create_text_input()
create text input
static constexpr std::uint32_t create_text_input_since_version
Minimum protocol version required for the create_text_input function.
zwp_text_input_v3_t get_text_input(seat_t const &seat)
create a new text input object
static constexpr std::uint32_t get_text_input_since_version
Minimum protocol version required for the get_text_input function.
std::function< void(uint32_t, std::string, std::string)> & on_preedit_string()
pre-edit
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 activate_since_version
Minimum protocol version required for the activate function.
void deactivate(seat_t const &seat)
request deactivation
static constexpr std::uint32_t set_content_type_since_version
Minimum protocol version required for the set_content_type function.
void activate(seat_t const &seat, surface_t const &surface)
request activation
std::function< void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> & on_preedit_styling()
pre-edit styling
void set_surrounding_text(std::string const &text, uint32_t cursor, uint32_t anchor)
sets the surrounding text
std::function< void(surface_t)> & on_enter()
enter event
std::function< void(uint32_t, std::string)> & on_language()
language
std::function< void(int32_t)> & on_preedit_cursor()
pre-edit cursor
std::function< void(array_t)> & on_modifiers_map()
modifiers map
static constexpr std::uint32_t reset_since_version
Minimum protocol version required for the reset function.
static constexpr std::uint32_t set_preferred_language_since_version
Minimum protocol version required for the set_preferred_language function.
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, uint32_t)> & on_delete_surrounding_text()
delete surrounding text
void invoke_action(uint32_t button, uint32_t index)
void set_preferred_language(std::string const &language)
sets preferred language
static constexpr std::uint32_t set_surrounding_text_since_version
Minimum protocol version required for the set_surrounding_text function.
static constexpr std::uint32_t set_cursor_rectangle_since_version
Minimum protocol version required for the set_cursor_rectangle function.
void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height)
static constexpr std::uint32_t deactivate_since_version
Minimum protocol version required for the deactivate function.
std::function< void(uint32_t)> & on_input_panel_state()
state of the input panel
std::function< void(uint32_t, std::string)> & on_commit_string()
commit
static constexpr std::uint32_t show_input_panel_since_version
Minimum protocol version required for the show_input_panel function.
static constexpr std::uint32_t invoke_action_since_version
Minimum protocol version required for the invoke_action function.
static constexpr std::uint32_t commit_state_since_version
Minimum protocol version required for the commit_state function.
std::function< void(uint32_t, zwp_text_input_v1_text_direction)> & on_text_direction()
text direction
std::function< void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> & on_keysym()
keysym
std::function< void(int32_t, int32_t)> & on_cursor_position()
set cursor to new position
std::function< void()> & on_leave()
leave event
static constexpr std::uint32_t set_content_type_since_version
Minimum protocol version required for the set_content_type function.
std::function< void(surface_t)> & on_leave()
leave event
void disable()
Disable text input on a surface.
void enable()
Request text input to be enabled.
static constexpr std::uint32_t set_text_change_cause_since_version
Minimum protocol version required for the set_text_change_cause function.
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 enable_since_version
Minimum protocol version required for the enable function.
static constexpr std::uint32_t set_surrounding_text_since_version
Minimum protocol version required for the set_surrounding_text function.
std::function< void(std::string)> & on_commit_string()
text commit
void set_surrounding_text(std::string const &text, int32_t cursor, int32_t anchor)
sets the surrounding text
static constexpr std::uint32_t commit_since_version
Minimum protocol version required for the commit function.
std::function< void(uint32_t)> & on_done()
apply changes
void set_text_change_cause(zwp_text_input_v3_change_cause const &cause)
indicates the cause of surrounding text change
std::function< void(uint32_t, uint32_t)> & on_delete_surrounding_text()
delete surrounding text
static constexpr std::uint32_t set_cursor_rectangle_since_version
Minimum protocol version required for the set_cursor_rectangle function.
std::function< void(surface_t)> & on_enter()
enter event
std::function< void(std::string, int32_t, int32_t)> & on_preedit_string()
pre-edit
static constexpr std::uint32_t disable_since_version
Minimum protocol version required for the disable function.
void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height)
set cursor position
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 grab_keyboard_since_version
Minimum protocol version required for the grab_keyboard function.
static constexpr std::uint32_t get_toplevel_decoration_since_version
Minimum protocol version required for the get_toplevel_decoration function.
zxdg_toplevel_decoration_v1_t get_toplevel_decoration(xdg_toplevel_t const &toplevel)
create a new toplevel decoration object
std::function< void(std::string)> & on_handle()
the exported surface handle
std::function< void(std::string)> & on_handle()
the exported surface handle
zxdg_exported_v1_t _export(surface_t const &surface)
export a surface
static constexpr std::uint32_t export_since_version
Minimum protocol version required for the _export function.
static constexpr std::uint32_t export_toplevel_since_version
Minimum protocol version required for the export_toplevel function.
zxdg_exported_v2_t export_toplevel(surface_t const &surface)
export a toplevel surface
static constexpr std::uint32_t set_parent_of_since_version
Minimum protocol version required for the set_parent_of function.
std::function< void()> & on_destroyed()
the imported surface handle has been destroyed
void set_parent_of(surface_t const &surface)
set as the parent of some surface
static constexpr std::uint32_t set_parent_of_since_version
Minimum protocol version required for the set_parent_of function.
std::function< void()> & on_destroyed()
the imported surface handle has been destroyed
void set_parent_of(surface_t const &surface)
set as the parent of some surface
static constexpr std::uint32_t import_since_version
Minimum protocol version required for the import function.
static constexpr std::uint32_t import_toplevel_since_version
Minimum protocol version required for the import_toplevel function.
zxdg_imported_v2_t import_toplevel(std::string const &handle)
import a toplevel surface
zxdg_output_v1_t get_xdg_output(output_t const &output)
create an xdg output from a wl_output
static constexpr std::uint32_t get_xdg_output_since_version
Minimum protocol version required for the get_xdg_output function.
compositor logical output region
std::function< void(std::string)> & on_description()
human-readable description of this output
std::function< void()> & on_done()
all information about the output have been sent
std::function< void(int32_t, int32_t)> & on_logical_position()
position of the output within the global compositor space
std::function< void(int32_t, int32_t)> & on_logical_size()
size of the output in the global compositor space
std::function< void(std::string)> & on_name()
name of this output
short-lived, popup surfaces for menus
static constexpr std::uint32_t grab_since_version
Minimum protocol version required for the grab function.
void grab(seat_t const &seat, uint32_t serial)
make the popup take an explicit grab
std::function< void()> & on_popup_done()
popup interaction is done
std::function< void(int32_t, int32_t, int32_t, int32_t)> & on_configure()
configure the popup surface
static constexpr std::uint32_t set_size_since_version
Minimum protocol version required for the set_size function.
static constexpr std::uint32_t set_gravity_since_version
Minimum protocol version required for the set_gravity function.
static constexpr std::uint32_t set_anchor_since_version
Minimum protocol version required for the set_anchor function.
void set_anchor(zxdg_positioner_v6_anchor const &anchor)
set anchor rectangle anchor edges
static constexpr std::uint32_t set_anchor_rect_since_version
Minimum protocol version required for the set_anchor_rect function.
void set_offset(int32_t x, int32_t y)
set surface position offset
void set_size(int32_t width, int32_t height)
set the size of the to-be positioned rectangle
void set_anchor_rect(int32_t x, int32_t y, int32_t width, int32_t height)
set the anchor rectangle within the parent surface
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_offset_since_version
Minimum protocol version required for the set_offset function.
void set_gravity(zxdg_positioner_v6_gravity const &gravity)
set child surface gravity
void set_constraint_adjustment(zxdg_positioner_v6_constraint_adjustment const &constraint_adjustment)
set the adjustment to be done when constrained
void pong(uint32_t serial)
respond to a ping event
zxdg_positioner_v6_t create_positioner()
create a positioner object
static constexpr std::uint32_t pong_since_version
Minimum protocol version required for the pong function.
static constexpr std::uint32_t create_positioner_since_version
Minimum protocol version required for the create_positioner function.
std::function< void(uint32_t)> & on_ping()
check if the client is alive
static constexpr std::uint32_t get_xdg_surface_since_version
Minimum protocol version required for the get_xdg_surface function.
zxdg_surface_v6_t get_xdg_surface(surface_t const &surface)
create a shell surface from a surface
desktop user interface surface base interface
zxdg_toplevel_v6_t get_toplevel()
assign the xdg_toplevel surface role
static constexpr std::uint32_t get_popup_since_version
Minimum protocol version required for the get_popup function.
static constexpr std::uint32_t get_toplevel_since_version
Minimum protocol version required for the get_toplevel function.
static constexpr std::uint32_t set_window_geometry_since_version
Minimum protocol version required for the set_window_geometry function.
std::function< void(uint32_t)> & on_configure()
suggest a surface change
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 ack_configure_since_version
Minimum protocol version required for the ack_configure function.
void set_window_geometry(int32_t x, int32_t y, int32_t width, int32_t height)
set the new window geometry
void ack_configure(uint32_t serial)
ack a configure event
static constexpr std::uint32_t set_mode_since_version
Minimum protocol version required for the set_mode function.
static constexpr std::uint32_t unset_mode_since_version
Minimum protocol version required for the unset_mode function.
std::function< void(zxdg_toplevel_decoration_v1_mode)> & on_configure()
suggest a surface change
void set_mode(zxdg_toplevel_decoration_v1_mode const &mode)
set the decoration mode
void set_minimized()
set the window as minimized
void set_parent(zxdg_toplevel_v6_t const &parent)
set the parent of this surface
void set_fullscreen(output_t const &output)
set the window as fullscreen on a monitor
static constexpr std::uint32_t unset_fullscreen_since_version
Minimum protocol version required for the unset_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 resize_since_version
Minimum protocol version required for the resize function.
static constexpr std::uint32_t set_app_id_since_version
Minimum protocol version required for the set_app_id function.
std::function< void(int32_t, int32_t, array_t)> & on_configure()
suggest a surface change
static constexpr std::uint32_t set_parent_since_version
Minimum protocol version required for the set_parent 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_minimized_since_version
Minimum protocol version required for the set_minimized function.
void show_window_menu(seat_t const &seat, uint32_t serial, int32_t x, int32_t y)
show the window menu
static constexpr std::uint32_t unset_maximized_since_version
Minimum protocol version required for the unset_maximized function.
static constexpr std::uint32_t show_window_menu_since_version
Minimum protocol version required for the show_window_menu function.
void set_title(std::string const &title)
set surface title
static constexpr std::uint32_t set_title_since_version
Minimum protocol version required for the set_title function.
void resize(seat_t const &seat, uint32_t serial, zxdg_toplevel_v6_resize_edge const &edges)
start an interactive resize
static constexpr std::uint32_t set_min_size_since_version
Minimum protocol version required for the set_min_size function.
void move(seat_t const &seat, uint32_t serial)
start an interactive move
void set_min_size(int32_t width, int32_t height)
set the minimum size
static constexpr std::uint32_t move_since_version
Minimum protocol version required for the move function.
std::function< void()> & on_close()
surface wants to be closed
static constexpr std::uint32_t set_max_size_since_version
Minimum protocol version required for the set_max_size function.
void set_max_size(int32_t width, int32_t height)
set the maximum size
void set_app_id(std::string const &app_id)
set application ID
static const detail::bitfield< 10, 23 > auto_completion
suggest word completions
static const detail::bitfield< 10, 23 > titlecase
prefer casing for titles and headings (can be language dependent)
static const detail::bitfield< 10, 23 > latin
just latin characters should be entered
static const detail::bitfield< 10, 23 > uppercase
prefer uppercase letters
static const detail::bitfield< 10, 23 > sensitive_data
typed text should not be stored
static const detail::bitfield< 10, 23 > lowercase
prefer lowercase letters
static const detail::bitfield< 10, 23 > auto_capitalization
switch to uppercase letters at the start of a sentence
static const detail::bitfield< 10, 23 > none
no special behaviour
static const detail::bitfield< 10, 23 > hidden_text
characters should be hidden
static const detail::bitfield< 10, 23 > _default
auto completion, correction and capitalization
static const detail::bitfield< 10, 23 > password
hidden and sensitive text
static const detail::bitfield< 10, 23 > multiline
the text input is multiline
static const detail::bitfield< 10, 23 > auto_correction
suggest word corrections
static const detail::bitfield< 10, 28 > spellcheck
suggest word corrections
static const detail::bitfield< 10, 28 > none
no special behavior
static const detail::bitfield< 10, 28 > titlecase
prefer casing for titles and headings (can be language dependent)
static const detail::bitfield< 10, 28 > uppercase
prefer uppercase letters
static const detail::bitfield< 10, 28 > lowercase
prefer lowercase letters
static const detail::bitfield< 10, 28 > completion
suggest word completions
static const detail::bitfield< 10, 28 > multiline
the text input is multiline
static const detail::bitfield< 10, 28 > latin
just Latin characters should be entered
static const detail::bitfield< 10, 28 > hidden_text
characters should be hidden
static const detail::bitfield< 10, 28 > sensitive_data
typed text should not be stored
static const detail::bitfield< 10, 28 > auto_capitalization
switch to uppercase letters at the start of a sentence