Wayland++ 0.2.8
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
12struct zwp_fullscreen_shell_v1;
13struct zwp_fullscreen_shell_mode_feedback_v1;
14struct zwp_idle_inhibit_manager_v1;
15struct zwp_idle_inhibitor_v1;
16struct zwp_input_method_context_v1;
17struct zwp_input_method_v1;
18struct zwp_input_panel_v1;
19struct zwp_input_panel_surface_v1;
20struct zwp_input_timestamps_manager_v1;
21struct zwp_input_timestamps_v1;
22struct zwp_keyboard_shortcuts_inhibit_manager_v1;
23struct zwp_keyboard_shortcuts_inhibitor_v1;
24struct zwp_linux_dmabuf_v1;
25struct zwp_linux_buffer_params_v1;
26struct zwp_linux_explicit_synchronization_v1;
27struct zwp_linux_surface_synchronization_v1;
28struct zwp_linux_buffer_release_v1;
29struct zwp_pointer_constraints_v1;
30struct zwp_locked_pointer_v1;
31struct zwp_confined_pointer_v1;
32struct zwp_pointer_gestures_v1;
33struct zwp_pointer_gesture_swipe_v1;
34struct zwp_pointer_gesture_pinch_v1;
35struct zwp_primary_selection_device_manager_v1;
36struct zwp_primary_selection_device_v1;
37struct zwp_primary_selection_offer_v1;
38struct zwp_primary_selection_source_v1;
39struct zwp_relative_pointer_manager_v1;
40struct zwp_relative_pointer_v1;
41struct zwp_tablet_manager_v1;
42struct zwp_tablet_seat_v1;
43struct zwp_tablet_tool_v1;
44struct zwp_tablet_v1;
45struct zwp_tablet_manager_v2;
46struct zwp_tablet_seat_v2;
47struct zwp_tablet_tool_v2;
48struct zwp_tablet_v2;
49struct zwp_tablet_pad_ring_v2;
50struct zwp_tablet_pad_strip_v2;
51struct zwp_tablet_pad_group_v2;
52struct zwp_tablet_pad_v2;
53struct zwp_text_input_v1;
54struct zwp_text_input_manager_v1;
55struct zwp_text_input_v3;
56struct zwp_text_input_manager_v3;
57struct zxdg_decoration_manager_v1;
58struct zxdg_toplevel_decoration_v1;
59struct zxdg_exporter_v1;
60struct zxdg_importer_v1;
61struct zxdg_exported_v1;
62struct zxdg_imported_v1;
63struct zxdg_exporter_v2;
64struct zxdg_importer_v2;
65struct zxdg_exported_v2;
66struct zxdg_imported_v2;
67struct zxdg_output_manager_v1;
68struct zxdg_output_v1;
69struct zxdg_shell_v6;
70struct zxdg_positioner_v6;
71struct zxdg_surface_v6;
72struct zxdg_toplevel_v6;
73struct zxdg_popup_v6;
74struct zwp_xwayland_keyboard_grab_manager_v1;
75struct zwp_xwayland_keyboard_grab_v1;
76
77namespace wayland
78{
79class zwp_fullscreen_shell_v1_t;
80enum class zwp_fullscreen_shell_v1_capability : uint32_t;
81enum class zwp_fullscreen_shell_v1_present_method : uint32_t;
82enum class zwp_fullscreen_shell_v1_error : uint32_t;
83class zwp_fullscreen_shell_mode_feedback_v1_t;
84class zwp_idle_inhibit_manager_v1_t;
85class zwp_idle_inhibitor_v1_t;
86class zwp_input_method_context_v1_t;
87class zwp_input_method_v1_t;
88class zwp_input_panel_v1_t;
89class zwp_input_panel_surface_v1_t;
90enum class zwp_input_panel_surface_v1_position : uint32_t;
91class zwp_input_timestamps_manager_v1_t;
92class zwp_input_timestamps_v1_t;
93class zwp_keyboard_shortcuts_inhibit_manager_v1_t;
94enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t;
95class zwp_keyboard_shortcuts_inhibitor_v1_t;
96class zwp_linux_dmabuf_v1_t;
97class zwp_linux_buffer_params_v1_t;
98enum class zwp_linux_buffer_params_v1_error : uint32_t;
99enum class zwp_linux_buffer_params_v1_flags : uint32_t;
100class zwp_linux_explicit_synchronization_v1_t;
101enum class zwp_linux_explicit_synchronization_v1_error : uint32_t;
102class zwp_linux_surface_synchronization_v1_t;
103enum class zwp_linux_surface_synchronization_v1_error : uint32_t;
104class zwp_linux_buffer_release_v1_t;
105class zwp_pointer_constraints_v1_t;
106enum class zwp_pointer_constraints_v1_error : uint32_t;
107enum class zwp_pointer_constraints_v1_lifetime : uint32_t;
108class zwp_locked_pointer_v1_t;
109class zwp_confined_pointer_v1_t;
110class zwp_pointer_gestures_v1_t;
111class zwp_pointer_gesture_swipe_v1_t;
112class zwp_pointer_gesture_pinch_v1_t;
113class zwp_primary_selection_device_manager_v1_t;
114class zwp_primary_selection_device_v1_t;
115class zwp_primary_selection_offer_v1_t;
116class zwp_primary_selection_source_v1_t;
117class zwp_relative_pointer_manager_v1_t;
118class zwp_relative_pointer_v1_t;
119class zwp_tablet_manager_v1_t;
120class zwp_tablet_seat_v1_t;
121class zwp_tablet_tool_v1_t;
122enum class zwp_tablet_tool_v1_type : uint32_t;
123enum class zwp_tablet_tool_v1_capability : uint32_t;
124enum class zwp_tablet_tool_v1_button_state : uint32_t;
125enum class zwp_tablet_tool_v1_error : uint32_t;
126class zwp_tablet_v1_t;
127class zwp_tablet_manager_v2_t;
128class zwp_tablet_seat_v2_t;
129class zwp_tablet_tool_v2_t;
130enum class zwp_tablet_tool_v2_type : uint32_t;
131enum class zwp_tablet_tool_v2_capability : uint32_t;
132enum class zwp_tablet_tool_v2_button_state : uint32_t;
133enum class zwp_tablet_tool_v2_error : uint32_t;
134class zwp_tablet_v2_t;
135class zwp_tablet_pad_ring_v2_t;
136enum class zwp_tablet_pad_ring_v2_source : uint32_t;
137class zwp_tablet_pad_strip_v2_t;
138enum class zwp_tablet_pad_strip_v2_source : uint32_t;
139class zwp_tablet_pad_group_v2_t;
140class zwp_tablet_pad_v2_t;
141enum class zwp_tablet_pad_v2_button_state : uint32_t;
142class zwp_text_input_v1_t;
143enum class zwp_text_input_v1_content_hint : uint32_t;
144enum class zwp_text_input_v1_content_purpose : uint32_t;
145enum class zwp_text_input_v1_preedit_style : uint32_t;
146enum class zwp_text_input_v1_text_direction : uint32_t;
147class zwp_text_input_manager_v1_t;
148class zwp_text_input_v3_t;
149enum class zwp_text_input_v3_change_cause : uint32_t;
150struct zwp_text_input_v3_content_hint;
151enum class zwp_text_input_v3_content_purpose : uint32_t;
152class zwp_text_input_manager_v3_t;
153class zxdg_decoration_manager_v1_t;
154class zxdg_toplevel_decoration_v1_t;
155enum class zxdg_toplevel_decoration_v1_error : uint32_t;
156enum class zxdg_toplevel_decoration_v1_mode : uint32_t;
157class zxdg_exporter_v1_t;
158class zxdg_importer_v1_t;
159class zxdg_exported_v1_t;
160class zxdg_imported_v1_t;
161class zxdg_exporter_v2_t;
162class zxdg_importer_v2_t;
163class zxdg_exported_v2_t;
164class zxdg_imported_v2_t;
165class zxdg_output_manager_v1_t;
166class zxdg_output_v1_t;
167class zxdg_shell_v6_t;
168enum class zxdg_shell_v6_error : uint32_t;
169class zxdg_positioner_v6_t;
170enum class zxdg_positioner_v6_error : uint32_t;
171struct zxdg_positioner_v6_anchor;
172struct zxdg_positioner_v6_gravity;
173struct zxdg_positioner_v6_constraint_adjustment;
174class zxdg_surface_v6_t;
175enum class zxdg_surface_v6_error : uint32_t;
176class zxdg_toplevel_v6_t;
177struct zxdg_toplevel_v6_resize_edge;
178enum class zxdg_toplevel_v6_state : uint32_t;
179class zxdg_popup_v6_t;
180enum class zxdg_popup_v6_error : uint32_t;
181class zwp_xwayland_keyboard_grab_manager_v1_t;
182class zwp_xwayland_keyboard_grab_v1_t;
183
184namespace detail
185{
186 extern const wl_interface zwp_fullscreen_shell_v1_interface;
187 extern const wl_interface zwp_fullscreen_shell_mode_feedback_v1_interface;
188 extern const wl_interface zwp_idle_inhibit_manager_v1_interface;
189 extern const wl_interface zwp_idle_inhibitor_v1_interface;
190 extern const wl_interface zwp_input_method_context_v1_interface;
191 extern const wl_interface zwp_input_method_v1_interface;
192 extern const wl_interface zwp_input_panel_v1_interface;
193 extern const wl_interface zwp_input_panel_surface_v1_interface;
194 extern const wl_interface zwp_input_timestamps_manager_v1_interface;
195 extern const wl_interface zwp_input_timestamps_v1_interface;
196 extern const wl_interface zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
197 extern const wl_interface zwp_keyboard_shortcuts_inhibitor_v1_interface;
198 extern const wl_interface zwp_linux_dmabuf_v1_interface;
199 extern const wl_interface zwp_linux_buffer_params_v1_interface;
200 extern const wl_interface zwp_linux_explicit_synchronization_v1_interface;
201 extern const wl_interface zwp_linux_surface_synchronization_v1_interface;
202 extern const wl_interface zwp_linux_buffer_release_v1_interface;
203 extern const wl_interface zwp_pointer_constraints_v1_interface;
204 extern const wl_interface zwp_locked_pointer_v1_interface;
205 extern const wl_interface zwp_confined_pointer_v1_interface;
206 extern const wl_interface zwp_pointer_gestures_v1_interface;
207 extern const wl_interface zwp_pointer_gesture_swipe_v1_interface;
208 extern const wl_interface zwp_pointer_gesture_pinch_v1_interface;
209 extern const wl_interface zwp_primary_selection_device_manager_v1_interface;
210 extern const wl_interface zwp_primary_selection_device_v1_interface;
211 extern const wl_interface zwp_primary_selection_offer_v1_interface;
212 extern const wl_interface zwp_primary_selection_source_v1_interface;
213 extern const wl_interface zwp_relative_pointer_manager_v1_interface;
214 extern const wl_interface zwp_relative_pointer_v1_interface;
215 extern const wl_interface zwp_tablet_manager_v1_interface;
216 extern const wl_interface zwp_tablet_seat_v1_interface;
217 extern const wl_interface zwp_tablet_tool_v1_interface;
218 extern const wl_interface zwp_tablet_v1_interface;
219 extern const wl_interface zwp_tablet_manager_v2_interface;
220 extern const wl_interface zwp_tablet_seat_v2_interface;
221 extern const wl_interface zwp_tablet_tool_v2_interface;
222 extern const wl_interface zwp_tablet_v2_interface;
223 extern const wl_interface zwp_tablet_pad_ring_v2_interface;
224 extern const wl_interface zwp_tablet_pad_strip_v2_interface;
225 extern const wl_interface zwp_tablet_pad_group_v2_interface;
226 extern const wl_interface zwp_tablet_pad_v2_interface;
227 extern const wl_interface zwp_text_input_v1_interface;
228 extern const wl_interface zwp_text_input_manager_v1_interface;
229 extern const wl_interface zwp_text_input_v3_interface;
230 extern const wl_interface zwp_text_input_manager_v3_interface;
231 extern const wl_interface zxdg_decoration_manager_v1_interface;
232 extern const wl_interface zxdg_toplevel_decoration_v1_interface;
233 extern const wl_interface zxdg_exporter_v1_interface;
234 extern const wl_interface zxdg_importer_v1_interface;
235 extern const wl_interface zxdg_exported_v1_interface;
236 extern const wl_interface zxdg_imported_v1_interface;
237 extern const wl_interface zxdg_exporter_v2_interface;
238 extern const wl_interface zxdg_importer_v2_interface;
239 extern const wl_interface zxdg_exported_v2_interface;
240 extern const wl_interface zxdg_imported_v2_interface;
241 extern const wl_interface zxdg_output_manager_v1_interface;
242 extern const wl_interface zxdg_output_v1_interface;
243 extern const wl_interface zxdg_shell_v6_interface;
244 extern const wl_interface zxdg_positioner_v6_interface;
245 extern const wl_interface zxdg_surface_v6_interface;
246 extern const wl_interface zxdg_toplevel_v6_interface;
247 extern const wl_interface zxdg_popup_v6_interface;
248 extern const wl_interface zwp_xwayland_keyboard_grab_manager_v1_interface;
249 extern const wl_interface zwp_xwayland_keyboard_grab_v1_interface;
250}
251
290{
291private:
292 struct events_t : public detail::events_base_t
293 {
294 std::function<void(zwp_fullscreen_shell_v1_capability)> capability;
295 };
296
297 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
298
299 zwp_fullscreen_shell_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
300
301public:
303 explicit zwp_fullscreen_shell_v1_t(const proxy_t &proxy);
304 zwp_fullscreen_shell_v1_t(zwp_fullscreen_shell_v1 *p, wrapper_type t = wrapper_type::standard);
305
306 zwp_fullscreen_shell_v1_t proxy_create_wrapper();
307
308 static const std::string interface_name;
309
310 operator zwp_fullscreen_shell_v1*() const;
311
321 void release();
322
325 static constexpr std::uint32_t release_since_version = 1;
326
351 void present_surface(surface_t const& surface, zwp_fullscreen_shell_v1_present_method const& method, output_t const& output);
352
355 static constexpr std::uint32_t present_surface_since_version = 1;
356
401 zwp_fullscreen_shell_mode_feedback_v1_t present_surface_for_mode(surface_t const& surface, output_t const& output, int32_t framerate);
402
405 static constexpr std::uint32_t present_surface_for_mode_since_version = 1;
406
420 std::function<void(zwp_fullscreen_shell_v1_capability)> &on_capability();
421
422};
423
449enum class zwp_fullscreen_shell_v1_capability : uint32_t
450 {
452 arbitrary_modes = 1,
454 cursor_plane = 2
455};
456
464enum class zwp_fullscreen_shell_v1_present_method : uint32_t
465 {
467 _default = 0,
469 center = 1,
471 zoom = 2,
473 zoom_crop = 3,
475 stretch = 4
476};
477
483enum class zwp_fullscreen_shell_v1_error : uint32_t
484 {
486 invalid_method = 0
487};
488
489
493class zwp_fullscreen_shell_mode_feedback_v1_t : public proxy_t
494{
495private:
496 struct events_t : public detail::events_base_t
497 {
498 std::function<void()> mode_successful;
499 std::function<void()> mode_failed;
500 std::function<void()> present_cancelled;
501 };
502
503 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
504
505 zwp_fullscreen_shell_mode_feedback_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
506
507public:
508 zwp_fullscreen_shell_mode_feedback_v1_t();
509 explicit zwp_fullscreen_shell_mode_feedback_v1_t(const proxy_t &proxy);
510 zwp_fullscreen_shell_mode_feedback_v1_t(zwp_fullscreen_shell_mode_feedback_v1 *p, wrapper_type t = wrapper_type::standard);
511
512 zwp_fullscreen_shell_mode_feedback_v1_t proxy_create_wrapper();
513
514 static const std::string interface_name;
515
516 operator zwp_fullscreen_shell_mode_feedback_v1*() const;
517
528 std::function<void()> &on_mode_successful();
529
540 std::function<void()> &on_mode_failed();
541
552 std::function<void()> &on_present_cancelled();
553
554};
555
556
574{
575private:
576 struct events_t : public detail::events_base_t
577 {
578 };
579
580 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
581
582 zwp_idle_inhibit_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
583
584public:
586 explicit zwp_idle_inhibit_manager_v1_t(const proxy_t &proxy);
587 zwp_idle_inhibit_manager_v1_t(zwp_idle_inhibit_manager_v1 *p, wrapper_type t = wrapper_type::standard);
588
589 zwp_idle_inhibit_manager_v1_t proxy_create_wrapper();
590
591 static const std::string interface_name;
592
593 operator zwp_idle_inhibit_manager_v1*() const;
594
602
605 static constexpr std::uint32_t create_inhibitor_since_version = 1;
606
607};
608
609
627{
628private:
629 struct events_t : public detail::events_base_t
630 {
631 };
632
633 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
634
635 zwp_idle_inhibitor_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
636
637public:
639 explicit zwp_idle_inhibitor_v1_t(const proxy_t &proxy);
640 zwp_idle_inhibitor_v1_t(zwp_idle_inhibitor_v1 *p, wrapper_type t = wrapper_type::standard);
641
642 zwp_idle_inhibitor_v1_t proxy_create_wrapper();
643
644 static const std::string interface_name;
645
646 operator zwp_idle_inhibitor_v1*() const;
647
648};
649
650
679{
680private:
681 struct events_t : public detail::events_base_t
682 {
683 std::function<void(std::string, uint32_t, uint32_t)> surrounding_text;
684 std::function<void()> reset;
685 std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> content_type;
686 std::function<void(uint32_t, uint32_t)> invoke_action;
687 std::function<void(uint32_t)> commit_state;
688 std::function<void(std::string)> preferred_language;
689 };
690
691 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
692
693 zwp_input_method_context_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
694
695public:
697 explicit zwp_input_method_context_v1_t(const proxy_t &proxy);
698 zwp_input_method_context_v1_t(zwp_input_method_context_v1 *p, wrapper_type t = wrapper_type::standard);
699
700 zwp_input_method_context_v1_t proxy_create_wrapper();
701
702 static const std::string interface_name;
703
704 operator zwp_input_method_context_v1*() const;
705
721 void commit_string(uint32_t serial, std::string const& text);
722
725 static constexpr std::uint32_t commit_string_since_version = 1;
726
741 void preedit_string(uint32_t serial, std::string const& text, std::string const& commit);
742
745 static constexpr std::uint32_t preedit_string_since_version = 1;
746
760 void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const& style);
761
764 static constexpr std::uint32_t preedit_styling_since_version = 1;
765
777 void preedit_cursor(int32_t index);
778
781 static constexpr std::uint32_t preedit_cursor_since_version = 1;
782
793 void delete_surrounding_text(int32_t index, uint32_t length);
794
797 static constexpr std::uint32_t delete_surrounding_text_since_version = 1;
798
815 void cursor_position(int32_t index, int32_t anchor);
816
819 static constexpr std::uint32_t cursor_position_since_version = 1;
820
825 void modifiers_map(array_t const& map);
826
829 static constexpr std::uint32_t modifiers_map_since_version = 1;
830
844 void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const& state, uint32_t modifiers);
845
848 static constexpr std::uint32_t keysym_since_version = 1;
849
859
862 static constexpr std::uint32_t grab_keyboard_since_version = 1;
863
878 void key(uint32_t serial, uint32_t time, uint32_t key, keyboard_key_state const& state);
879
882 static constexpr std::uint32_t key_since_version = 1;
883
897 void modifiers(uint32_t serial, uint32_t mods_depressed, uint32_t mods_latched, uint32_t mods_locked, uint32_t group);
898
901 static constexpr std::uint32_t modifiers_since_version = 1;
902
908 void language(uint32_t serial, std::string const& language);
909
912 static constexpr std::uint32_t language_since_version = 1;
913
919 void text_direction(uint32_t serial, uint32_t direction);
920
923 static constexpr std::uint32_t text_direction_since_version = 1;
924
937 std::function<void(std::string, uint32_t, uint32_t)> &on_surrounding_text();
938
942 std::function<void()> &on_reset();
943
949 std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> &on_content_type();
950
956 std::function<void(uint32_t, uint32_t)> &on_invoke_action();
957
962 std::function<void(uint32_t)> &on_commit_state();
963
968 std::function<void(std::string)> &on_preferred_language();
969
970};
971
972
982{
983private:
984 struct events_t : public detail::events_base_t
985 {
986 std::function<void(zwp_input_method_context_v1_t)> activate;
987 std::function<void(zwp_input_method_context_v1_t)> deactivate;
988 };
989
990 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
991
992 zwp_input_method_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
993
994public:
996 explicit zwp_input_method_v1_t(const proxy_t &proxy);
997 zwp_input_method_v1_t(zwp_input_method_v1 *p, wrapper_type t = wrapper_type::standard);
998
999 zwp_input_method_v1_t proxy_create_wrapper();
1000
1001 static const std::string interface_name;
1002
1003 operator zwp_input_method_v1*() const;
1004
1012 std::function<void(zwp_input_method_context_v1_t)> &on_activate();
1013
1022 std::function<void(zwp_input_method_context_v1_t)> &on_deactivate();
1023
1024};
1025
1026
1033{
1034private:
1035 struct events_t : public detail::events_base_t
1036 {
1037 };
1038
1039 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1040
1041 zwp_input_panel_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1042
1043public:
1045 explicit zwp_input_panel_v1_t(const proxy_t &proxy);
1046 zwp_input_panel_v1_t(zwp_input_panel_v1 *p, wrapper_type t = wrapper_type::standard);
1047
1048 zwp_input_panel_v1_t proxy_create_wrapper();
1049
1050 static const std::string interface_name;
1051
1052 operator zwp_input_panel_v1*() const;
1053
1058 zwp_input_panel_surface_v1_t get_input_panel_surface(surface_t const& surface);
1059
1062 static constexpr std::uint32_t get_input_panel_surface_since_version = 1;
1063
1064};
1065
1066
1070class zwp_input_panel_surface_v1_t : public proxy_t
1071{
1072private:
1073 struct events_t : public detail::events_base_t
1074 {
1075 };
1076
1077 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1078
1079 zwp_input_panel_surface_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1080
1081public:
1082 zwp_input_panel_surface_v1_t();
1083 explicit zwp_input_panel_surface_v1_t(const proxy_t &proxy);
1084 zwp_input_panel_surface_v1_t(zwp_input_panel_surface_v1 *p, wrapper_type t = wrapper_type::standard);
1085
1086 zwp_input_panel_surface_v1_t proxy_create_wrapper();
1087
1088 static const std::string interface_name;
1089
1090 operator zwp_input_panel_surface_v1*() const;
1091
1101 void set_toplevel(output_t const& output, zwp_input_panel_surface_v1_position const& position);
1102
1105 static constexpr std::uint32_t set_toplevel_since_version = 1;
1106
1115 void set_overlay_panel();
1116
1119 static constexpr std::uint32_t set_overlay_panel_since_version = 1;
1120
1121};
1122
1126enum class zwp_input_panel_surface_v1_position : uint32_t
1127 {
1128 center_bottom = 0
1129};
1130
1131
1139{
1140private:
1141 struct events_t : public detail::events_base_t
1142 {
1143 };
1144
1145 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1146
1147 zwp_input_timestamps_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1148
1149public:
1151 explicit zwp_input_timestamps_manager_v1_t(const proxy_t &proxy);
1152 zwp_input_timestamps_manager_v1_t(zwp_input_timestamps_manager_v1 *p, wrapper_type t = wrapper_type::standard);
1153
1154 zwp_input_timestamps_manager_v1_t proxy_create_wrapper();
1155
1156 static const std::string interface_name;
1157
1158 operator zwp_input_timestamps_manager_v1*() const;
1159
1174
1177 static constexpr std::uint32_t get_keyboard_timestamps_since_version = 1;
1178
1193
1196 static constexpr std::uint32_t get_pointer_timestamps_since_version = 1;
1197
1212
1215 static constexpr std::uint32_t get_touch_timestamps_since_version = 1;
1216
1217};
1218
1219
1228{
1229private:
1230 struct events_t : public detail::events_base_t
1231 {
1232 std::function<void(uint32_t, uint32_t, uint32_t)> timestamp;
1233 };
1234
1235 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1236
1237 zwp_input_timestamps_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1238
1239public:
1241 explicit zwp_input_timestamps_v1_t(const proxy_t &proxy);
1242 zwp_input_timestamps_v1_t(zwp_input_timestamps_v1 *p, wrapper_type t = wrapper_type::standard);
1243
1244 zwp_input_timestamps_v1_t proxy_create_wrapper();
1245
1246 static const std::string interface_name;
1247
1248 operator zwp_input_timestamps_v1*() const;
1249
1271 std::function<void(uint32_t, uint32_t, uint32_t)> &on_timestamp();
1272
1273};
1274
1275
1282{
1283private:
1284 struct events_t : public detail::events_base_t
1285 {
1286 };
1287
1288 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1289
1290 zwp_keyboard_shortcuts_inhibit_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1291
1292public:
1295 zwp_keyboard_shortcuts_inhibit_manager_v1_t(zwp_keyboard_shortcuts_inhibit_manager_v1 *p, wrapper_type t = wrapper_type::standard);
1296
1297 zwp_keyboard_shortcuts_inhibit_manager_v1_t proxy_create_wrapper();
1298
1299 static const std::string interface_name;
1300
1301 operator zwp_keyboard_shortcuts_inhibit_manager_v1*() const;
1302
1315
1318 static constexpr std::uint32_t inhibit_shortcuts_since_version = 1;
1319
1320};
1321
1325enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t
1326 {
1328 already_inhibited = 0
1329};
1330
1331
1370{
1371private:
1372 struct events_t : public detail::events_base_t
1373 {
1374 std::function<void()> active;
1375 std::function<void()> inactive;
1376 };
1377
1378 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1379
1380 zwp_keyboard_shortcuts_inhibitor_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1381
1382public:
1384 explicit zwp_keyboard_shortcuts_inhibitor_v1_t(const proxy_t &proxy);
1385 zwp_keyboard_shortcuts_inhibitor_v1_t(zwp_keyboard_shortcuts_inhibitor_v1 *p, wrapper_type t = wrapper_type::standard);
1386
1387 zwp_keyboard_shortcuts_inhibitor_v1_t proxy_create_wrapper();
1388
1389 static const std::string interface_name;
1390
1391 operator zwp_keyboard_shortcuts_inhibitor_v1*() const;
1392
1408 std::function<void()> &on_active();
1409
1416 std::function<void()> &on_inactive();
1417
1418};
1419
1420
1484{
1485private:
1486 struct events_t : public detail::events_base_t
1487 {
1488 std::function<void(uint32_t)> format;
1489 std::function<void(uint32_t, uint32_t, uint32_t)> modifier;
1490 };
1491
1492 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1493
1494 zwp_linux_dmabuf_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1495
1496public:
1498 explicit zwp_linux_dmabuf_v1_t(const proxy_t &proxy);
1499 zwp_linux_dmabuf_v1_t(zwp_linux_dmabuf_v1 *p, wrapper_type t = wrapper_type::standard);
1500
1501 zwp_linux_dmabuf_v1_t proxy_create_wrapper();
1502
1503 static const std::string interface_name;
1504
1505 operator zwp_linux_dmabuf_v1*() const;
1506
1517
1520 static constexpr std::uint32_t create_params_since_version = 1;
1521
1539 std::function<void(uint32_t)> &on_format();
1540
1564 std::function<void(uint32_t, uint32_t, uint32_t)> &on_modifier();
1565
1566};
1567
1568
1588{
1589private:
1590 struct events_t : public detail::events_base_t
1591 {
1592 std::function<void(buffer_t)> created;
1593 std::function<void()> failed;
1594 };
1595
1596 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1597
1598 zwp_linux_buffer_params_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1599
1600public:
1602 explicit zwp_linux_buffer_params_v1_t(const proxy_t &proxy);
1603 zwp_linux_buffer_params_v1_t(zwp_linux_buffer_params_v1 *p, wrapper_type t = wrapper_type::standard);
1604
1605 zwp_linux_buffer_params_v1_t proxy_create_wrapper();
1606
1607 static const std::string interface_name;
1608
1609 operator zwp_linux_buffer_params_v1*() const;
1610
1639 void add(int fd, uint32_t plane_idx, uint32_t offset, uint32_t stride, uint32_t modifier_hi, uint32_t modifier_lo);
1640
1643 static constexpr std::uint32_t add_since_version = 1;
1644
1712 void create(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const& flags);
1713
1716 static constexpr std::uint32_t create_since_version = 1;
1717
1750 buffer_t create_immed(int32_t width, int32_t height, uint32_t format, zwp_linux_buffer_params_v1_flags const& flags);
1751
1754 static constexpr std::uint32_t create_immed_since_version = 2;
1755
1759 bool can_create_immed() const;
1760
1771 std::function<void(buffer_t)> &on_created();
1772
1783 std::function<void()> &on_failed();
1784
1785};
1786
1790enum class zwp_linux_buffer_params_v1_error : uint32_t
1791 {
1793 already_used = 0,
1795 plane_idx = 1,
1797 plane_set = 2,
1799 incomplete = 3,
1801 invalid_format = 4,
1803 invalid_dimensions = 5,
1805 out_of_bounds = 6,
1807 invalid_wl_buffer = 7
1808};
1809
1813enum class zwp_linux_buffer_params_v1_flags : uint32_t
1814 {
1816 y_invert = 1,
1818 interlaced = 2,
1820 bottom_first = 4
1821};
1822
1823
1845{
1846private:
1847 struct events_t : public detail::events_base_t
1848 {
1849 };
1850
1851 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1852
1853 zwp_linux_explicit_synchronization_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1854
1855public:
1857 explicit zwp_linux_explicit_synchronization_v1_t(const proxy_t &proxy);
1858 zwp_linux_explicit_synchronization_v1_t(zwp_linux_explicit_synchronization_v1 *p, wrapper_type t = wrapper_type::standard);
1859
1860 zwp_linux_explicit_synchronization_v1_t proxy_create_wrapper();
1861
1862 static const std::string interface_name;
1863
1864 operator zwp_linux_explicit_synchronization_v1*() const;
1865
1884
1887 static constexpr std::uint32_t get_synchronization_since_version = 1;
1888
1889};
1890
1894enum class zwp_linux_explicit_synchronization_v1_error : uint32_t
1895 {
1897 synchronization_exists = 0
1898};
1899
1900
1936{
1937private:
1938 struct events_t : public detail::events_base_t
1939 {
1940 };
1941
1942 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
1943
1944 zwp_linux_surface_synchronization_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
1945
1946public:
1948 explicit zwp_linux_surface_synchronization_v1_t(const proxy_t &proxy);
1949 zwp_linux_surface_synchronization_v1_t(zwp_linux_surface_synchronization_v1 *p, wrapper_type t = wrapper_type::standard);
1950
1951 zwp_linux_surface_synchronization_v1_t proxy_create_wrapper();
1952
1953 static const std::string interface_name;
1954
1955 operator zwp_linux_surface_synchronization_v1*() const;
1956
1985 void set_acquire_fence(int fd);
1986
1989 static constexpr std::uint32_t set_acquire_fence_since_version = 1;
1990
2014
2017 static constexpr std::uint32_t get_release_since_version = 1;
2018
2019};
2020
2024enum class zwp_linux_surface_synchronization_v1_error : uint32_t
2025 {
2027 invalid_fence = 0,
2029 duplicate_fence = 1,
2031 duplicate_release = 2,
2033 no_surface = 3,
2035 unsupported_buffer = 4,
2037 no_buffer = 5
2038};
2039
2040
2063{
2064private:
2065 struct events_t : public detail::events_base_t
2066 {
2067 std::function<void(int)> fenced_release;
2068 std::function<void()> immediate_release;
2069 };
2070
2071 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2072
2073 zwp_linux_buffer_release_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2074
2075public:
2077 explicit zwp_linux_buffer_release_v1_t(const proxy_t &proxy);
2078 zwp_linux_buffer_release_v1_t(zwp_linux_buffer_release_v1 *p, wrapper_type t = wrapper_type::standard);
2079
2080 zwp_linux_buffer_release_v1_t proxy_create_wrapper();
2081
2082 static const std::string interface_name;
2083
2084 operator zwp_linux_buffer_release_v1*() const;
2085
2102 std::function<void(int)> &on_fenced_release();
2103
2119 std::function<void()> &on_immediate_release();
2120
2121};
2122
2123
2142{
2143private:
2144 struct events_t : public detail::events_base_t
2145 {
2146 };
2147
2148 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2149
2150 zwp_pointer_constraints_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2151
2152public:
2154 explicit zwp_pointer_constraints_v1_t(const proxy_t &proxy);
2155 zwp_pointer_constraints_v1_t(zwp_pointer_constraints_v1 *p, wrapper_type t = wrapper_type::standard);
2156
2157 zwp_pointer_constraints_v1_t proxy_create_wrapper();
2158
2159 static const std::string interface_name;
2160
2161 operator zwp_pointer_constraints_v1*() const;
2162
2205 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);
2206
2209 static constexpr std::uint32_t lock_pointer_since_version = 1;
2210
2236 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);
2237
2240 static constexpr std::uint32_t confine_pointer_since_version = 1;
2241
2242};
2243
2250enum class zwp_pointer_constraints_v1_error : uint32_t
2251 {
2253 already_constrained = 1
2254};
2255
2263enum class zwp_pointer_constraints_v1_lifetime : uint32_t
2264 {
2265 oneshot = 1,
2266 persistent = 2
2267};
2268
2269
2298{
2299private:
2300 struct events_t : public detail::events_base_t
2301 {
2302 std::function<void()> locked;
2303 std::function<void()> unlocked;
2304 };
2305
2306 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2307
2308 zwp_locked_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2309
2310public:
2312 explicit zwp_locked_pointer_v1_t(const proxy_t &proxy);
2313 zwp_locked_pointer_v1_t(zwp_locked_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
2314
2315 zwp_locked_pointer_v1_t proxy_create_wrapper();
2316
2317 static const std::string interface_name;
2318
2319 operator zwp_locked_pointer_v1*() const;
2320
2338 void set_cursor_position_hint(double surface_x, double surface_y);
2339
2342 static constexpr std::uint32_t set_cursor_position_hint_since_version = 1;
2343
2356 void set_region(region_t const& region);
2357
2360 static constexpr std::uint32_t set_region_since_version = 1;
2361
2367 std::function<void()> &on_locked();
2368
2379 std::function<void()> &on_unlocked();
2380
2381};
2382
2383
2405{
2406private:
2407 struct events_t : public detail::events_base_t
2408 {
2409 std::function<void()> confined;
2410 std::function<void()> unconfined;
2411 };
2412
2413 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2414
2415 zwp_confined_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2416
2417public:
2419 explicit zwp_confined_pointer_v1_t(const proxy_t &proxy);
2420 zwp_confined_pointer_v1_t(zwp_confined_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
2421
2422 zwp_confined_pointer_v1_t proxy_create_wrapper();
2423
2424 static const std::string interface_name;
2425
2426 operator zwp_confined_pointer_v1*() const;
2427
2449 void set_region(region_t const& region);
2450
2453 static constexpr std::uint32_t set_region_since_version = 1;
2454
2461 std::function<void()> &on_confined();
2462
2473 std::function<void()> &on_unconfined();
2474
2475};
2476
2477
2498{
2499private:
2500 struct events_t : public detail::events_base_t
2501 {
2502 };
2503
2504 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2505
2506 zwp_pointer_gestures_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2507
2508public:
2510 explicit zwp_pointer_gestures_v1_t(const proxy_t &proxy);
2511 zwp_pointer_gestures_v1_t(zwp_pointer_gestures_v1 *p, wrapper_type t = wrapper_type::standard);
2512
2513 zwp_pointer_gestures_v1_t proxy_create_wrapper();
2514
2515 static const std::string interface_name;
2516
2517 operator zwp_pointer_gestures_v1*() const;
2518
2527
2530 static constexpr std::uint32_t get_swipe_gesture_since_version = 1;
2531
2540
2543 static constexpr std::uint32_t get_pinch_gesture_since_version = 1;
2544
2551 void release();
2552
2555 static constexpr std::uint32_t release_since_version = 2;
2556
2560 bool can_release() const;
2561
2562};
2563
2564
2585{
2586private:
2587 struct events_t : public detail::events_base_t
2588 {
2589 std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
2590 std::function<void(uint32_t, double, double)> update;
2591 std::function<void(uint32_t, uint32_t, int32_t)> end;
2592 };
2593
2594 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2595
2596 zwp_pointer_gesture_swipe_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2597
2598public:
2600 explicit zwp_pointer_gesture_swipe_v1_t(const proxy_t &proxy);
2601 zwp_pointer_gesture_swipe_v1_t(zwp_pointer_gesture_swipe_v1 *p, wrapper_type t = wrapper_type::standard);
2602
2603 zwp_pointer_gesture_swipe_v1_t proxy_create_wrapper();
2604
2605 static const std::string interface_name;
2606
2607 operator zwp_pointer_gesture_swipe_v1*() const;
2608
2619 std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
2620
2633 std::function<void(uint32_t, double, double)> &on_update();
2634
2649 std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
2650
2651};
2652
2653
2674{
2675private:
2676 struct events_t : public detail::events_base_t
2677 {
2678 std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> begin;
2679 std::function<void(uint32_t, double, double, double, double)> update;
2680 std::function<void(uint32_t, uint32_t, int32_t)> end;
2681 };
2682
2683 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2684
2685 zwp_pointer_gesture_pinch_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2686
2687public:
2689 explicit zwp_pointer_gesture_pinch_v1_t(const proxy_t &proxy);
2690 zwp_pointer_gesture_pinch_v1_t(zwp_pointer_gesture_pinch_v1 *p, wrapper_type t = wrapper_type::standard);
2691
2692 zwp_pointer_gesture_pinch_v1_t proxy_create_wrapper();
2693
2694 static const std::string interface_name;
2695
2696 operator zwp_pointer_gesture_pinch_v1*() const;
2697
2708 std::function<void(uint32_t, uint32_t, surface_t, uint32_t)> &on_begin();
2709
2731 std::function<void(uint32_t, double, double, double, double)> &on_update();
2732
2747 std::function<void(uint32_t, uint32_t, int32_t)> &on_end();
2748
2749};
2750
2751
2761{
2762private:
2763 struct events_t : public detail::events_base_t
2764 {
2765 };
2766
2767 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2768
2769 zwp_primary_selection_device_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2770
2771public:
2774 zwp_primary_selection_device_manager_v1_t(zwp_primary_selection_device_manager_v1 *p, wrapper_type t = wrapper_type::standard);
2775
2776 zwp_primary_selection_device_manager_v1_t proxy_create_wrapper();
2777
2778 static const std::string interface_name;
2779
2780 operator zwp_primary_selection_device_manager_v1*() const;
2781
2788
2791 static constexpr std::uint32_t create_source_since_version = 1;
2792
2799 zwp_primary_selection_device_v1_t get_device(seat_t const& seat);
2800
2803 static constexpr std::uint32_t get_device_since_version = 1;
2804
2805};
2806
2807
2811class zwp_primary_selection_device_v1_t : public proxy_t
2812{
2813private:
2814 struct events_t : public detail::events_base_t
2815 {
2816 std::function<void(zwp_primary_selection_offer_v1_t)> data_offer;
2817 std::function<void(zwp_primary_selection_offer_v1_t)> selection;
2818 };
2819
2820 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2821
2822 zwp_primary_selection_device_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2823
2824public:
2825 zwp_primary_selection_device_v1_t();
2826 explicit zwp_primary_selection_device_v1_t(const proxy_t &proxy);
2827 zwp_primary_selection_device_v1_t(zwp_primary_selection_device_v1 *p, wrapper_type t = wrapper_type::standard);
2828
2829 zwp_primary_selection_device_v1_t proxy_create_wrapper();
2830
2831 static const std::string interface_name;
2832
2833 operator zwp_primary_selection_device_v1*() const;
2834
2845 void set_selection(zwp_primary_selection_source_v1_t const& source, uint32_t serial);
2846
2849 static constexpr std::uint32_t set_selection_since_version = 1;
2850
2861 std::function<void(zwp_primary_selection_offer_v1_t)> &on_data_offer();
2862
2877 std::function<void(zwp_primary_selection_offer_v1_t)> &on_selection();
2878
2879};
2880
2881
2892{
2893private:
2894 struct events_t : public detail::events_base_t
2895 {
2896 std::function<void(std::string)> offer;
2897 };
2898
2899 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2900
2901 zwp_primary_selection_offer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2902
2903public:
2905 explicit zwp_primary_selection_offer_v1_t(const proxy_t &proxy);
2906 zwp_primary_selection_offer_v1_t(zwp_primary_selection_offer_v1 *p, wrapper_type t = wrapper_type::standard);
2907
2908 zwp_primary_selection_offer_v1_t proxy_create_wrapper();
2909
2910 static const std::string interface_name;
2911
2912 operator zwp_primary_selection_offer_v1*() const;
2913
2929 void receive(std::string const& mime_type, int fd);
2930
2933 static constexpr std::uint32_t receive_since_version = 1;
2934
2944 std::function<void(std::string)> &on_offer();
2945
2946};
2947
2948
2957{
2958private:
2959 struct events_t : public detail::events_base_t
2960 {
2961 std::function<void(std::string, int)> send;
2962 std::function<void()> cancelled;
2963 };
2964
2965 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
2966
2967 zwp_primary_selection_source_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
2968
2969public:
2971 explicit zwp_primary_selection_source_v1_t(const proxy_t &proxy);
2972 zwp_primary_selection_source_v1_t(zwp_primary_selection_source_v1 *p, wrapper_type t = wrapper_type::standard);
2973
2974 zwp_primary_selection_source_v1_t proxy_create_wrapper();
2975
2976 static const std::string interface_name;
2977
2978 operator zwp_primary_selection_source_v1*() const;
2979
2987 void offer(std::string const& mime_type);
2988
2991 static constexpr std::uint32_t offer_since_version = 1;
2992
3002 std::function<void(std::string, int)> &on_send();
3003
3010 std::function<void()> &on_cancelled();
3011
3012};
3013
3014
3022{
3023private:
3024 struct events_t : public detail::events_base_t
3025 {
3026 };
3027
3028 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3029
3030 zwp_relative_pointer_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3031
3032public:
3034 explicit zwp_relative_pointer_manager_v1_t(const proxy_t &proxy);
3035 zwp_relative_pointer_manager_v1_t(zwp_relative_pointer_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3036
3037 zwp_relative_pointer_manager_v1_t proxy_create_wrapper();
3038
3039 static const std::string interface_name;
3040
3041 operator zwp_relative_pointer_manager_v1*() const;
3042
3051
3054 static constexpr std::uint32_t get_relative_pointer_since_version = 1;
3055
3056};
3057
3058
3068{
3069private:
3070 struct events_t : public detail::events_base_t
3071 {
3072 std::function<void(uint32_t, uint32_t, double, double, double, double)> relative_motion;
3073 };
3074
3075 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3076
3077 zwp_relative_pointer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3078
3079public:
3081 explicit zwp_relative_pointer_v1_t(const proxy_t &proxy);
3082 zwp_relative_pointer_v1_t(zwp_relative_pointer_v1 *p, wrapper_type t = wrapper_type::standard);
3083
3084 zwp_relative_pointer_v1_t proxy_create_wrapper();
3085
3086 static const std::string interface_name;
3087
3088 operator zwp_relative_pointer_v1*() const;
3089
3130 std::function<void(uint32_t, uint32_t, double, double, double, double)> &on_relative_motion();
3131
3132};
3133
3134
3143{
3144private:
3145 struct events_t : public detail::events_base_t
3146 {
3147 };
3148
3149 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3150
3151 zwp_tablet_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3152
3153public:
3155 explicit zwp_tablet_manager_v1_t(const proxy_t &proxy);
3156 zwp_tablet_manager_v1_t(zwp_tablet_manager_v1 *p, wrapper_type t = wrapper_type::standard);
3157
3158 zwp_tablet_manager_v1_t proxy_create_wrapper();
3159
3160 static const std::string interface_name;
3161
3162 operator zwp_tablet_manager_v1*() const;
3163
3172
3175 static constexpr std::uint32_t get_tablet_seat_since_version = 1;
3176
3177};
3178
3179
3188{
3189private:
3190 struct events_t : public detail::events_base_t
3191 {
3192 std::function<void(zwp_tablet_v1_t)> tablet_added;
3193 std::function<void(zwp_tablet_tool_v1_t)> tool_added;
3194 };
3195
3196 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3197
3198 zwp_tablet_seat_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3199
3200public:
3202 explicit zwp_tablet_seat_v1_t(const proxy_t &proxy);
3203 zwp_tablet_seat_v1_t(zwp_tablet_seat_v1 *p, wrapper_type t = wrapper_type::standard);
3204
3205 zwp_tablet_seat_v1_t proxy_create_wrapper();
3206
3207 static const std::string interface_name;
3208
3209 operator zwp_tablet_seat_v1*() const;
3210
3220 std::function<void(zwp_tablet_v1_t)> &on_tablet_added();
3221
3231 std::function<void(zwp_tablet_tool_v1_t)> &on_tool_added();
3232
3233};
3234
3235
3261{
3262private:
3263 struct events_t : public detail::events_base_t
3264 {
3265 std::function<void(zwp_tablet_tool_v1_type)> type;
3266 std::function<void(uint32_t, uint32_t)> hardware_serial;
3267 std::function<void(uint32_t, uint32_t)> hardware_id_wacom;
3268 std::function<void(zwp_tablet_tool_v1_capability)> capability;
3269 std::function<void()> done;
3270 std::function<void()> removed;
3271 std::function<void(uint32_t, zwp_tablet_v1_t, surface_t)> proximity_in;
3272 std::function<void()> proximity_out;
3273 std::function<void(uint32_t)> down;
3274 std::function<void()> up;
3275 std::function<void(double, double)> motion;
3276 std::function<void(uint32_t)> pressure;
3277 std::function<void(uint32_t)> distance;
3278 std::function<void(int32_t, int32_t)> tilt;
3279 std::function<void(int32_t)> rotation;
3280 std::function<void(int32_t)> slider;
3281 std::function<void(int32_t, int32_t)> wheel;
3282 std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> button;
3283 std::function<void(uint32_t)> frame;
3284 };
3285
3286 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3287
3288 zwp_tablet_tool_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3289
3290public:
3292 explicit zwp_tablet_tool_v1_t(const proxy_t &proxy);
3293 zwp_tablet_tool_v1_t(zwp_tablet_tool_v1 *p, wrapper_type t = wrapper_type::standard);
3294
3295 zwp_tablet_tool_v1_t proxy_create_wrapper();
3296
3297 static const std::string interface_name;
3298
3299 operator zwp_tablet_tool_v1*() const;
3300
3341 void set_cursor(uint32_t serial, surface_t const& surface, int32_t hotspot_x, int32_t hotspot_y);
3342
3345 static constexpr std::uint32_t set_cursor_since_version = 1;
3346
3357 std::function<void(zwp_tablet_tool_v1_type)> &on_type();
3358
3380 std::function<void(uint32_t, uint32_t)> &on_hardware_serial();
3381
3398 std::function<void(uint32_t, uint32_t)> &on_hardware_id_wacom();
3399
3412 std::function<void(zwp_tablet_tool_v1_capability)> &on_capability();
3413
3421 std::function<void()> &on_done();
3422
3441 std::function<void()> &on_removed();
3442
3459 std::function<void(uint32_t, zwp_tablet_v1_t, surface_t)> &on_proximity_in();
3460
3477 std::function<void()> &on_proximity_out();
3478
3496 std::function<void(uint32_t)> &on_down();
3497
3518 std::function<void()> &on_up();
3519
3527 std::function<void(double, double)> &on_motion();
3528
3539 std::function<void(uint32_t)> &on_pressure();
3540
3551 std::function<void(uint32_t)> &on_distance();
3552
3563 std::function<void(int32_t, int32_t)> &on_tilt();
3564
3573 std::function<void(int32_t)> &on_rotation();
3574
3585 std::function<void(int32_t)> &on_slider();
3586
3605 std::function<void(int32_t, int32_t)> &on_wheel();
3606
3620 std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v1_button_state)> &on_button();
3621
3631 std::function<void(uint32_t)> &on_frame();
3632
3633};
3634
3648enum class zwp_tablet_tool_v1_type : uint32_t
3649 {
3651 pen = 0x140,
3653 eraser = 0x141,
3655 brush = 0x142,
3657 pencil = 0x143,
3659 airbrush = 0x144,
3661 finger = 0x145,
3663 mouse = 0x146,
3665 lens = 0x147
3666};
3667
3676enum class zwp_tablet_tool_v1_capability : uint32_t
3677 {
3679 tilt = 1,
3681 pressure = 2,
3683 distance = 3,
3685 rotation = 4,
3687 slider = 5,
3689 wheel = 6
3690};
3691
3697enum class zwp_tablet_tool_v1_button_state : uint32_t
3698 {
3700 released = 0,
3702 pressed = 1
3703};
3704
3708enum class zwp_tablet_tool_v1_error : uint32_t
3709 {
3711 role = 0
3712};
3713
3714
3728{
3729private:
3730 struct events_t : public detail::events_base_t
3731 {
3732 std::function<void(std::string)> name;
3733 std::function<void(uint32_t, uint32_t)> id;
3734 std::function<void(std::string)> path;
3735 std::function<void()> done;
3736 std::function<void()> removed;
3737 };
3738
3739 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3740
3741 zwp_tablet_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3742
3743public:
3745 explicit zwp_tablet_v1_t(const proxy_t &proxy);
3747
3748 zwp_tablet_v1_t proxy_create_wrapper();
3749
3750 static const std::string interface_name;
3751
3752 operator zwp_tablet_v1*() const;
3753
3761 std::function<void(std::string)> &on_name();
3762
3771 std::function<void(uint32_t, uint32_t)> &on_id();
3772
3792 std::function<void(std::string)> &on_path();
3793
3802 std::function<void()> &on_done();
3803
3813 std::function<void()> &on_removed();
3814
3815};
3816
3817
3826{
3827private:
3828 struct events_t : public detail::events_base_t
3829 {
3830 };
3831
3832 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3833
3834 zwp_tablet_manager_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3835
3836public:
3838 explicit zwp_tablet_manager_v2_t(const proxy_t &proxy);
3839 zwp_tablet_manager_v2_t(zwp_tablet_manager_v2 *p, wrapper_type t = wrapper_type::standard);
3840
3841 zwp_tablet_manager_v2_t proxy_create_wrapper();
3842
3843 static const std::string interface_name;
3844
3845 operator zwp_tablet_manager_v2*() const;
3846
3855
3858 static constexpr std::uint32_t get_tablet_seat_since_version = 1;
3859
3860};
3861
3862
3871{
3872private:
3873 struct events_t : public detail::events_base_t
3874 {
3875 std::function<void(zwp_tablet_v2_t)> tablet_added;
3876 std::function<void(zwp_tablet_tool_v2_t)> tool_added;
3877 std::function<void(zwp_tablet_pad_v2_t)> pad_added;
3878 };
3879
3880 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3881
3882 zwp_tablet_seat_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3883
3884public:
3886 explicit zwp_tablet_seat_v2_t(const proxy_t &proxy);
3887 zwp_tablet_seat_v2_t(zwp_tablet_seat_v2 *p, wrapper_type t = wrapper_type::standard);
3888
3889 zwp_tablet_seat_v2_t proxy_create_wrapper();
3890
3891 static const std::string interface_name;
3892
3893 operator zwp_tablet_seat_v2*() const;
3894
3904 std::function<void(zwp_tablet_v2_t)> &on_tablet_added();
3905
3915 std::function<void(zwp_tablet_tool_v2_t)> &on_tool_added();
3916
3932 std::function<void(zwp_tablet_pad_v2_t)> &on_pad_added();
3933
3934};
3935
3936
3962{
3963private:
3964 struct events_t : public detail::events_base_t
3965 {
3966 std::function<void(zwp_tablet_tool_v2_type)> type;
3967 std::function<void(uint32_t, uint32_t)> hardware_serial;
3968 std::function<void(uint32_t, uint32_t)> hardware_id_wacom;
3969 std::function<void(zwp_tablet_tool_v2_capability)> capability;
3970 std::function<void()> done;
3971 std::function<void()> removed;
3972 std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> proximity_in;
3973 std::function<void()> proximity_out;
3974 std::function<void(uint32_t)> down;
3975 std::function<void()> up;
3976 std::function<void(double, double)> motion;
3977 std::function<void(uint32_t)> pressure;
3978 std::function<void(uint32_t)> distance;
3979 std::function<void(double, double)> tilt;
3980 std::function<void(double)> rotation;
3981 std::function<void(int32_t)> slider;
3982 std::function<void(double, int32_t)> wheel;
3983 std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> button;
3984 std::function<void(uint32_t)> frame;
3985 };
3986
3987 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
3988
3989 zwp_tablet_tool_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
3990
3991public:
3993 explicit zwp_tablet_tool_v2_t(const proxy_t &proxy);
3994 zwp_tablet_tool_v2_t(zwp_tablet_tool_v2 *p, wrapper_type t = wrapper_type::standard);
3995
3996 zwp_tablet_tool_v2_t proxy_create_wrapper();
3997
3998 static const std::string interface_name;
3999
4000 operator zwp_tablet_tool_v2*() const;
4001
4040 void set_cursor(uint32_t serial, surface_t const& surface, int32_t hotspot_x, int32_t hotspot_y);
4041
4044 static constexpr std::uint32_t set_cursor_since_version = 1;
4045
4056 std::function<void(zwp_tablet_tool_v2_type)> &on_type();
4057
4079 std::function<void(uint32_t, uint32_t)> &on_hardware_serial();
4080
4097 std::function<void(uint32_t, uint32_t)> &on_hardware_id_wacom();
4098
4111 std::function<void(zwp_tablet_tool_v2_capability)> &on_capability();
4112
4120 std::function<void()> &on_done();
4121
4140 std::function<void()> &on_removed();
4141
4158 std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> &on_proximity_in();
4159
4176 std::function<void()> &on_proximity_out();
4177
4195 std::function<void(uint32_t)> &on_down();
4196
4217 std::function<void()> &on_up();
4218
4226 std::function<void(double, double)> &on_motion();
4227
4238 std::function<void(uint32_t)> &on_pressure();
4239
4250 std::function<void(uint32_t)> &on_distance();
4251
4262 std::function<void(double, double)> &on_tilt();
4263
4272 std::function<void(double)> &on_rotation();
4273
4284 std::function<void(int32_t)> &on_slider();
4285
4304 std::function<void(double, int32_t)> &on_wheel();
4305
4319 std::function<void(uint32_t, uint32_t, zwp_tablet_tool_v2_button_state)> &on_button();
4320
4330 std::function<void(uint32_t)> &on_frame();
4331
4332};
4333
4347enum class zwp_tablet_tool_v2_type : uint32_t
4348 {
4350 pen = 0x140,
4352 eraser = 0x141,
4354 brush = 0x142,
4356 pencil = 0x143,
4358 airbrush = 0x144,
4360 finger = 0x145,
4362 mouse = 0x146,
4364 lens = 0x147
4365};
4366
4375enum class zwp_tablet_tool_v2_capability : uint32_t
4376 {
4378 tilt = 1,
4380 pressure = 2,
4382 distance = 3,
4384 rotation = 4,
4386 slider = 5,
4388 wheel = 6
4389};
4390
4396enum class zwp_tablet_tool_v2_button_state : uint32_t
4397 {
4399 released = 0,
4401 pressed = 1
4402};
4403
4407enum class zwp_tablet_tool_v2_error : uint32_t
4408 {
4410 role = 0
4411};
4412
4413
4427{
4428private:
4429 struct events_t : public detail::events_base_t
4430 {
4431 std::function<void(std::string)> name;
4432 std::function<void(uint32_t, uint32_t)> id;
4433 std::function<void(std::string)> path;
4434 std::function<void()> done;
4435 std::function<void()> removed;
4436 };
4437
4438 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4439
4440 zwp_tablet_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4441
4442public:
4444 explicit zwp_tablet_v2_t(const proxy_t &proxy);
4446
4447 zwp_tablet_v2_t proxy_create_wrapper();
4448
4449 static const std::string interface_name;
4450
4451 operator zwp_tablet_v2*() const;
4452
4460 std::function<void(std::string)> &on_name();
4461
4470 std::function<void(uint32_t, uint32_t)> &on_id();
4471
4491 std::function<void(std::string)> &on_path();
4492
4501 std::function<void()> &on_done();
4502
4512 std::function<void()> &on_removed();
4513
4514};
4515
4516
4527{
4528private:
4529 struct events_t : public detail::events_base_t
4530 {
4531 std::function<void(zwp_tablet_pad_ring_v2_source)> source;
4532 std::function<void(double)> angle;
4533 std::function<void()> stop;
4534 std::function<void(uint32_t)> frame;
4535 };
4536
4537 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4538
4539 zwp_tablet_pad_ring_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4540
4541public:
4543 explicit zwp_tablet_pad_ring_v2_t(const proxy_t &proxy);
4544 zwp_tablet_pad_ring_v2_t(zwp_tablet_pad_ring_v2 *p, wrapper_type t = wrapper_type::standard);
4545
4546 zwp_tablet_pad_ring_v2_t proxy_create_wrapper();
4547
4548 static const std::string interface_name;
4549
4550 operator zwp_tablet_pad_ring_v2*() const;
4551
4577 void set_feedback(std::string const& description, uint32_t serial);
4578
4581 static constexpr std::uint32_t set_feedback_since_version = 1;
4582
4600 std::function<void(zwp_tablet_pad_ring_v2_source)> &on_source();
4601
4611 std::function<void(double)> &on_angle();
4612
4627 std::function<void()> &on_stop();
4628
4647 std::function<void(uint32_t)> &on_frame();
4648
4649};
4650
4659enum class zwp_tablet_pad_ring_v2_source : uint32_t
4660 {
4662 finger = 1
4663};
4664
4665
4676{
4677private:
4678 struct events_t : public detail::events_base_t
4679 {
4680 std::function<void(zwp_tablet_pad_strip_v2_source)> source;
4681 std::function<void(uint32_t)> position;
4682 std::function<void()> stop;
4683 std::function<void(uint32_t)> frame;
4684 };
4685
4686 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4687
4688 zwp_tablet_pad_strip_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4689
4690public:
4692 explicit zwp_tablet_pad_strip_v2_t(const proxy_t &proxy);
4693 zwp_tablet_pad_strip_v2_t(zwp_tablet_pad_strip_v2 *p, wrapper_type t = wrapper_type::standard);
4694
4695 zwp_tablet_pad_strip_v2_t proxy_create_wrapper();
4696
4697 static const std::string interface_name;
4698
4699 operator zwp_tablet_pad_strip_v2*() const;
4700
4726 void set_feedback(std::string const& description, uint32_t serial);
4727
4730 static constexpr std::uint32_t set_feedback_since_version = 1;
4731
4749 std::function<void(zwp_tablet_pad_strip_v2_source)> &on_source();
4750
4761 std::function<void(uint32_t)> &on_position();
4762
4777 std::function<void()> &on_stop();
4778
4798 std::function<void(uint32_t)> &on_frame();
4799
4800};
4801
4810enum class zwp_tablet_pad_strip_v2_source : uint32_t
4811 {
4813 finger = 1
4814};
4815
4816
4843{
4844private:
4845 struct events_t : public detail::events_base_t
4846 {
4847 std::function<void(array_t)> buttons;
4848 std::function<void(zwp_tablet_pad_ring_v2_t)> ring;
4849 std::function<void(zwp_tablet_pad_strip_v2_t)> strip;
4850 std::function<void(uint32_t)> modes;
4851 std::function<void()> done;
4852 std::function<void(uint32_t, uint32_t, uint32_t)> mode_switch;
4853 };
4854
4855 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
4856
4857 zwp_tablet_pad_group_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
4858
4859public:
4861 explicit zwp_tablet_pad_group_v2_t(const proxy_t &proxy);
4862 zwp_tablet_pad_group_v2_t(zwp_tablet_pad_group_v2 *p, wrapper_type t = wrapper_type::standard);
4863
4864 zwp_tablet_pad_group_v2_t proxy_create_wrapper();
4865
4866 static const std::string interface_name;
4867
4868 operator zwp_tablet_pad_group_v2*() const;
4869
4887 std::function<void(array_t)> &on_buttons();
4888
4899 std::function<void(zwp_tablet_pad_ring_v2_t)> &on_ring();
4900
4911 std::function<void(zwp_tablet_pad_strip_v2_t)> &on_strip();
4912
4930 std::function<void(uint32_t)> &on_modes();
4931
4940 std::function<void()> &on_done();
4941
4976 std::function<void(uint32_t, uint32_t, uint32_t)> &on_mode_switch();
4977
4978};
4979
4980
5008{
5009private:
5010 struct events_t : public detail::events_base_t
5011 {
5012 std::function<void(zwp_tablet_pad_group_v2_t)> group;
5013 std::function<void(std::string)> path;
5014 std::function<void(uint32_t)> buttons;
5015 std::function<void()> done;
5016 std::function<void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> button;
5017 std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> enter;
5018 std::function<void(uint32_t, surface_t)> leave;
5019 std::function<void()> removed;
5020 };
5021
5022 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5023
5024 zwp_tablet_pad_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5025
5026public:
5028 explicit zwp_tablet_pad_v2_t(const proxy_t &proxy);
5029 zwp_tablet_pad_v2_t(zwp_tablet_pad_v2 *p, wrapper_type t = wrapper_type::standard);
5030
5031 zwp_tablet_pad_v2_t proxy_create_wrapper();
5032
5033 static const std::string interface_name;
5034
5035 operator zwp_tablet_pad_v2*() const;
5036
5068 void set_feedback(uint32_t button, std::string const& description, uint32_t serial);
5069
5072 static constexpr std::uint32_t set_feedback_since_version = 1;
5073
5084 std::function<void(zwp_tablet_pad_group_v2_t)> &on_group();
5085
5101 std::function<void(std::string)> &on_path();
5102
5114 std::function<void(uint32_t)> &on_buttons();
5115
5123 std::function<void()> &on_done();
5124
5133 std::function<void(uint32_t, uint32_t, zwp_tablet_pad_v2_button_state)> &on_button();
5134
5143 std::function<void(uint32_t, zwp_tablet_v2_t, surface_t)> &on_enter();
5144
5153 std::function<void(uint32_t, surface_t)> &on_leave();
5154
5165 std::function<void()> &on_removed();
5166
5167};
5168
5175enum class zwp_tablet_pad_v2_button_state : uint32_t
5176 {
5178 released = 0,
5180 pressed = 1
5181};
5182
5183
5218{
5219private:
5220 struct events_t : public detail::events_base_t
5221 {
5222 std::function<void(surface_t)> enter;
5223 std::function<void()> leave;
5224 std::function<void(array_t)> modifiers_map;
5225 std::function<void(uint32_t)> input_panel_state;
5226 std::function<void(uint32_t, std::string, std::string)> preedit_string;
5227 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> preedit_styling;
5228 std::function<void(int32_t)> preedit_cursor;
5229 std::function<void(uint32_t, std::string)> commit_string;
5230 std::function<void(int32_t, int32_t)> cursor_position;
5231 std::function<void(int32_t, uint32_t)> delete_surrounding_text;
5232 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> keysym;
5233 std::function<void(uint32_t, std::string)> language;
5234 std::function<void(uint32_t, zwp_text_input_v1_text_direction)> text_direction;
5235 };
5236
5237 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5238
5239 zwp_text_input_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5240
5241public:
5243 explicit zwp_text_input_v1_t(const proxy_t &proxy);
5244 zwp_text_input_v1_t(zwp_text_input_v1 *p, wrapper_type t = wrapper_type::standard);
5245
5246 zwp_text_input_v1_t proxy_create_wrapper();
5247
5248 static const std::string interface_name;
5249
5250 operator zwp_text_input_v1*() const;
5251
5265 void activate(seat_t const& seat, surface_t const& surface);
5266
5269 static constexpr std::uint32_t activate_since_version = 1;
5270
5279 void deactivate(seat_t const& seat);
5280
5283 static constexpr std::uint32_t deactivate_since_version = 1;
5284
5290 void show_input_panel();
5291
5294 static constexpr std::uint32_t show_input_panel_since_version = 1;
5295
5301 void hide_input_panel();
5302
5305 static constexpr std::uint32_t hide_input_panel_since_version = 1;
5306
5314 void reset();
5315
5318 static constexpr std::uint32_t reset_since_version = 1;
5319
5332 void set_surrounding_text(std::string const& text, uint32_t cursor, uint32_t anchor);
5333
5336 static constexpr std::uint32_t set_surrounding_text_since_version = 1;
5337
5351 void set_content_type(zwp_text_input_v1_content_hint const& hint, zwp_text_input_v1_content_purpose const& purpose);
5352
5355 static constexpr std::uint32_t set_content_type_since_version = 1;
5356
5364 void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height);
5365
5368 static constexpr std::uint32_t set_cursor_rectangle_since_version = 1;
5369
5382 void set_preferred_language(std::string const& language);
5383
5386 static constexpr std::uint32_t set_preferred_language_since_version = 1;
5387
5392 void commit_state(uint32_t serial);
5393
5396 static constexpr std::uint32_t commit_state_since_version = 1;
5397
5403 void invoke_action(uint32_t button, uint32_t index);
5404
5407 static constexpr std::uint32_t invoke_action_since_version = 1;
5408
5416 std::function<void(surface_t)> &on_enter();
5417
5425 std::function<void()> &on_leave();
5426
5435 std::function<void(array_t)> &on_modifiers_map();
5436
5443 std::function<void(uint32_t)> &on_input_panel_state();
5444
5461 std::function<void(uint32_t, std::string, std::string)> &on_preedit_string();
5462
5477 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> &on_preedit_styling();
5478
5489 std::function<void(int32_t)> &on_preedit_cursor();
5490
5504 std::function<void(uint32_t, std::string)> &on_commit_string();
5505
5516 std::function<void(int32_t, int32_t)> &on_cursor_position();
5517
5532 std::function<void(int32_t, uint32_t)> &on_delete_surrounding_text();
5533
5549 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> &on_keysym();
5550
5559 std::function<void(uint32_t, std::string)> &on_language();
5560
5572 std::function<void(uint32_t, zwp_text_input_v1_text_direction)> &on_text_direction();
5573
5574};
5575
5582enum class zwp_text_input_v1_content_hint : uint32_t
5583 {
5585 none = 0x0,
5587 _default = 0x7,
5589 password = 0xc0,
5591 auto_completion = 0x1,
5593 auto_correction = 0x2,
5595 auto_capitalization = 0x4,
5597 lowercase = 0x8,
5599 uppercase = 0x10,
5601 titlecase = 0x20,
5603 hidden_text = 0x40,
5605 sensitive_data = 0x80,
5607 latin = 0x100,
5609 multiline = 0x200
5610};
5611
5621enum class zwp_text_input_v1_content_purpose : uint32_t
5622 {
5624 normal = 0,
5626 alpha = 1,
5628 digits = 2,
5630 number = 3,
5632 phone = 4,
5634 url = 5,
5636 email = 6,
5638 name = 7,
5640 password = 8,
5642 date = 9,
5644 time = 10,
5646 datetime = 11,
5648 terminal = 12
5649};
5650
5654enum class zwp_text_input_v1_preedit_style : uint32_t
5655 {
5657 _default = 0,
5659 none = 1,
5660 active = 2,
5661 inactive = 3,
5662 highlight = 4,
5663 underline = 5,
5664 selection = 6,
5665 incorrect = 7
5666};
5667
5671enum class zwp_text_input_v1_text_direction : uint32_t
5672 {
5674 _auto = 0,
5676 ltr = 1,
5678 rtl = 2
5679};
5680
5681
5688{
5689private:
5690 struct events_t : public detail::events_base_t
5691 {
5692 };
5693
5694 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5695
5696 zwp_text_input_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5697
5698public:
5700 explicit zwp_text_input_manager_v1_t(const proxy_t &proxy);
5701 zwp_text_input_manager_v1_t(zwp_text_input_manager_v1 *p, wrapper_type t = wrapper_type::standard);
5702
5703 zwp_text_input_manager_v1_t proxy_create_wrapper();
5704
5705 static const std::string interface_name;
5706
5707 operator zwp_text_input_manager_v1*() const;
5708
5715
5718 static constexpr std::uint32_t create_text_input_since_version = 1;
5719
5720};
5721
5722
5754{
5755private:
5756 struct events_t : public detail::events_base_t
5757 {
5758 std::function<void(surface_t)> enter;
5759 std::function<void(surface_t)> leave;
5760 std::function<void(std::string, int32_t, int32_t)> preedit_string;
5761 std::function<void(std::string)> commit_string;
5762 std::function<void(uint32_t, uint32_t)> delete_surrounding_text;
5763 std::function<void(uint32_t)> done;
5764 };
5765
5766 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
5767
5768 zwp_text_input_v3_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
5769
5770public:
5772 explicit zwp_text_input_v3_t(const proxy_t &proxy);
5773 zwp_text_input_v3_t(zwp_text_input_v3 *p, wrapper_type t = wrapper_type::standard);
5774
5775 zwp_text_input_v3_t proxy_create_wrapper();
5776
5777 static const std::string interface_name;
5778
5779 operator zwp_text_input_v3*() const;
5780
5808 void enable();
5809
5812 static constexpr std::uint32_t enable_since_version = 1;
5813
5823 void disable();
5824
5827 static constexpr std::uint32_t disable_since_version = 1;
5828
5867 void set_surrounding_text(std::string const& text, int32_t cursor, int32_t anchor);
5868
5871 static constexpr std::uint32_t set_surrounding_text_since_version = 1;
5872
5892 void set_text_change_cause(zwp_text_input_v3_change_cause const& cause);
5893
5896 static constexpr std::uint32_t set_text_change_cause_since_version = 1;
5897
5915 void set_content_type(zwp_text_input_v3_content_hint const& hint, zwp_text_input_v3_content_purpose const& purpose);
5916
5919 static constexpr std::uint32_t set_content_type_since_version = 1;
5920
5946 void set_cursor_rectangle(int32_t x, int32_t y, int32_t width, int32_t height);
5947
5950 static constexpr std::uint32_t set_cursor_rectangle_since_version = 1;
5951
5979 void commit();
5980
5983 static constexpr std::uint32_t commit_since_version = 1;
5984
5995 std::function<void(surface_t)> &on_enter();
5996
6011 std::function<void(surface_t)> &on_leave();
6012
6038 std::function<void(std::string, int32_t, int32_t)> &on_preedit_string();
6039
6053 std::function<void(std::string)> &on_commit_string();
6054
6075 std::function<void(uint32_t, uint32_t)> &on_delete_surrounding_text();
6076
6104 std::function<void(uint32_t)> &on_done();
6105
6106};
6107
6113enum class zwp_text_input_v3_change_cause : uint32_t
6114 {
6116 input_method = 0,
6118 other = 1
6119};
6120
6127struct zwp_text_input_v3_content_hint : public detail::bitfield<10, 27>
6128{
6129 zwp_text_input_v3_content_hint(const detail::bitfield<10, 27> &b)
6130 : detail::bitfield<10, 27>(b) {}
6131 zwp_text_input_v3_content_hint(const uint32_t value)
6132 : detail::bitfield<10, 27>(value) {}
6134 static const detail::bitfield<10, 27> none;
6136 static const detail::bitfield<10, 27> completion;
6138 static const detail::bitfield<10, 27> spellcheck;
6140 static const detail::bitfield<10, 27> auto_capitalization;
6142 static const detail::bitfield<10, 27> lowercase;
6144 static const detail::bitfield<10, 27> uppercase;
6146 static const detail::bitfield<10, 27> titlecase;
6148 static const detail::bitfield<10, 27> hidden_text;
6150 static const detail::bitfield<10, 27> sensitive_data;
6152 static const detail::bitfield<10, 27> latin;
6154 static const detail::bitfield<10, 27> multiline;
6155};
6156
6166enum class zwp_text_input_v3_content_purpose : uint32_t
6167 {
6169 normal = 0,
6171 alpha = 1,
6173 digits = 2,
6175 number = 3,
6177 phone = 4,
6179 url = 5,
6181 email = 6,
6183 name = 7,
6185 password = 8,
6187 pin = 9,
6189 date = 10,
6191 time = 11,
6193 datetime = 12,
6195 terminal = 13
6196};
6197
6198
6205{
6206private:
6207 struct events_t : public detail::events_base_t
6208 {
6209 };
6210
6211 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6212
6213 zwp_text_input_manager_v3_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6214
6215public:
6217 explicit zwp_text_input_manager_v3_t(const proxy_t &proxy);
6218 zwp_text_input_manager_v3_t(zwp_text_input_manager_v3 *p, wrapper_type t = wrapper_type::standard);
6219
6220 zwp_text_input_manager_v3_t proxy_create_wrapper();
6221
6222 static const std::string interface_name;
6223
6224 operator zwp_text_input_manager_v3*() const;
6225
6233
6236 static constexpr std::uint32_t get_text_input_since_version = 1;
6237
6238};
6239
6240
6268{
6269private:
6270 struct events_t : public detail::events_base_t
6271 {
6272 };
6273
6274 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6275
6276 zxdg_decoration_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6277
6278public:
6280 explicit zxdg_decoration_manager_v1_t(const proxy_t &proxy);
6281 zxdg_decoration_manager_v1_t(zxdg_decoration_manager_v1 *p, wrapper_type t = wrapper_type::standard);
6282
6283 zxdg_decoration_manager_v1_t proxy_create_wrapper();
6284
6285 static const std::string interface_name;
6286
6287 operator zxdg_decoration_manager_v1*() const;
6288
6302
6305 static constexpr std::uint32_t get_toplevel_decoration_since_version = 1;
6306
6307};
6308
6309
6321{
6322private:
6323 struct events_t : public detail::events_base_t
6324 {
6325 std::function<void(zxdg_toplevel_decoration_v1_mode)> configure;
6326 };
6327
6328 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6329
6330 zxdg_toplevel_decoration_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6331
6332public:
6334 explicit zxdg_toplevel_decoration_v1_t(const proxy_t &proxy);
6335 zxdg_toplevel_decoration_v1_t(zxdg_toplevel_decoration_v1 *p, wrapper_type t = wrapper_type::standard);
6336
6337 zxdg_toplevel_decoration_v1_t proxy_create_wrapper();
6338
6339 static const std::string interface_name;
6340
6341 operator zxdg_toplevel_decoration_v1*() const;
6342
6366 void set_mode(zxdg_toplevel_decoration_v1_mode const& mode);
6367
6370 static constexpr std::uint32_t set_mode_since_version = 1;
6371
6380 void unset_mode();
6381
6384 static constexpr std::uint32_t unset_mode_since_version = 1;
6385
6398 std::function<void(zxdg_toplevel_decoration_v1_mode)> &on_configure();
6399
6400};
6401
6405enum class zxdg_toplevel_decoration_v1_error : uint32_t
6406 {
6408 unconfigured_buffer = 0,
6410 already_constructed = 1,
6412 orphaned = 2
6413};
6414
6420enum class zxdg_toplevel_decoration_v1_mode : uint32_t
6421 {
6423 client_side = 1,
6425 server_side = 2
6426};
6427
6428
6436{
6437private:
6438 struct events_t : public detail::events_base_t
6439 {
6440 };
6441
6442 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6443
6444 zxdg_exporter_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6445
6446public:
6448 explicit zxdg_exporter_v1_t(const proxy_t &proxy);
6449 zxdg_exporter_v1_t(zxdg_exporter_v1 *p, wrapper_type t = wrapper_type::standard);
6450
6451 zxdg_exporter_v1_t proxy_create_wrapper();
6452
6453 static const std::string interface_name;
6454
6455 operator zxdg_exporter_v1*() const;
6456
6471 zxdg_exported_v1_t _export(surface_t const& surface);
6472
6475 static constexpr std::uint32_t export_since_version = 1;
6476
6477};
6478
6479
6488{
6489private:
6490 struct events_t : public detail::events_base_t
6491 {
6492 };
6493
6494 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6495
6496 zxdg_importer_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6497
6498public:
6500 explicit zxdg_importer_v1_t(const proxy_t &proxy);
6501 zxdg_importer_v1_t(zxdg_importer_v1 *p, wrapper_type t = wrapper_type::standard);
6502
6503 zxdg_importer_v1_t proxy_create_wrapper();
6504
6505 static const std::string interface_name;
6506
6507 operator zxdg_importer_v1*() const;
6508
6520 zxdg_imported_v1_t import(std::string const& handle);
6521
6524 static constexpr std::uint32_t import_since_version = 1;
6525
6526};
6527
6528
6538{
6539private:
6540 struct events_t : public detail::events_base_t
6541 {
6542 std::function<void(std::string)> handle;
6543 };
6544
6545 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6546
6547 zxdg_exported_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6548
6549public:
6551 explicit zxdg_exported_v1_t(const proxy_t &proxy);
6552 zxdg_exported_v1_t(zxdg_exported_v1 *p, wrapper_type t = wrapper_type::standard);
6553
6554 zxdg_exported_v1_t proxy_create_wrapper();
6555
6556 static const std::string interface_name;
6557
6558 operator zxdg_exported_v1*() const;
6559
6569 std::function<void(std::string)> &on_handle();
6570
6571};
6572
6573
6582{
6583private:
6584 struct events_t : public detail::events_base_t
6585 {
6586 std::function<void()> destroyed;
6587 };
6588
6589 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6590
6591 zxdg_imported_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6592
6593public:
6595 explicit zxdg_imported_v1_t(const proxy_t &proxy);
6596 zxdg_imported_v1_t(zxdg_imported_v1 *p, wrapper_type t = wrapper_type::standard);
6597
6598 zxdg_imported_v1_t proxy_create_wrapper();
6599
6600 static const std::string interface_name;
6601
6602 operator zxdg_imported_v1*() const;
6603
6613 void set_parent_of(surface_t const& surface);
6614
6617 static constexpr std::uint32_t set_parent_of_since_version = 1;
6618
6627 std::function<void()> &on_destroyed();
6628
6629};
6630
6631
6639{
6640private:
6641 struct events_t : public detail::events_base_t
6642 {
6643 };
6644
6645 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6646
6647 zxdg_exporter_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6648
6649public:
6651 explicit zxdg_exporter_v2_t(const proxy_t &proxy);
6652 zxdg_exporter_v2_t(zxdg_exporter_v2 *p, wrapper_type t = wrapper_type::standard);
6653
6654 zxdg_exporter_v2_t proxy_create_wrapper();
6655
6656 static const std::string interface_name;
6657
6658 operator zxdg_exporter_v2*() const;
6659
6675
6678 static constexpr std::uint32_t export_toplevel_since_version = 1;
6679
6680};
6681
6682
6691{
6692private:
6693 struct events_t : public detail::events_base_t
6694 {
6695 };
6696
6697 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6698
6699 zxdg_importer_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6700
6701public:
6703 explicit zxdg_importer_v2_t(const proxy_t &proxy);
6704 zxdg_importer_v2_t(zxdg_importer_v2 *p, wrapper_type t = wrapper_type::standard);
6705
6706 zxdg_importer_v2_t proxy_create_wrapper();
6707
6708 static const std::string interface_name;
6709
6710 operator zxdg_importer_v2*() const;
6711
6723 zxdg_imported_v2_t import_toplevel(std::string const& handle);
6724
6727 static constexpr std::uint32_t import_toplevel_since_version = 1;
6728
6729};
6730
6731
6741{
6742private:
6743 struct events_t : public detail::events_base_t
6744 {
6745 std::function<void(std::string)> handle;
6746 };
6747
6748 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6749
6750 zxdg_exported_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6751
6752public:
6754 explicit zxdg_exported_v2_t(const proxy_t &proxy);
6755 zxdg_exported_v2_t(zxdg_exported_v2 *p, wrapper_type t = wrapper_type::standard);
6756
6757 zxdg_exported_v2_t proxy_create_wrapper();
6758
6759 static const std::string interface_name;
6760
6761 operator zxdg_exported_v2*() const;
6762
6772 std::function<void(std::string)> &on_handle();
6773
6774};
6775
6776
6785{
6786private:
6787 struct events_t : public detail::events_base_t
6788 {
6789 std::function<void()> destroyed;
6790 };
6791
6792 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6793
6794 zxdg_imported_v2_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6795
6796public:
6798 explicit zxdg_imported_v2_t(const proxy_t &proxy);
6799 zxdg_imported_v2_t(zxdg_imported_v2 *p, wrapper_type t = wrapper_type::standard);
6800
6801 zxdg_imported_v2_t proxy_create_wrapper();
6802
6803 static const std::string interface_name;
6804
6805 operator zxdg_imported_v2*() const;
6806
6816 void set_parent_of(surface_t const& surface);
6817
6820 static constexpr std::uint32_t set_parent_of_since_version = 1;
6821
6830 std::function<void()> &on_destroyed();
6831
6832};
6833
6834
6841{
6842private:
6843 struct events_t : public detail::events_base_t
6844 {
6845 };
6846
6847 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6848
6849 zxdg_output_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6850
6851public:
6853 explicit zxdg_output_manager_v1_t(const proxy_t &proxy);
6854 zxdg_output_manager_v1_t(zxdg_output_manager_v1 *p, wrapper_type t = wrapper_type::standard);
6855
6856 zxdg_output_manager_v1_t proxy_create_wrapper();
6857
6858 static const std::string interface_name;
6859
6860 operator zxdg_output_manager_v1*() const;
6861
6869
6872 static constexpr std::uint32_t get_xdg_output_since_version = 1;
6873
6874};
6875
6876
6891{
6892private:
6893 struct events_t : public detail::events_base_t
6894 {
6895 std::function<void(int32_t, int32_t)> logical_position;
6896 std::function<void(int32_t, int32_t)> logical_size;
6897 std::function<void()> done;
6898 std::function<void(std::string)> name;
6899 std::function<void(std::string)> description;
6900 };
6901
6902 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
6903
6904 zxdg_output_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
6905
6906public:
6908 explicit zxdg_output_v1_t(const proxy_t &proxy);
6910
6911 zxdg_output_v1_t proxy_create_wrapper();
6912
6913 static const std::string interface_name;
6914
6915 operator zxdg_output_v1*() const;
6916
6929 std::function<void(int32_t, int32_t)> &on_logical_position();
6930
6971 std::function<void(int32_t, int32_t)> &on_logical_size();
6972
6986 std::function<void()> &on_done();
6987
7011 std::function<void(std::string)> &on_name();
7012
7033 std::function<void(std::string)> &on_description();
7034
7035};
7036
7037
7047{
7048private:
7049 struct events_t : public detail::events_base_t
7050 {
7051 std::function<void(uint32_t)> ping;
7052 };
7053
7054 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7055
7056 zxdg_shell_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7057
7058public:
7060 explicit zxdg_shell_v6_t(const proxy_t &proxy);
7062
7063 zxdg_shell_v6_t proxy_create_wrapper();
7064
7065 static const std::string interface_name;
7066
7067 operator zxdg_shell_v6*() const;
7068
7077
7080 static constexpr std::uint32_t create_positioner_since_version = 1;
7081
7099
7102 static constexpr std::uint32_t get_xdg_surface_since_version = 1;
7103
7111 void pong(uint32_t serial);
7112
7115 static constexpr std::uint32_t pong_since_version = 1;
7116
7133 std::function<void(uint32_t)> &on_ping();
7134
7135};
7136
7140enum class zxdg_shell_v6_error : uint32_t
7141 {
7143 role = 0,
7145 defunct_surfaces = 1,
7147 not_the_topmost_popup = 2,
7149 invalid_popup_parent = 3,
7151 invalid_surface_state = 4,
7153 invalid_positioner = 5
7154};
7155
7156
7181{
7182private:
7183 struct events_t : public detail::events_base_t
7184 {
7185 };
7186
7187 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7188
7189 zxdg_positioner_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7190
7191public:
7193 explicit zxdg_positioner_v6_t(const proxy_t &proxy);
7194 zxdg_positioner_v6_t(zxdg_positioner_v6 *p, wrapper_type t = wrapper_type::standard);
7195
7196 zxdg_positioner_v6_t proxy_create_wrapper();
7197
7198 static const std::string interface_name;
7199
7200 operator zxdg_positioner_v6*() const;
7201
7213 void set_size(int32_t width, int32_t height);
7214
7217 static constexpr std::uint32_t set_size_since_version = 1;
7218
7237 void set_anchor_rect(int32_t x, int32_t y, int32_t width, int32_t height);
7238
7241 static constexpr std::uint32_t set_anchor_rect_since_version = 1;
7242
7258 void set_anchor(zxdg_positioner_v6_anchor const& anchor);
7259
7262 static constexpr std::uint32_t set_anchor_since_version = 1;
7263
7278 void set_gravity(zxdg_positioner_v6_gravity const& gravity);
7279
7282 static constexpr std::uint32_t set_gravity_since_version = 1;
7283
7303
7306 static constexpr std::uint32_t set_constraint_adjustment_since_version = 1;
7307
7325 void set_offset(int32_t x, int32_t y);
7326
7329 static constexpr std::uint32_t set_offset_since_version = 1;
7330
7331};
7332
7336enum class zxdg_positioner_v6_error : uint32_t
7337 {
7339 invalid_input = 0
7340};
7341
7345struct zxdg_positioner_v6_anchor : public detail::bitfield<4, 33>
7346{
7347 zxdg_positioner_v6_anchor(const detail::bitfield<4, 33> &b)
7348 : detail::bitfield<4, 33>(b) {}
7349 zxdg_positioner_v6_anchor(const uint32_t value)
7350 : detail::bitfield<4, 33>(value) {}
7352 static const detail::bitfield<4, 33> none;
7354 static const detail::bitfield<4, 33> top;
7356 static const detail::bitfield<4, 33> bottom;
7358 static const detail::bitfield<4, 33> left;
7360 static const detail::bitfield<4, 33> right;
7361};
7362
7366struct zxdg_positioner_v6_gravity : public detail::bitfield<4, 34>
7367{
7368 zxdg_positioner_v6_gravity(const detail::bitfield<4, 34> &b)
7369 : detail::bitfield<4, 34>(b) {}
7370 zxdg_positioner_v6_gravity(const uint32_t value)
7371 : detail::bitfield<4, 34>(value) {}
7373 static const detail::bitfield<4, 34> none;
7375 static const detail::bitfield<4, 34> top;
7377 static const detail::bitfield<4, 34> bottom;
7379 static const detail::bitfield<4, 34> left;
7381 static const detail::bitfield<4, 34> right;
7382};
7383
7399struct zxdg_positioner_v6_constraint_adjustment : public detail::bitfield<6, 35>
7400{
7401 zxdg_positioner_v6_constraint_adjustment(const detail::bitfield<6, 35> &b)
7402 : detail::bitfield<6, 35>(b) {}
7403 zxdg_positioner_v6_constraint_adjustment(const uint32_t value)
7404 : detail::bitfield<6, 35>(value) {}
7405 static const detail::bitfield<6, 35> none;
7406 static const detail::bitfield<6, 35> slide_x;
7407 static const detail::bitfield<6, 35> slide_y;
7408 static const detail::bitfield<6, 35> flip_x;
7409 static const detail::bitfield<6, 35> flip_y;
7410 static const detail::bitfield<6, 35> resize_x;
7411 static const detail::bitfield<6, 35> resize_y;
7412};
7413
7414
7450{
7451private:
7452 struct events_t : public detail::events_base_t
7453 {
7454 std::function<void(uint32_t)> configure;
7455 };
7456
7457 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7458
7459 zxdg_surface_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7460
7461public:
7463 explicit zxdg_surface_v6_t(const proxy_t &proxy);
7464 zxdg_surface_v6_t(zxdg_surface_v6 *p, wrapper_type t = wrapper_type::standard);
7465
7466 zxdg_surface_v6_t proxy_create_wrapper();
7467
7468 static const std::string interface_name;
7469
7470 operator zxdg_surface_v6*() const;
7471
7482
7485 static constexpr std::uint32_t get_toplevel_since_version = 1;
7486
7498 zxdg_popup_v6_t get_popup(zxdg_surface_v6_t const& parent, zxdg_positioner_v6_t const& positioner);
7499
7502 static constexpr std::uint32_t get_popup_since_version = 1;
7503
7536 void set_window_geometry(int32_t x, int32_t y, int32_t width, int32_t height);
7537
7540 static constexpr std::uint32_t set_window_geometry_since_version = 1;
7541
7566 void ack_configure(uint32_t serial);
7567
7570 static constexpr std::uint32_t ack_configure_since_version = 1;
7571
7593 std::function<void(uint32_t)> &on_configure();
7594
7595};
7596
7600enum class zxdg_surface_v6_error : uint32_t
7601 {
7602 not_constructed = 1,
7603 already_constructed = 2,
7604 unconfigured_buffer = 3
7605};
7606
7607
7618{
7619private:
7620 struct events_t : public detail::events_base_t
7621 {
7622 std::function<void(int32_t, int32_t, array_t)> configure;
7623 std::function<void()> close;
7624 };
7625
7626 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
7627
7628 zxdg_toplevel_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
7629
7630public:
7632 explicit zxdg_toplevel_v6_t(const proxy_t &proxy);
7633 zxdg_toplevel_v6_t(zxdg_toplevel_v6 *p, wrapper_type t = wrapper_type::standard);
7634
7635 zxdg_toplevel_v6_t proxy_create_wrapper();
7636
7637 static const std::string interface_name;
7638
7639 operator zxdg_toplevel_v6*() const;
7640
7653 void set_parent(zxdg_toplevel_v6_t const& parent);
7654
7657 static constexpr std::uint32_t set_parent_since_version = 1;
7658
7671 void set_title(std::string const& title);
7672
7675 static constexpr std::uint32_t set_title_since_version = 1;
7676
7702 void set_app_id(std::string const& app_id);
7703
7706 static constexpr std::uint32_t set_app_id_since_version = 1;
7707
7727 void show_window_menu(seat_t const& seat, uint32_t serial, int32_t x, int32_t y);
7728
7731 static constexpr std::uint32_t show_window_menu_since_version = 1;
7732
7755 void move(seat_t const& seat, uint32_t serial);
7756
7759 static constexpr std::uint32_t move_since_version = 1;
7760
7798 void resize(seat_t const& seat, uint32_t serial, zxdg_toplevel_v6_resize_edge const& edges);
7799
7802 static constexpr std::uint32_t resize_since_version = 1;
7803
7844 void set_max_size(int32_t width, int32_t height);
7845
7848 static constexpr std::uint32_t set_max_size_since_version = 1;
7849
7890 void set_min_size(int32_t width, int32_t height);
7891
7894 static constexpr std::uint32_t set_min_size_since_version = 1;
7895
7916 void set_maximized();
7917
7920 static constexpr std::uint32_t set_maximized_since_version = 1;
7921
7943 void unset_maximized();
7944
7947 static constexpr std::uint32_t unset_maximized_since_version = 1;
7948
7963 void set_fullscreen(output_t const& output);
7964
7967 static constexpr std::uint32_t set_fullscreen_since_version = 1;
7968
7972 void unset_fullscreen();
7973
7976 static constexpr std::uint32_t unset_fullscreen_since_version = 1;
7977
7990 void set_minimized();
7991
7994 static constexpr std::uint32_t set_minimized_since_version = 1;
7995
8022 std::function<void(int32_t, int32_t, array_t)> &on_configure();
8023
8036 std::function<void()> &on_close();
8037
8038};
8039
8046struct zxdg_toplevel_v6_resize_edge : public detail::bitfield<4, 37>
8047{
8048 zxdg_toplevel_v6_resize_edge(const detail::bitfield<4, 37> &b)
8049 : detail::bitfield<4, 37>(b) {}
8050 zxdg_toplevel_v6_resize_edge(const uint32_t value)
8051 : detail::bitfield<4, 37>(value) {}
8052 static const detail::bitfield<4, 37> none;
8053 static const detail::bitfield<4, 37> top;
8054 static const detail::bitfield<4, 37> bottom;
8055 static const detail::bitfield<4, 37> left;
8056 static const detail::bitfield<4, 37> top_left;
8057 static const detail::bitfield<4, 37> bottom_left;
8058 static const detail::bitfield<4, 37> right;
8059 static const detail::bitfield<4, 37> top_right;
8060 static const detail::bitfield<4, 37> bottom_right;
8061};
8062
8074enum class zxdg_toplevel_v6_state : uint32_t
8075 {
8077 maximized = 1,
8079 fullscreen = 2,
8081 resizing = 3,
8083 activated = 4
8084};
8085
8086
8125{
8126private:
8127 struct events_t : public detail::events_base_t
8128 {
8129 std::function<void(int32_t, int32_t, int32_t, int32_t)> configure;
8130 std::function<void()> popup_done;
8131 };
8132
8133 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8134
8135 zxdg_popup_v6_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8136
8137public:
8139 explicit zxdg_popup_v6_t(const proxy_t &proxy);
8141
8142 zxdg_popup_v6_t proxy_create_wrapper();
8143
8144 static const std::string interface_name;
8145
8146 operator zxdg_popup_v6*() const;
8147
8195 void grab(seat_t const& seat, uint32_t serial);
8196
8199 static constexpr std::uint32_t grab_since_version = 1;
8200
8216 std::function<void(int32_t, int32_t, int32_t, int32_t)> &on_configure();
8217
8225 std::function<void()> &on_popup_done();
8226
8227};
8228
8232enum class zxdg_popup_v6_error : uint32_t
8233 {
8235 invalid_grab = 0
8236};
8237
8238
8245{
8246private:
8247 struct events_t : public detail::events_base_t
8248 {
8249 };
8250
8251 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8252
8253 zwp_xwayland_keyboard_grab_manager_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8254
8255public:
8257 explicit zwp_xwayland_keyboard_grab_manager_v1_t(const proxy_t &proxy);
8258 zwp_xwayland_keyboard_grab_manager_v1_t(zwp_xwayland_keyboard_grab_manager_v1 *p, wrapper_type t = wrapper_type::standard);
8259
8260 zwp_xwayland_keyboard_grab_manager_v1_t proxy_create_wrapper();
8261
8262 static const std::string interface_name;
8263
8264 operator zwp_xwayland_keyboard_grab_manager_v1*() const;
8265
8292
8295 static constexpr std::uint32_t grab_keyboard_since_version = 1;
8296
8297};
8298
8299
8306{
8307private:
8308 struct events_t : public detail::events_base_t
8309 {
8310 };
8311
8312 static int dispatcher(uint32_t opcode, const std::vector<detail::any>& args, const std::shared_ptr<detail::events_base_t>& e);
8313
8314 zwp_xwayland_keyboard_grab_v1_t(proxy_t const &wrapped_proxy, construct_proxy_wrapper_tag /*unused*/);
8315
8316public:
8318 explicit zwp_xwayland_keyboard_grab_v1_t(const proxy_t &proxy);
8319 zwp_xwayland_keyboard_grab_v1_t(zwp_xwayland_keyboard_grab_v1 *p, wrapper_type t = wrapper_type::standard);
8320
8321 zwp_xwayland_keyboard_grab_v1_t proxy_create_wrapper();
8322
8323 static const std::string interface_name;
8324
8325 operator zwp_xwayland_keyboard_grab_v1*() const;
8326
8327};
8328
8329
8330
8331}
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_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
factory for creating dmabuf-based wl_buffers
std::function< void(uint32_t)> & on_format()
supported buffer format
static constexpr std::uint32_t create_params_since_version
Minimum protocol version required for the create_params function.
std::function< void(uint32_t, uint32_t, uint32_t)> & on_modifier()
supported buffer format modifier
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 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 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.
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, 27 > none
no special behavior
static const detail::bitfield< 10, 27 > lowercase
prefer lowercase letters
static const detail::bitfield< 10, 27 > titlecase
prefer casing for titles and headings (can be language dependent)
static const detail::bitfield< 10, 27 > sensitive_data
typed text should not be stored
static const detail::bitfield< 10, 27 > uppercase
prefer uppercase letters
static const detail::bitfield< 10, 27 > spellcheck
suggest word corrections
static const detail::bitfield< 10, 27 > hidden_text
characters should be hidden
static const detail::bitfield< 10, 27 > latin
just Latin characters should be entered
static const detail::bitfield< 10, 27 > auto_capitalization
switch to uppercase letters at the start of a sentence
static const detail::bitfield< 10, 27 > multiline
the text input is multiline
static const detail::bitfield< 10, 27 > completion
suggest word completions