10#include <wayland-server-protocol-extra.hpp>
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_dmabuf_feedback_v1;
27struct zwp_linux_explicit_synchronization_v1;
28struct zwp_linux_surface_synchronization_v1;
29struct zwp_linux_buffer_release_v1;
30struct zwp_pointer_constraints_v1;
31struct zwp_locked_pointer_v1;
32struct zwp_confined_pointer_v1;
33struct zwp_pointer_gestures_v1;
34struct zwp_pointer_gesture_swipe_v1;
35struct zwp_pointer_gesture_pinch_v1;
36struct zwp_pointer_gesture_hold_v1;
37struct zwp_primary_selection_device_manager_v1;
38struct zwp_primary_selection_device_v1;
39struct zwp_primary_selection_offer_v1;
40struct zwp_primary_selection_source_v1;
41struct zwp_relative_pointer_manager_v1;
42struct zwp_relative_pointer_v1;
43struct zwp_tablet_manager_v1;
44struct zwp_tablet_seat_v1;
45struct zwp_tablet_tool_v1;
47struct zwp_tablet_manager_v2;
48struct zwp_tablet_seat_v2;
49struct zwp_tablet_tool_v2;
51struct zwp_tablet_pad_ring_v2;
52struct zwp_tablet_pad_strip_v2;
53struct zwp_tablet_pad_group_v2;
54struct zwp_tablet_pad_v2;
55struct zwp_text_input_v1;
56struct zwp_text_input_manager_v1;
57struct zwp_text_input_v3;
58struct zwp_text_input_manager_v3;
59struct xdg_activation_v1;
60struct xdg_activation_token_v1;
61struct zxdg_decoration_manager_v1;
62struct zxdg_toplevel_decoration_v1;
63struct zxdg_exporter_v1;
64struct zxdg_importer_v1;
65struct zxdg_exported_v1;
66struct zxdg_imported_v1;
67struct zxdg_exporter_v2;
68struct zxdg_importer_v2;
69struct zxdg_exported_v2;
70struct zxdg_imported_v2;
71struct zxdg_output_manager_v1;
74struct zxdg_positioner_v6;
75struct zxdg_surface_v6;
76struct zxdg_toplevel_v6;
78struct zwp_xwayland_keyboard_grab_manager_v1;
79struct zwp_xwayland_keyboard_grab_v1;
85class zwp_fullscreen_shell_v1_t;
86enum class zwp_fullscreen_shell_v1_capability : uint32_t;
87enum class zwp_fullscreen_shell_v1_present_method : uint32_t;
88enum class zwp_fullscreen_shell_v1_error : uint32_t;
89class zwp_fullscreen_shell_mode_feedback_v1_t;
90class zwp_idle_inhibit_manager_v1_t;
91class zwp_idle_inhibitor_v1_t;
92class zwp_input_method_context_v1_t;
93class zwp_input_method_v1_t;
94class zwp_input_panel_v1_t;
95class zwp_input_panel_surface_v1_t;
96enum class zwp_input_panel_surface_v1_position : uint32_t;
97class zwp_input_timestamps_manager_v1_t;
98class zwp_input_timestamps_v1_t;
99class zwp_keyboard_shortcuts_inhibit_manager_v1_t;
100enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t;
101class zwp_keyboard_shortcuts_inhibitor_v1_t;
102class zwp_linux_dmabuf_v1_t;
103class zwp_linux_buffer_params_v1_t;
104enum class zwp_linux_buffer_params_v1_error : uint32_t;
105struct zwp_linux_buffer_params_v1_flags;
106class zwp_linux_dmabuf_feedback_v1_t;
107struct zwp_linux_dmabuf_feedback_v1_tranche_flags;
108class zwp_linux_explicit_synchronization_v1_t;
109enum class zwp_linux_explicit_synchronization_v1_error : uint32_t;
110class zwp_linux_surface_synchronization_v1_t;
111enum class zwp_linux_surface_synchronization_v1_error : uint32_t;
112class zwp_linux_buffer_release_v1_t;
113class zwp_pointer_constraints_v1_t;
114enum class zwp_pointer_constraints_v1_error : uint32_t;
115enum class zwp_pointer_constraints_v1_lifetime : uint32_t;
116class zwp_locked_pointer_v1_t;
117class zwp_confined_pointer_v1_t;
118class zwp_pointer_gestures_v1_t;
119class zwp_pointer_gesture_swipe_v1_t;
120class zwp_pointer_gesture_pinch_v1_t;
121class zwp_pointer_gesture_hold_v1_t;
122class zwp_primary_selection_device_manager_v1_t;
123class zwp_primary_selection_device_v1_t;
124class zwp_primary_selection_offer_v1_t;
125class zwp_primary_selection_source_v1_t;
126class zwp_relative_pointer_manager_v1_t;
127class zwp_relative_pointer_v1_t;
128class zwp_tablet_manager_v1_t;
129class zwp_tablet_seat_v1_t;
130class zwp_tablet_tool_v1_t;
131enum class zwp_tablet_tool_v1_type : uint32_t;
132enum class zwp_tablet_tool_v1_capability : uint32_t;
133enum class zwp_tablet_tool_v1_button_state : uint32_t;
134enum class zwp_tablet_tool_v1_error : uint32_t;
135class zwp_tablet_v1_t;
136class zwp_tablet_manager_v2_t;
137class zwp_tablet_seat_v2_t;
138class zwp_tablet_tool_v2_t;
139enum class zwp_tablet_tool_v2_type : uint32_t;
140enum class zwp_tablet_tool_v2_capability : uint32_t;
141enum class zwp_tablet_tool_v2_button_state : uint32_t;
142enum class zwp_tablet_tool_v2_error : uint32_t;
143class zwp_tablet_v2_t;
144class zwp_tablet_pad_ring_v2_t;
145enum class zwp_tablet_pad_ring_v2_source : uint32_t;
146class zwp_tablet_pad_strip_v2_t;
147enum class zwp_tablet_pad_strip_v2_source : uint32_t;
148class zwp_tablet_pad_group_v2_t;
149class zwp_tablet_pad_v2_t;
150enum class zwp_tablet_pad_v2_button_state : uint32_t;
151class zwp_text_input_v1_t;
152struct zwp_text_input_v1_content_hint;
153enum class zwp_text_input_v1_content_purpose : uint32_t;
154enum class zwp_text_input_v1_preedit_style : uint32_t;
155enum class zwp_text_input_v1_text_direction : uint32_t;
156class zwp_text_input_manager_v1_t;
157class zwp_text_input_v3_t;
158enum class zwp_text_input_v3_change_cause : uint32_t;
159struct zwp_text_input_v3_content_hint;
160enum class zwp_text_input_v3_content_purpose : uint32_t;
161class zwp_text_input_manager_v3_t;
162class xdg_activation_v1_t;
163class xdg_activation_token_v1_t;
164enum class xdg_activation_token_v1_error : uint32_t;
165class zxdg_decoration_manager_v1_t;
166class zxdg_toplevel_decoration_v1_t;
167enum class zxdg_toplevel_decoration_v1_error : uint32_t;
168enum class zxdg_toplevel_decoration_v1_mode : uint32_t;
169class zxdg_exporter_v1_t;
170class zxdg_importer_v1_t;
171class zxdg_exported_v1_t;
172class zxdg_imported_v1_t;
173class zxdg_exporter_v2_t;
174enum class zxdg_exporter_v2_error : uint32_t;
175class zxdg_importer_v2_t;
176class zxdg_exported_v2_t;
177class zxdg_imported_v2_t;
178enum class zxdg_imported_v2_error : uint32_t;
179class zxdg_output_manager_v1_t;
180class zxdg_output_v1_t;
181class zxdg_shell_v6_t;
182enum class zxdg_shell_v6_error : uint32_t;
183class zxdg_positioner_v6_t;
184enum class zxdg_positioner_v6_error : uint32_t;
185struct zxdg_positioner_v6_anchor;
186struct zxdg_positioner_v6_gravity;
187struct zxdg_positioner_v6_constraint_adjustment;
188class zxdg_surface_v6_t;
189enum class zxdg_surface_v6_error : uint32_t;
190class zxdg_toplevel_v6_t;
191struct zxdg_toplevel_v6_resize_edge;
192enum class zxdg_toplevel_v6_state : uint32_t;
193class zxdg_popup_v6_t;
194enum class zxdg_popup_v6_error : uint32_t;
195class zwp_xwayland_keyboard_grab_manager_v1_t;
196class zwp_xwayland_keyboard_grab_v1_t;
200 extern const wl_interface zwp_fullscreen_shell_v1_interface;
201 extern const wl_interface zwp_fullscreen_shell_mode_feedback_v1_interface;
202 extern const wl_interface zwp_idle_inhibit_manager_v1_interface;
203 extern const wl_interface zwp_idle_inhibitor_v1_interface;
204 extern const wl_interface zwp_input_method_context_v1_interface;
205 extern const wl_interface zwp_input_method_v1_interface;
206 extern const wl_interface zwp_input_panel_v1_interface;
207 extern const wl_interface zwp_input_panel_surface_v1_interface;
208 extern const wl_interface zwp_input_timestamps_manager_v1_interface;
209 extern const wl_interface zwp_input_timestamps_v1_interface;
210 extern const wl_interface zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
211 extern const wl_interface zwp_keyboard_shortcuts_inhibitor_v1_interface;
212 extern const wl_interface zwp_linux_dmabuf_v1_interface;
213 extern const wl_interface zwp_linux_buffer_params_v1_interface;
214 extern const wl_interface zwp_linux_dmabuf_feedback_v1_interface;
215 extern const wl_interface zwp_linux_explicit_synchronization_v1_interface;
216 extern const wl_interface zwp_linux_surface_synchronization_v1_interface;
217 extern const wl_interface zwp_linux_buffer_release_v1_interface;
218 extern const wl_interface zwp_pointer_constraints_v1_interface;
219 extern const wl_interface zwp_locked_pointer_v1_interface;
220 extern const wl_interface zwp_confined_pointer_v1_interface;
221 extern const wl_interface zwp_pointer_gestures_v1_interface;
222 extern const wl_interface zwp_pointer_gesture_swipe_v1_interface;
223 extern const wl_interface zwp_pointer_gesture_pinch_v1_interface;
224 extern const wl_interface zwp_pointer_gesture_hold_v1_interface;
225 extern const wl_interface zwp_primary_selection_device_manager_v1_interface;
226 extern const wl_interface zwp_primary_selection_device_v1_interface;
227 extern const wl_interface zwp_primary_selection_offer_v1_interface;
228 extern const wl_interface zwp_primary_selection_source_v1_interface;
229 extern const wl_interface zwp_relative_pointer_manager_v1_interface;
230 extern const wl_interface zwp_relative_pointer_v1_interface;
231 extern const wl_interface zwp_tablet_manager_v1_interface;
232 extern const wl_interface zwp_tablet_seat_v1_interface;
233 extern const wl_interface zwp_tablet_tool_v1_interface;
234 extern const wl_interface zwp_tablet_v1_interface;
235 extern const wl_interface zwp_tablet_manager_v2_interface;
236 extern const wl_interface zwp_tablet_seat_v2_interface;
237 extern const wl_interface zwp_tablet_tool_v2_interface;
238 extern const wl_interface zwp_tablet_v2_interface;
239 extern const wl_interface zwp_tablet_pad_ring_v2_interface;
240 extern const wl_interface zwp_tablet_pad_strip_v2_interface;
241 extern const wl_interface zwp_tablet_pad_group_v2_interface;
242 extern const wl_interface zwp_tablet_pad_v2_interface;
243 extern const wl_interface zwp_text_input_v1_interface;
244 extern const wl_interface zwp_text_input_manager_v1_interface;
245 extern const wl_interface zwp_text_input_v3_interface;
246 extern const wl_interface zwp_text_input_manager_v3_interface;
247 extern const wl_interface xdg_activation_v1_interface;
248 extern const wl_interface xdg_activation_token_v1_interface;
249 extern const wl_interface zxdg_decoration_manager_v1_interface;
250 extern const wl_interface zxdg_toplevel_decoration_v1_interface;
251 extern const wl_interface zxdg_exporter_v1_interface;
252 extern const wl_interface zxdg_importer_v1_interface;
253 extern const wl_interface zxdg_exported_v1_interface;
254 extern const wl_interface zxdg_imported_v1_interface;
255 extern const wl_interface zxdg_exporter_v2_interface;
256 extern const wl_interface zxdg_importer_v2_interface;
257 extern const wl_interface zxdg_exported_v2_interface;
258 extern const wl_interface zxdg_imported_v2_interface;
259 extern const wl_interface zxdg_output_manager_v1_interface;
260 extern const wl_interface zxdg_output_v1_interface;
261 extern const wl_interface zxdg_shell_v6_interface;
262 extern const wl_interface zxdg_positioner_v6_interface;
263 extern const wl_interface zxdg_surface_v6_interface;
264 extern const wl_interface zxdg_toplevel_v6_interface;
265 extern const wl_interface zxdg_popup_v6_interface;
266 extern const wl_interface zwp_xwayland_keyboard_grab_manager_v1_interface;
267 extern const wl_interface zwp_xwayland_keyboard_grab_v1_interface;
310 struct events_t :
public resource_t::events_base_t
312 std::function<void()> release;
313 std::function<void(
surface_t, zwp_fullscreen_shell_v1_present_method,
output_t)> present_surface;
314 std::function<void(
surface_t,
output_t, int32_t, zwp_fullscreen_shell_mode_feedback_v1_t)> present_surface_for_mode;
317 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
320 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_fullscreen_shell_v1_interface;
321 static constexpr const unsigned int max_version = 1;
331 static const std::string interface_name;
333 operator zwp_fullscreen_shell_v1*()
const;
483enum class zwp_fullscreen_shell_v1_capability : uint32_t
498enum class zwp_fullscreen_shell_v1_present_method : uint32_t
517enum class zwp_fullscreen_shell_v1_error : uint32_t
529class zwp_fullscreen_shell_mode_feedback_v1_t :
public resource_t
532 struct events_t :
public resource_t::events_base_t
536 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
539 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_fullscreen_shell_mode_feedback_v1_interface;
540 static constexpr const unsigned int max_version = 1;
542 friend class global_t<zwp_fullscreen_shell_mode_feedback_v1_t>;
543 friend class global_base_t;
546 zwp_fullscreen_shell_mode_feedback_v1_t() =
default;
547 zwp_fullscreen_shell_mode_feedback_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
548 zwp_fullscreen_shell_mode_feedback_v1_t(
const resource_t &resource);
550 static const std::string interface_name;
552 operator zwp_fullscreen_shell_mode_feedback_v1*()
const;
564 void mode_successful(
bool post =
true);
568 static constexpr std::uint32_t mode_successful_since_version = 1;
580 void mode_failed(
bool post =
true);
584 static constexpr std::uint32_t mode_failed_since_version = 1;
596 void present_cancelled(
bool post =
true);
600 static constexpr std::uint32_t present_cancelled_since_version = 1;
604using global_zwp_fullscreen_shell_mode_feedback_v1_t = global_t<zwp_fullscreen_shell_mode_feedback_v1_t>;
626 struct events_t :
public resource_t::events_base_t
628 std::function<void()> destroy;
632 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
635 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_idle_inhibit_manager_v1_interface;
636 static constexpr const unsigned int max_version = 1;
646 static const std::string interface_name;
648 operator zwp_idle_inhibit_manager_v1*()
const;
690 struct events_t :
public resource_t::events_base_t
692 std::function<void()> destroy;
695 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
698 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_idle_inhibitor_v1_interface;
699 static constexpr const unsigned int max_version = 1;
709 static const std::string interface_name;
711 operator zwp_idle_inhibitor_v1*()
const;
755 struct events_t :
public resource_t::events_base_t
757 std::function<void()> destroy;
758 std::function<void(uint32_t, std::string)> commit_string;
759 std::function<void(uint32_t, std::string, std::string)> preedit_string;
760 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> preedit_styling;
761 std::function<void(int32_t)> preedit_cursor;
762 std::function<void(int32_t, uint32_t)> delete_surrounding_text;
763 std::function<void(int32_t, int32_t)> cursor_position;
764 std::function<void(array_t)> modifiers_map;
765 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> keysym;
766 std::function<void(
keyboard_t)> grab_keyboard;
767 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state)> key;
768 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> modifiers;
769 std::function<void(uint32_t, std::string)> language;
770 std::function<void(uint32_t, uint32_t)> text_direction;
773 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
776 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_method_context_v1_interface;
777 static constexpr const unsigned int max_version = 1;
787 static const std::string interface_name;
789 operator zwp_input_method_context_v1*()
const;
794 std::function<void()> &on_destroy();
842 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> &
on_preedit_styling();
906 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> &
on_keysym();
933 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state)> &
on_key();
948 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> &
on_modifiers();
955 std::function<void(uint32_t, std::string)> &
on_language();
976 void surrounding_text(std::string
const& text, uint32_t cursor, uint32_t anchor,
bool post =
true);
985 void reset(
bool post =
true);
1007 void invoke_action(uint32_t button, uint32_t index,
bool post =
true);
1049 struct events_t :
public resource_t::events_base_t
1053 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1056 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_method_v1_interface;
1057 static constexpr const unsigned int max_version = 1;
1067 static const std::string interface_name;
1069 operator zwp_input_method_v1*()
const;
1110 struct events_t :
public resource_t::events_base_t
1112 std::function<void(zwp_input_panel_surface_v1_t,
surface_t)> get_input_panel_surface;
1115 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1118 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_panel_v1_interface;
1119 static constexpr const unsigned int max_version = 1;
1129 static const std::string interface_name;
1131 operator zwp_input_panel_v1*()
const;
1148class zwp_input_panel_surface_v1_t :
public resource_t
1151 struct events_t :
public resource_t::events_base_t
1153 std::function<void(
output_t, zwp_input_panel_surface_v1_position)> set_toplevel;
1154 std::function<void()> set_overlay_panel;
1157 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1160 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_panel_surface_v1_interface;
1161 static constexpr const unsigned int max_version = 1;
1163 friend class global_t<zwp_input_panel_surface_v1_t>;
1164 friend class global_base_t;
1167 zwp_input_panel_surface_v1_t() =
default;
1168 zwp_input_panel_surface_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
1169 zwp_input_panel_surface_v1_t(
const resource_t &resource);
1171 static const std::string interface_name;
1173 operator zwp_input_panel_surface_v1*()
const;
1184 std::function<void(
output_t, zwp_input_panel_surface_v1_position)> &on_set_toplevel();
1194 std::function<void()> &on_set_overlay_panel();
1198using global_zwp_input_panel_surface_v1_t = global_t<zwp_input_panel_surface_v1_t>;
1203enum class zwp_input_panel_surface_v1_position : uint32_t
1218 struct events_t :
public resource_t::events_base_t
1220 std::function<void()> destroy;
1226 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1229 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_timestamps_manager_v1_interface;
1230 static constexpr const unsigned int max_version = 1;
1240 static const std::string interface_name;
1242 operator zwp_input_timestamps_manager_v1*()
const;
1316 struct events_t :
public resource_t::events_base_t
1318 std::function<void()> destroy;
1321 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1324 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_timestamps_v1_interface;
1325 static constexpr const unsigned int max_version = 1;
1335 static const std::string interface_name;
1337 operator zwp_input_timestamps_v1*()
const;
1369 void timestamp(uint32_t tv_sec_hi, uint32_t tv_sec_lo, uint32_t tv_nsec,
bool post =
true);
1388 struct events_t :
public resource_t::events_base_t
1390 std::function<void()> destroy;
1394 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1397 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
1398 static constexpr const unsigned int max_version = 1;
1408 static const std::string interface_name;
1410 operator zwp_keyboard_shortcuts_inhibit_manager_v1*()
const;
1444enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t
1447 already_inhibited = 0
1491 struct events_t :
public resource_t::events_base_t
1493 std::function<void()> destroy;
1496 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1499 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_keyboard_shortcuts_inhibitor_v1_interface;
1500 static constexpr const unsigned int max_version = 1;
1510 static const std::string interface_name;
1512 operator zwp_keyboard_shortcuts_inhibitor_v1*()
const;
1536 void active(
bool post =
true);
1634 struct events_t :
public resource_t::events_base_t
1636 std::function<void()> destroy;
1642 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1645 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_dmabuf_v1_interface;
1646 static constexpr const unsigned int max_version = 4;
1656 static const std::string interface_name;
1658 operator zwp_linux_dmabuf_v1*()
const;
1756 void modifier(uint32_t
format, uint32_t modifier_hi, uint32_t modifier_lo,
bool post =
true);
1793 struct events_t :
public resource_t::events_base_t
1795 std::function<void()> destroy;
1796 std::function<void(
int, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> add;
1797 std::function<void(int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> create;
1798 std::function<void(
buffer_t, int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> create_immed;
1801 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1804 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_buffer_params_v1_interface;
1805 static constexpr const unsigned int max_version = 4;
1815 static const std::string interface_name;
1817 operator zwp_linux_buffer_params_v1*()
const;
1853 std::function<void(
int, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> &
on_add();
1922 std::function<void(int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> &
on_create();
1956 std::function<void(
buffer_t, int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> &
on_create_immed();
1968 void created(
bool post =
true);
1984 void failed(
bool post =
true);
2029enum class zwp_linux_buffer_params_v1_error : uint32_t
2042 invalid_dimensions = 5,
2046 invalid_wl_buffer = 7
2052struct zwp_linux_buffer_params_v1_flags :
public wayland::detail::bitfield<3, 6>
2054 zwp_linux_buffer_params_v1_flags(
const wayland::detail::bitfield<3, 6> &b)
2055 : wayland::detail::bitfield<3, 6>(b) {}
2056 zwp_linux_buffer_params_v1_flags(
const uint32_t value)
2057 : wayland::detail::bitfield<3, 6>(value) {}
2059 static const wayland::detail::bitfield<3, 6> y_invert;
2061 static const wayland::detail::bitfield<3, 6> interlaced;
2063 static const wayland::detail::bitfield<3, 6> bottom_first;
2099 struct events_t :
public resource_t::events_base_t
2101 std::function<void()> destroy;
2104 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2107 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_dmabuf_feedback_v1_interface;
2108 static constexpr const unsigned int max_version = 4;
2118 static const std::string interface_name;
2120 operator zwp_linux_dmabuf_feedback_v1*()
const;
2139 void done(
bool post =
true);
2165 void format_table(
int fd, uint32_t size,
bool post =
true);
2199 void main_device(array_t
const& device,
bool post =
true);
2304 void tranche_flags(zwp_linux_dmabuf_feedback_v1_tranche_flags
const& flags,
bool post =
true);
2317struct zwp_linux_dmabuf_feedback_v1_tranche_flags :
public wayland::detail::bitfield<1, 7>
2319 zwp_linux_dmabuf_feedback_v1_tranche_flags(
const wayland::detail::bitfield<1, 7> &b)
2320 : wayland::detail::bitfield<1, 7>(b) {}
2321 zwp_linux_dmabuf_feedback_v1_tranche_flags(
const uint32_t value)
2322 : wayland::detail::bitfield<1, 7>(value) {}
2324 static const wayland::detail::bitfield<1, 7> scanout;
2351 struct events_t :
public resource_t::events_base_t
2353 std::function<void()> destroy;
2357 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2360 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_explicit_synchronization_v1_interface;
2361 static constexpr const unsigned int max_version = 2;
2371 static const std::string interface_name;
2373 operator zwp_linux_explicit_synchronization_v1*()
const;
2414enum class zwp_linux_explicit_synchronization_v1_error : uint32_t
2417 synchronization_exists = 0
2458 struct events_t :
public resource_t::events_base_t
2460 std::function<void()> destroy;
2461 std::function<void(
int)> set_acquire_fence;
2465 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2468 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_surface_synchronization_v1_interface;
2469 static constexpr const unsigned int max_version = 2;
2479 static const std::string interface_name;
2481 operator zwp_linux_surface_synchronization_v1*()
const;
2582enum class zwp_linux_surface_synchronization_v1_error : uint32_t
2587 duplicate_fence = 1,
2589 duplicate_release = 2,
2593 unsupported_buffer = 4,
2623 struct events_t :
public resource_t::events_base_t
2627 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2630 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_buffer_release_v1_interface;
2631 static constexpr const unsigned int max_version = 1;
2641 static const std::string interface_name;
2643 operator zwp_linux_buffer_release_v1*()
const;
2713 struct events_t :
public resource_t::events_base_t
2715 std::function<void()> destroy;
2720 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2723 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_constraints_v1_interface;
2724 static constexpr const unsigned int max_version = 1;
2734 static const std::string interface_name;
2736 operator zwp_pointer_constraints_v1*()
const;
2833enum class zwp_pointer_constraints_v1_error : uint32_t
2836 already_constrained = 1
2846enum class zwp_pointer_constraints_v1_lifetime : uint32_t
2883 struct events_t :
public resource_t::events_base_t
2885 std::function<void()> destroy;
2886 std::function<void(
double,
double)> set_cursor_position_hint;
2887 std::function<void(
region_t)> set_region;
2890 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2893 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_locked_pointer_v1_interface;
2894 static constexpr const unsigned int max_version = 1;
2904 static const std::string interface_name;
2906 operator zwp_locked_pointer_v1*()
const;
2954 void locked(
bool post =
true);
3004 struct events_t :
public resource_t::events_base_t
3006 std::function<void()> destroy;
3007 std::function<void(
region_t)> set_region;
3010 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3013 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_confined_pointer_v1_interface;
3014 static constexpr const unsigned int max_version = 1;
3024 static const std::string interface_name;
3026 operator zwp_confined_pointer_v1*()
const;
3115 struct events_t :
public resource_t::events_base_t
3119 std::function<void()> release;
3123 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3126 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gestures_v1_interface;
3127 static constexpr const unsigned int max_version = 3;
3137 static const std::string interface_name;
3139 operator zwp_pointer_gestures_v1*()
const;
3206 struct events_t :
public resource_t::events_base_t
3208 std::function<void()> destroy;
3211 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3214 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gesture_swipe_v1_interface;
3215 static constexpr const unsigned int max_version = 2;
3225 static const std::string interface_name;
3227 operator zwp_pointer_gesture_swipe_v1*()
const;
3244 void begin(uint32_t serial, uint32_t time,
surface_t const& surface, uint32_t fingers,
bool post =
true);
3262 void update(uint32_t time,
double dx,
double dy,
bool post =
true);
3282 void end(uint32_t serial, uint32_t time, int32_t cancelled,
bool post =
true);
3315 struct events_t :
public resource_t::events_base_t
3317 std::function<void()> destroy;
3320 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3323 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gesture_pinch_v1_interface;
3324 static constexpr const unsigned int max_version = 2;
3334 static const std::string interface_name;
3336 operator zwp_pointer_gesture_pinch_v1*()
const;
3353 void begin(uint32_t serial, uint32_t time,
surface_t const& surface, uint32_t fingers,
bool post =
true);
3380 void update(uint32_t time,
double dx,
double dy,
double scale,
double rotation,
bool post =
true);
3400 void end(uint32_t serial, uint32_t time, int32_t cancelled,
bool post =
true);
3435 struct events_t :
public resource_t::events_base_t
3437 std::function<void()> destroy;
3440 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3443 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gesture_hold_v1_interface;
3444 static constexpr const unsigned int max_version = 3;
3454 static const std::string interface_name;
3456 operator zwp_pointer_gesture_hold_v1*()
const;
3472 void begin(uint32_t serial, uint32_t time,
surface_t const& surface, uint32_t fingers,
bool post =
true);
3499 void end(uint32_t serial, uint32_t time, int32_t cancelled,
bool post =
true);
3526 struct events_t :
public resource_t::events_base_t
3529 std::function<void(zwp_primary_selection_device_v1_t,
seat_t)> get_device;
3530 std::function<void()> destroy;
3533 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3536 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_device_manager_v1_interface;
3537 static constexpr const unsigned int max_version = 1;
3547 static const std::string interface_name;
3549 operator zwp_primary_selection_device_manager_v1*()
const;
3583class zwp_primary_selection_device_v1_t :
public resource_t
3586 struct events_t :
public resource_t::events_base_t
3589 std::function<void()> destroy;
3592 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3595 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_device_v1_interface;
3596 static constexpr const unsigned int max_version = 1;
3598 friend class global_t<zwp_primary_selection_device_v1_t>;
3599 friend class global_base_t;
3602 zwp_primary_selection_device_v1_t() =
default;
3603 zwp_primary_selection_device_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
3604 zwp_primary_selection_device_v1_t(
const resource_t &resource);
3606 static const std::string interface_name;
3608 operator zwp_primary_selection_device_v1*()
const;
3627 std::function<void()> &on_destroy();
3638 void data_offer(
bool post =
true);
3642 static constexpr std::uint32_t data_offer_since_version = 1;
3662 static constexpr std::uint32_t selection_since_version = 1;
3666using global_zwp_primary_selection_device_v1_t = global_t<zwp_primary_selection_device_v1_t>;
3681 struct events_t :
public resource_t::events_base_t
3683 std::function<void(std::string,
int)> receive;
3684 std::function<void()> destroy;
3687 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3690 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_offer_v1_interface;
3691 static constexpr const unsigned int max_version = 1;
3701 static const std::string interface_name;
3703 operator zwp_primary_selection_offer_v1*()
const;
3720 std::function<void(std::string,
int)> &
on_receive();
3738 void offer(std::string
const& mime_type,
bool post =
true);
3759 struct events_t :
public resource_t::events_base_t
3761 std::function<void(std::string)> offer;
3762 std::function<void()> destroy;
3765 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3768 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_source_v1_interface;
3769 static constexpr const unsigned int max_version = 1;
3779 static const std::string interface_name;
3781 operator zwp_primary_selection_source_v1*()
const;
3790 std::function<void(std::string)> &
on_offer();
3808 void send(std::string
const& mime_type,
int fd,
bool post =
true);
3840 struct events_t :
public resource_t::events_base_t
3842 std::function<void()> destroy;
3846 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3849 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_relative_pointer_manager_v1_interface;
3850 static constexpr const unsigned int max_version = 1;
3860 static const std::string interface_name;
3862 operator zwp_relative_pointer_manager_v1*()
const;
3898 struct events_t :
public resource_t::events_base_t
3900 std::function<void()> destroy;
3903 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3906 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_relative_pointer_v1_interface;
3907 static constexpr const unsigned int max_version = 1;
3917 static const std::string interface_name;
3919 operator zwp_relative_pointer_v1*()
const;
3966 void relative_motion(uint32_t utime_hi, uint32_t utime_lo,
double dx,
double dy,
double dx_unaccel,
double dy_unaccel,
bool post =
true);
3987 struct events_t :
public resource_t::events_base_t
3990 std::function<void()> destroy;
3993 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3996 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_manager_v1_interface;
3997 static constexpr const unsigned int max_version = 1;
4007 static const std::string interface_name;
4009 operator zwp_tablet_manager_v1*()
const;
4044 struct events_t :
public resource_t::events_base_t
4046 std::function<void()> destroy;
4049 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4052 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_seat_v1_interface;
4053 static constexpr const unsigned int max_version = 1;
4063 static const std::string interface_name;
4065 operator zwp_tablet_seat_v1*()
const;
4137 struct events_t :
public resource_t::events_base_t
4139 std::function<void(uint32_t,
surface_t, int32_t, int32_t)> set_cursor;
4140 std::function<void()> destroy;
4143 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4146 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_tool_v1_interface;
4147 static constexpr const unsigned int max_version = 1;
4157 static const std::string interface_name;
4159 operator zwp_tablet_tool_v1*()
const;
4220 void type(zwp_tablet_tool_v1_type
const& tool_type,
bool post =
true);
4247 void hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo,
bool post =
true);
4269 void hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo,
bool post =
true);
4300 void done(
bool post =
true);
4324 void removed(
bool post =
true);
4391 void down(uint32_t serial,
bool post =
true);
4417 void up(
bool post =
true);
4430 void motion(
double x,
double y,
bool post =
true);
4446 void pressure(uint32_t pressure,
bool post =
true);
4462 void distance(uint32_t distance,
bool post =
true);
4478 void tilt(int32_t tilt_x, int32_t tilt_y,
bool post =
true);
4492 void rotation(int32_t degrees,
bool post =
true);
4508 void slider(int32_t position,
bool post =
true);
4532 void wheel(int32_t degrees, int32_t clicks,
bool post =
true);
4551 void button(uint32_t serial, uint32_t
button, zwp_tablet_tool_v1_button_state
const& state,
bool post =
true);
4566 void frame(uint32_t time,
bool post =
true);
4593enum class zwp_tablet_tool_v1_type : uint32_t
4621enum class zwp_tablet_tool_v1_capability : uint32_t
4642enum class zwp_tablet_tool_v1_button_state : uint32_t
4653enum class zwp_tablet_tool_v1_error : uint32_t
4675 struct events_t :
public resource_t::events_base_t
4677 std::function<void()> destroy;
4680 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4683 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_v1_interface;
4684 static constexpr const unsigned int max_version = 1;
4691 zwp_tablet_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
4694 static const std::string interface_name;
4696 operator zwp_tablet_v1*()
const;
4712 void name(std::string
const&
name,
bool post =
true);
4726 void id(uint32_t vid, uint32_t pid,
bool post =
true);
4751 void path(std::string
const&
path,
bool post =
true);
4765 void done(
bool post =
true);
4780 void removed(
bool post =
true);
4801 struct events_t :
public resource_t::events_base_t
4804 std::function<void()> destroy;
4807 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4810 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_manager_v2_interface;
4811 static constexpr const unsigned int max_version = 1;
4821 static const std::string interface_name;
4823 operator zwp_tablet_manager_v2*()
const;
4858 struct events_t :
public resource_t::events_base_t
4860 std::function<void()> destroy;
4863 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4866 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_seat_v2_interface;
4867 static constexpr const unsigned int max_version = 1;
4877 static const std::string interface_name;
4879 operator zwp_tablet_seat_v2*()
const;
4972 struct events_t :
public resource_t::events_base_t
4974 std::function<void(uint32_t,
surface_t, int32_t, int32_t)> set_cursor;
4975 std::function<void()> destroy;
4978 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4981 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_tool_v2_interface;
4982 static constexpr const unsigned int max_version = 1;
4992 static const std::string interface_name;
4994 operator zwp_tablet_tool_v2*()
const;
5053 void type(zwp_tablet_tool_v2_type
const& tool_type,
bool post =
true);
5080 void hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo,
bool post =
true);
5102 void hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo,
bool post =
true);
5133 void done(
bool post =
true);
5157 void removed(
bool post =
true);
5224 void down(uint32_t serial,
bool post =
true);
5250 void up(
bool post =
true);
5263 void motion(
double x,
double y,
bool post =
true);
5279 void pressure(uint32_t pressure,
bool post =
true);
5295 void distance(uint32_t distance,
bool post =
true);
5311 void tilt(
double tilt_x,
double tilt_y,
bool post =
true);
5325 void rotation(
double degrees,
bool post =
true);
5341 void slider(int32_t position,
bool post =
true);
5365 void wheel(
double degrees, int32_t clicks,
bool post =
true);
5384 void button(uint32_t serial, uint32_t
button, zwp_tablet_tool_v2_button_state
const& state,
bool post =
true);
5399 void frame(uint32_t time,
bool post =
true);
5426enum class zwp_tablet_tool_v2_type : uint32_t
5454enum class zwp_tablet_tool_v2_capability : uint32_t
5475enum class zwp_tablet_tool_v2_button_state : uint32_t
5486enum class zwp_tablet_tool_v2_error : uint32_t
5508 struct events_t :
public resource_t::events_base_t
5510 std::function<void()> destroy;
5513 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
5516 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_v2_interface;
5517 static constexpr const unsigned int max_version = 1;
5524 zwp_tablet_v2_t(
const client_t& client, uint32_t
id,
int version = 1);
5527 static const std::string interface_name;
5529 operator zwp_tablet_v2*()
const;
5545 void name(std::string
const&
name,
bool post =
true);
5559 void id(uint32_t vid, uint32_t pid,
bool post =
true);
5584 void path(std::string
const&
path,
bool post =
true);
5598 void done(
bool post =
true);
5613 void removed(
bool post =
true);
5636 struct events_t :
public resource_t::events_base_t
5638 std::function<void(std::string, uint32_t)> set_feedback;
5639 std::function<void()> destroy;
5642 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
5645 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_ring_v2_interface;
5646 static constexpr const unsigned int max_version = 1;
5656 static const std::string interface_name;
5658 operator zwp_tablet_pad_ring_v2*()
const;
5711 void source(zwp_tablet_pad_ring_v2_source
const&
source,
bool post =
true);
5726 void angle(
double degrees,
bool post =
true);
5746 void stop(
bool post =
true);
5770 void frame(uint32_t time,
bool post =
true);
5788enum class zwp_tablet_pad_ring_v2_source : uint32_t
5807 struct events_t :
public resource_t::events_base_t
5809 std::function<void(std::string, uint32_t)> set_feedback;
5810 std::function<void()> destroy;
5813 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
5816 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_strip_v2_interface;
5817 static constexpr const unsigned int max_version = 1;
5827 static const std::string interface_name;
5829 operator zwp_tablet_pad_strip_v2*()
const;
5882 void source(zwp_tablet_pad_strip_v2_source
const&
source,
bool post =
true);
5918 void stop(
bool post =
true);
5943 void frame(uint32_t time,
bool post =
true);
5961enum class zwp_tablet_pad_strip_v2_source : uint32_t
5996 struct events_t :
public resource_t::events_base_t
5998 std::function<void()> destroy;
6001 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6004 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_group_v2_interface;
6005 static constexpr const unsigned int max_version = 1;
6015 static const std::string interface_name;
6017 operator zwp_tablet_pad_group_v2*()
const;
6059 void ring(
bool post =
true);
6074 void strip(
bool post =
true);
6097 void modes(uint32_t
modes,
bool post =
true);
6111 void done(
bool post =
true);
6151 void mode_switch(uint32_t time, uint32_t serial, uint32_t mode,
bool post =
true);
6191 struct events_t :
public resource_t::events_base_t
6193 std::function<void(uint32_t, std::string, uint32_t)> set_feedback;
6194 std::function<void()> destroy;
6197 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6200 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_v2_interface;
6201 static constexpr const unsigned int max_version = 1;
6211 static const std::string interface_name;
6213 operator zwp_tablet_pad_v2*()
const;
6246 std::function<void(uint32_t, std::string, uint32_t)> &
on_set_feedback();
6265 void group(
bool post =
true);
6286 void path(std::string
const&
path,
bool post =
true);
6316 void done(
bool post =
true);
6330 void button(uint32_t time, uint32_t
button, zwp_tablet_pad_v2_button_state
const& state,
bool post =
true);
6358 void leave(uint32_t serial,
surface_t const& surface,
bool post =
true);
6374 void removed(
bool post =
true);
6390enum class zwp_tablet_pad_v2_button_state : uint32_t
6435 struct events_t :
public resource_t::events_base_t
6438 std::function<void(
seat_t)> deactivate;
6439 std::function<void()> show_input_panel;
6440 std::function<void()> hide_input_panel;
6441 std::function<void()> reset;
6442 std::function<void(std::string, uint32_t, uint32_t)> set_surrounding_text;
6444 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_cursor_rectangle;
6445 std::function<void(std::string)> set_preferred_language;
6446 std::function<void(uint32_t)> commit_state;
6447 std::function<void(uint32_t, uint32_t)> invoke_action;
6450 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6453 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_v1_interface;
6454 static constexpr const unsigned int max_version = 1;
6464 static const std::string interface_name;
6466 operator zwp_text_input_v1*()
const;
6601 void leave(
bool post =
true);
6649 void preedit_string(uint32_t serial, std::string
const& text, std::string
const& commit,
bool post =
true);
6669 void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style
const& style,
bool post =
true);
6704 void commit_string(uint32_t serial, std::string
const& text,
bool post =
true);
6720 void cursor_position(int32_t index, int32_t anchor,
bool post =
true);
6761 void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state
const& state, uint32_t modifiers,
bool post =
true);
6775 void language(uint32_t serial, std::string
const&
language,
bool post =
true);
6792 void text_direction(uint32_t serial, zwp_text_input_v1_text_direction
const& direction,
bool post =
true);
6811 : wayland::detail::bitfield<10, 23>(b) {}
6813 : wayland::detail::bitfield<10, 23>(value) {}
6815 static const wayland::detail::bitfield<10, 23>
none;
6817 static const wayland::detail::bitfield<10, 23>
_default;
6819 static const wayland::detail::bitfield<10, 23>
password;
6837 static const wayland::detail::bitfield<10, 23>
latin;
6851enum class zwp_text_input_v1_content_purpose : uint32_t
6884enum class zwp_text_input_v1_preedit_style : uint32_t
6901enum class zwp_text_input_v1_text_direction : uint32_t
6920 struct events_t :
public resource_t::events_base_t
6925 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6928 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_manager_v1_interface;
6929 static constexpr const unsigned int max_version = 1;
6939 static const std::string interface_name;
6941 operator zwp_text_input_manager_v1*()
const;
6989 struct events_t :
public resource_t::events_base_t
6991 std::function<void()> destroy;
6992 std::function<void()> enable;
6993 std::function<void()> disable;
6994 std::function<void(std::string, int32_t, int32_t)> set_surrounding_text;
6995 std::function<void(zwp_text_input_v3_change_cause)> set_text_change_cause;
6997 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_cursor_rectangle;
6998 std::function<void()> commit;
7001 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7004 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_v3_interface;
7005 static constexpr const unsigned int max_version = 1;
7015 static const std::string interface_name;
7017 operator zwp_text_input_v3*()
const;
7275 void preedit_string(std::string
const& text, int32_t cursor_begin, int32_t cursor_end,
bool post =
true);
7294 void commit_string(std::string
const& text,
bool post =
true);
7353 void done(uint32_t serial,
bool post =
true);
7368enum class zwp_text_input_v3_change_cause : uint32_t
7385 : wayland::detail::bitfield<10, 28>(b) {}
7387 : wayland::detail::bitfield<10, 28>(value) {}
7389 static const wayland::detail::bitfield<10, 28>
none;
7407 static const wayland::detail::bitfield<10, 28>
latin;
7421enum class zwp_text_input_v3_content_purpose : uint32_t
7462 struct events_t :
public resource_t::events_base_t
7464 std::function<void()> destroy;
7468 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7471 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_manager_v3_interface;
7472 static constexpr const unsigned int max_version = 1;
7482 static const std::string interface_name;
7484 operator zwp_text_input_manager_v3*()
const;
7517 struct events_t :
public resource_t::events_base_t
7519 std::function<void()> destroy;
7521 std::function<void(std::string,
surface_t)> activate;
7524 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7527 static constexpr const wl_interface *
interface = &wayland::server::detail::xdg_activation_v1_interface;
7528 static constexpr const unsigned int max_version = 1;
7538 static const std::string interface_name;
7540 operator xdg_activation_v1*()
const;
7601 struct events_t :
public resource_t::events_base_t
7603 std::function<void(uint32_t,
seat_t)> set_serial;
7604 std::function<void(std::string)> set_app_id;
7605 std::function<void(
surface_t)> set_surface;
7606 std::function<void()> commit;
7607 std::function<void()> destroy;
7610 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7613 static constexpr const wl_interface *
interface = &wayland::server::detail::xdg_activation_token_v1_interface;
7614 static constexpr const unsigned int max_version = 1;
7624 static const std::string interface_name;
7626 operator xdg_activation_token_v1*()
const;
7696 void done(std::string
const& token,
bool post =
true);
7713enum class xdg_activation_token_v1_error : uint32_t
7749 struct events_t :
public resource_t::events_base_t
7751 std::function<void()> destroy;
7755 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7758 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_decoration_manager_v1_interface;
7759 static constexpr const unsigned int max_version = 1;
7769 static const std::string interface_name;
7771 operator zxdg_decoration_manager_v1*()
const;
7814 struct events_t :
public resource_t::events_base_t
7816 std::function<void()> destroy;
7817 std::function<void(zxdg_toplevel_decoration_v1_mode)> set_mode;
7818 std::function<void()> unset_mode;
7821 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7824 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_toplevel_decoration_v1_interface;
7825 static constexpr const unsigned int max_version = 1;
7835 static const std::string interface_name;
7837 operator zxdg_toplevel_decoration_v1*()
const;
7870 std::function<void(zxdg_toplevel_decoration_v1_mode)> &
on_set_mode();
7894 void configure(zxdg_toplevel_decoration_v1_mode
const& mode,
bool post =
true);
7919enum class zxdg_toplevel_decoration_v1_error : uint32_t
7922 unconfigured_buffer = 0,
7924 already_constructed = 1,
7934enum class zxdg_toplevel_decoration_v1_mode : uint32_t
7952 struct events_t :
public resource_t::events_base_t
7954 std::function<void()> destroy;
7958 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7961 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exporter_v1_interface;
7962 static constexpr const unsigned int max_version = 1;
7972 static const std::string interface_name;
7974 operator zxdg_exporter_v1*()
const;
8015 struct events_t :
public resource_t::events_base_t
8017 std::function<void()> destroy;
8021 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8024 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_importer_v1_interface;
8025 static constexpr const unsigned int max_version = 1;
8035 static const std::string interface_name;
8037 operator zxdg_importer_v1*()
const;
8076 struct events_t :
public resource_t::events_base_t
8078 std::function<void()> destroy;
8081 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8084 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exported_v1_interface;
8085 static constexpr const unsigned int max_version = 1;
8095 static const std::string interface_name;
8097 operator zxdg_exported_v1*()
const;
8117 void handle(std::string
const&
handle,
bool post =
true);
8138 struct events_t :
public resource_t::events_base_t
8140 std::function<void()> destroy;
8141 std::function<void(
surface_t)> set_parent_of;
8144 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8147 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_imported_v1_interface;
8148 static constexpr const unsigned int max_version = 1;
8158 static const std::string interface_name;
8160 operator zxdg_imported_v1*()
const;
8210 struct events_t :
public resource_t::events_base_t
8212 std::function<void()> destroy;
8216 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8219 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exporter_v2_interface;
8220 static constexpr const unsigned int max_version = 1;
8230 static const std::string interface_name;
8232 operator zxdg_exporter_v2*()
const;
8273enum class zxdg_exporter_v2_error : uint32_t
8290 struct events_t :
public resource_t::events_base_t
8292 std::function<void()> destroy;
8296 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8299 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_importer_v2_interface;
8300 static constexpr const unsigned int max_version = 1;
8310 static const std::string interface_name;
8312 operator zxdg_importer_v2*()
const;
8351 struct events_t :
public resource_t::events_base_t
8353 std::function<void()> destroy;
8356 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8359 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exported_v2_interface;
8360 static constexpr const unsigned int max_version = 1;
8370 static const std::string interface_name;
8372 operator zxdg_exported_v2*()
const;
8392 void handle(std::string
const&
handle,
bool post =
true);
8413 struct events_t :
public resource_t::events_base_t
8415 std::function<void()> destroy;
8416 std::function<void(
surface_t)> set_parent_of;
8419 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8422 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_imported_v2_interface;
8423 static constexpr const unsigned int max_version = 1;
8433 static const std::string interface_name;
8435 operator zxdg_imported_v2*()
const;
8486enum class zxdg_imported_v2_error : uint32_t
8501 struct events_t :
public resource_t::events_base_t
8503 std::function<void()> destroy;
8507 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8510 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_output_manager_v1_interface;
8511 static constexpr const unsigned int max_version = 3;
8521 static const std::string interface_name;
8523 operator zxdg_output_manager_v1*()
const;
8565 struct events_t :
public resource_t::events_base_t
8567 std::function<void()> destroy;
8570 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8573 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_output_v1_interface;
8574 static constexpr const unsigned int max_version = 3;
8584 static const std::string interface_name;
8586 operator zxdg_output_v1*()
const;
8654 void logical_size(int32_t width, int32_t height,
bool post =
true);
8673 void done(
bool post =
true);
8702 void name(std::string
const& name,
bool post =
true);
8760 struct events_t :
public resource_t::events_base_t
8762 std::function<void()> destroy;
8765 std::function<void(uint32_t)> pong;
8768 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8771 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_shell_v6_interface;
8772 static constexpr const unsigned int max_version = 1;
8779 zxdg_shell_v6_t(
const client_t& client, uint32_t
id,
int version = 1);
8782 static const std::string interface_name;
8784 operator zxdg_shell_v6*()
const;
8833 std::function<void(uint32_t)> &
on_pong();
8851 void ping(uint32_t serial,
bool post =
true);
8888enum class zxdg_shell_v6_error : uint32_t
8893 defunct_surfaces = 1,
8895 not_the_topmost_popup = 2,
8897 invalid_popup_parent = 3,
8899 invalid_surface_state = 4,
8901 invalid_positioner = 5
8931 struct events_t :
public resource_t::events_base_t
8933 std::function<void()> destroy;
8934 std::function<void(int32_t, int32_t)> set_size;
8935 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_anchor_rect;
8936 std::function<void(zxdg_positioner_v6_anchor)> set_anchor;
8937 std::function<void(zxdg_positioner_v6_gravity)> set_gravity;
8939 std::function<void(int32_t, int32_t)> set_offset;
8942 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8945 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_positioner_v6_interface;
8946 static constexpr const unsigned int max_version = 1;
8956 static const std::string interface_name;
8958 operator zxdg_positioner_v6*()
const;
8978 std::function<void(int32_t, int32_t)> &
on_set_size();
9015 std::function<void(zxdg_positioner_v6_anchor)> &
on_set_anchor();
9031 std::function<void(zxdg_positioner_v6_gravity)> &
on_set_gravity();
9083enum class zxdg_positioner_v6_error : uint32_t
9092struct zxdg_positioner_v6_anchor :
public wayland::detail::bitfield<4, 37>
9094 zxdg_positioner_v6_anchor(
const wayland::detail::bitfield<4, 37> &b)
9095 : wayland::detail::bitfield<4, 37>(b) {}
9096 zxdg_positioner_v6_anchor(
const uint32_t value)
9097 : wayland::detail::bitfield<4, 37>(value) {}
9099 static const wayland::detail::bitfield<4, 37> none;
9101 static const wayland::detail::bitfield<4, 37> top;
9103 static const wayland::detail::bitfield<4, 37> bottom;
9105 static const wayland::detail::bitfield<4, 37> left;
9107 static const wayland::detail::bitfield<4, 37> right;
9113struct zxdg_positioner_v6_gravity :
public wayland::detail::bitfield<4, 38>
9115 zxdg_positioner_v6_gravity(
const wayland::detail::bitfield<4, 38> &b)
9116 : wayland::detail::bitfield<4, 38>(b) {}
9117 zxdg_positioner_v6_gravity(
const uint32_t value)
9118 : wayland::detail::bitfield<4, 38>(value) {}
9120 static const wayland::detail::bitfield<4, 38> none;
9122 static const wayland::detail::bitfield<4, 38> top;
9124 static const wayland::detail::bitfield<4, 38> bottom;
9126 static const wayland::detail::bitfield<4, 38> left;
9128 static const wayland::detail::bitfield<4, 38> right;
9149 : wayland::detail::bitfield<6, 39>(b) {}
9151 : wayland::detail::bitfield<6, 39>(value) {}
9152 static const wayland::detail::bitfield<6, 39> none;
9153 static const wayland::detail::bitfield<6, 39> slide_x;
9154 static const wayland::detail::bitfield<6, 39> slide_y;
9155 static const wayland::detail::bitfield<6, 39> flip_x;
9156 static const wayland::detail::bitfield<6, 39> flip_y;
9157 static const wayland::detail::bitfield<6, 39> resize_x;
9158 static const wayland::detail::bitfield<6, 39> resize_y;
9199 struct events_t :
public resource_t::events_base_t
9201 std::function<void()> destroy;
9204 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_window_geometry;
9205 std::function<void(uint32_t)> ack_configure;
9208 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
9211 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_surface_v6_interface;
9212 static constexpr const unsigned int max_version = 1;
9222 static const std::string interface_name;
9224 operator zxdg_surface_v6*()
const;
9341 void configure(uint32_t serial,
bool post =
true);
9366enum class zxdg_surface_v6_error : uint32_t
9368 not_constructed = 1,
9369 already_constructed = 2,
9370 unconfigured_buffer = 3
9386 struct events_t :
public resource_t::events_base_t
9388 std::function<void()> destroy;
9390 std::function<void(std::string)> set_title;
9391 std::function<void(std::string)> set_app_id;
9392 std::function<void(
seat_t, uint32_t, int32_t, int32_t)> show_window_menu;
9393 std::function<void(
seat_t, uint32_t)> move;
9395 std::function<void(int32_t, int32_t)> set_max_size;
9396 std::function<void(int32_t, int32_t)> set_min_size;
9397 std::function<void()> set_maximized;
9398 std::function<void()> unset_maximized;
9399 std::function<void(
output_t)> set_fullscreen;
9400 std::function<void()> unset_fullscreen;
9401 std::function<void()> set_minimized;
9404 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
9407 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_toplevel_v6_interface;
9408 static constexpr const unsigned int max_version = 1;
9418 static const std::string interface_name;
9420 operator zxdg_toplevel_v6*()
const;
9718 std::function<void()> &on_unset_fullscreen();
9760 void configure(int32_t width, int32_t height, array_t
const& states,
bool post =
true);
9778 void close(
bool post =
true);
9797 : wayland::detail::bitfield<4, 41>(b) {}
9799 : wayland::detail::bitfield<4, 41>(value) {}
9800 static const wayland::detail::bitfield<4, 41> none;
9801 static const wayland::detail::bitfield<4, 41> top;
9802 static const wayland::detail::bitfield<4, 41> bottom;
9803 static const wayland::detail::bitfield<4, 41> left;
9804 static const wayland::detail::bitfield<4, 41> top_left;
9805 static const wayland::detail::bitfield<4, 41> bottom_left;
9806 static const wayland::detail::bitfield<4, 41> right;
9807 static const wayland::detail::bitfield<4, 41> top_right;
9808 static const wayland::detail::bitfield<4, 41> bottom_right;
9822enum class zxdg_toplevel_v6_state : uint32_t
9875 struct events_t :
public resource_t::events_base_t
9877 std::function<void()> destroy;
9878 std::function<void(
seat_t, uint32_t)> grab;
9881 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
9884 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_popup_v6_interface;
9885 static constexpr const unsigned int max_version = 1;
9892 zxdg_popup_v6_t(
const client_t& client, uint32_t
id,
int version = 1);
9895 static const std::string interface_name;
9897 operator zxdg_popup_v6*()
const;
9974 void configure(int32_t x, int32_t y, int32_t width, int32_t height,
bool post =
true);
10004enum class zxdg_popup_v6_error : uint32_t
10019 struct events_t :
public resource_t::events_base_t
10021 std::function<void()> destroy;
10025 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
10028 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_xwayland_keyboard_grab_manager_v1_interface;
10029 static constexpr const unsigned int max_version = 1;
10039 static const std::string interface_name;
10041 operator zwp_xwayland_keyboard_grab_manager_v1*()
const;
10091 struct events_t :
public resource_t::events_base_t
10093 std::function<void()> destroy;
10096 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
10099 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_xwayland_keyboard_grab_v1_interface;
10100 static constexpr const unsigned int max_version = 1;
10110 static const std::string interface_name;
10112 operator zwp_xwayland_keyboard_grab_v1*()
const;
an exported activation handle
void post_already_used(std::string const &msg)
Post error: The token has already been used previously.
std::function< void()> & on_destroy()
destroy the xdg_activation_token_v1 object
std::function< void()> & on_commit()
issues the token request
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
void done(std::string const &token, bool post=true)
the exported activation token
std::function< void(surface_t)> & on_set_surface()
specifies the application being activated
std::function< void(std::string)> & on_set_app_id()
specifies the application being activated
std::function< void(uint32_t, seat_t)> & on_set_serial()
specifies the seat and serial of the activating event
interface for activating surfaces
std::function< void()> & on_destroy()
destroy the xdg_activation object
std::function< void(std::string, surface_t)> & on_activate()
notify new interaction being available
std::function< void(xdg_activation_token_v1_t)> & on_get_activation_token()
requests a token
static constexpr std::uint32_t unconfined_since_version
Minimum protocol version required for the unconfined function.
void unconfined(bool post=true)
pointer unconfined
std::function< void()> & on_destroy()
destroy the confined pointer object
std::function< void(region_t)> & on_set_region()
set a new confine region
static constexpr std::uint32_t confined_since_version
Minimum protocol version required for the confined function.
void confined(bool post=true)
pointer confined
displays a single surface per output
void post_role(std::string const &msg)
Post error: given wl_surface has another role.
static constexpr std::uint32_t capability_since_version
Minimum protocol version required for the capability function.
std::function< void(surface_t, zwp_fullscreen_shell_v1_present_method, output_t)> & on_present_surface()
present surface for display
void capability(zwp_fullscreen_shell_v1_capability const &capability, bool post=true)
advertises a capability of the compositor
void post_invalid_method(std::string const &msg)
Post error: present_method is not known.
std::function< void()> & on_release()
release the wl_fullscreen_shell interface
std::function< void(surface_t, output_t, int32_t, zwp_fullscreen_shell_mode_feedback_v1_t)> & on_present_surface_for_mode()
present surface for display at a particular mode
control behavior when display idles
std::function< void()> & on_destroy()
destroy the idle inhibitor object
std::function< void(zwp_idle_inhibitor_v1_t, surface_t)> & on_create_inhibitor()
create a new inhibitor object
context object for inhibiting idle behavior
std::function< void()> & on_destroy()
destroy the idle inhibitor object
static constexpr std::uint32_t commit_state_since_version
Minimum protocol version required for the commit_state function.
void invoke_action(uint32_t button, uint32_t index, bool post=true)
void surrounding_text(std::string const &text, uint32_t cursor, uint32_t anchor, bool post=true)
surrounding text event
static constexpr std::uint32_t content_type_since_version
Minimum protocol version required for the content_type function.
std::function< void(array_t)> & on_modifiers_map()
std::function< void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> & on_keysym()
keysym
static constexpr std::uint32_t preferred_language_since_version
Minimum protocol version required for the preferred_language function.
std::function< void(int32_t)> & on_preedit_cursor()
pre-edit cursor
static constexpr std::uint32_t surrounding_text_since_version
Minimum protocol version required for the surrounding_text function.
std::function< void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> & on_modifiers()
forward modifiers event
static constexpr std::uint32_t invoke_action_since_version
Minimum protocol version required for the invoke_action function.
std::function< void(int32_t, int32_t)> & on_cursor_position()
set cursor to a new position
void commit_state(uint32_t serial, bool post=true)
std::function< void(uint32_t, uint32_t)> & on_text_direction()
std::function< void(uint32_t, std::string)> & on_commit_string()
commit string
std::function< void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> & on_preedit_styling()
pre-edit styling
static constexpr std::uint32_t reset_since_version
Minimum protocol version required for the reset function.
std::function< void(uint32_t, std::string, std::string)> & on_preedit_string()
pre-edit string
std::function< void(uint32_t, uint32_t, uint32_t, keyboard_key_state)> & on_key()
forward key event
std::function< void(int32_t, uint32_t)> & on_delete_surrounding_text()
delete text
void preferred_language(std::string const &language, bool post=true)
std::function< void(uint32_t, std::string)> & on_language()
void content_type(zwp_text_input_v1_content_hint const &hint, zwp_text_input_v1_content_purpose const &purpose, bool post=true)
std::function< void(keyboard_t)> & on_grab_keyboard()
grab hardware keyboard
context object for keyboard grab_manager
std::function< void(zwp_keyboard_shortcuts_inhibitor_v1_t, surface_t, seat_t)> & on_inhibit_shortcuts()
create a new keyboard shortcuts inhibitor object
void post_already_inhibited(std::string const &msg)
Post error: the shortcuts are already inhibited for this surface.
std::function< void()> & on_destroy()
destroy the keyboard shortcuts inhibitor object
context object for keyboard shortcuts inhibitor
std::function< void()> & on_destroy()
destroy the keyboard shortcuts inhibitor object
void inactive(bool post=true)
shortcuts are restored
void active(bool post=true)
shortcuts are inhibited
static constexpr std::uint32_t active_since_version
Minimum protocol version required for the active function.
static constexpr std::uint32_t inactive_since_version
Minimum protocol version required for the inactive function.
parameters for creating a dmabuf-based wl_buffer
static constexpr std::uint32_t created_since_version
Minimum protocol version required for the created function.
void failed(bool post=true)
buffer creation failed
void post_incomplete(std::string const &msg)
Post error: missing or too many planes to create a buffer.
void post_already_used(std::string const &msg)
Post error: the dmabuf_batch object has already been used to create a wl_buffer.
void created(bool post=true)
buffer creation succeeded
void post_out_of_bounds(std::string const &msg)
Post error: offset + stride * height goes out of dmabuf bounds.
void post_invalid_format(std::string const &msg)
Post error: format not supported.
std::function< void(int, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> & on_add()
add a dmabuf to the temporary set
void post_invalid_wl_buffer(std::string const &msg)
Post error: invalid wl_buffer resulted from importing dmabufs via the create_immed request on given b...
std::function< void(int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> & on_create()
create a wl_buffer from the given dmabufs
void post_plane_idx(std::string const &msg)
Post error: plane index out of bounds.
void post_invalid_dimensions(std::string const &msg)
Post error: invalid width or height.
std::function< void()> & on_destroy()
delete this object, used or not
void post_plane_set(std::string const &msg)
Post error: the plane index was already set.
std::function< void(buffer_t, int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> & on_create_immed()
immediately create a wl_buffer from the given dmabufs
static constexpr std::uint32_t failed_since_version
Minimum protocol version required for the failed function.
buffer release explicit synchronization
static constexpr std::uint32_t immediate_release_since_version
Minimum protocol version required for the immediate_release function.
void immediate_release(bool post=true)
release buffer immediately
void fenced_release(int fence, bool post=true)
release buffer with fence
static constexpr std::uint32_t fenced_release_since_version
Minimum protocol version required for the fenced_release function.
static constexpr std::uint32_t tranche_done_since_version
Minimum protocol version required for the tranche_done function.
static constexpr std::uint32_t main_device_since_version
Minimum protocol version required for the main_device function.
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
static constexpr std::uint32_t tranche_flags_since_version
Minimum protocol version required for the tranche_flags function.
static constexpr std::uint32_t tranche_target_device_since_version
Minimum protocol version required for the tranche_target_device function.
void tranche_formats(array_t const &indices, bool post=true)
supported buffer format modifier
void tranche_target_device(array_t const &device, bool post=true)
target device
static constexpr std::uint32_t tranche_formats_since_version
Minimum protocol version required for the tranche_formats function.
void tranche_flags(zwp_linux_dmabuf_feedback_v1_tranche_flags const &flags, bool post=true)
tranche flags
void main_device(array_t const &device, bool post=true)
preferred main device
static constexpr std::uint32_t format_table_since_version
Minimum protocol version required for the format_table function.
std::function< void()> & on_destroy()
destroy the feedback object
void format_table(int fd, uint32_t size, bool post=true)
format and modifier table
void done(bool post=true)
all feedback has been sent
void tranche_done(bool post=true)
a preference tranche has been sent
factory for creating dmabuf-based wl_buffers
std::function< void(zwp_linux_dmabuf_feedback_v1_t, surface_t)> & on_get_surface_feedback()
get feedback for a surface
static constexpr std::uint32_t format_since_version
Minimum protocol version required for the format function.
std::function< void()> & on_destroy()
unbind the factory
bool can_modifier() const
Check whether the modifier function is available with the currently bound version of the protocol.
static constexpr std::uint32_t modifier_since_version
Minimum protocol version required for the modifier function.
std::function< void(zwp_linux_dmabuf_feedback_v1_t)> & on_get_default_feedback()
get default feedback
std::function< void(zwp_linux_buffer_params_v1_t)> & on_create_params()
create a temporary object for buffer parameters
void modifier(uint32_t format, uint32_t modifier_hi, uint32_t modifier_lo, bool post=true)
supported buffer format modifier
void format(uint32_t format, bool post=true)
supported buffer format
protocol for providing explicit synchronization
std::function< void()> & on_destroy()
destroy explicit synchronization factory object
std::function< void(zwp_linux_surface_synchronization_v1_t, surface_t)> & on_get_synchronization()
extend surface interface for explicit synchronization
void post_synchronization_exists(std::string const &msg)
Post error: the surface already has a synchronization object associated.
per-surface explicit synchronization support
std::function< void(int)> & on_set_acquire_fence()
set the acquire fence
void post_duplicate_release(std::string const &msg)
Post error: multiple releases added for a single surface commit.
std::function< void()> & on_destroy()
destroy synchronization object
void post_unsupported_buffer(std::string const &msg)
Post error: the buffer does not support explicit synchronization.
void post_no_buffer(std::string const &msg)
Post error: no buffer was attached.
void post_duplicate_fence(std::string const &msg)
Post error: multiple fences added for a single surface commit.
void post_invalid_fence(std::string const &msg)
Post error: the fence specified by the client could not be imported.
std::function< void(zwp_linux_buffer_release_v1_t)> & on_get_release()
release fence for last-attached buffer
void post_no_surface(std::string const &msg)
Post error: the associated wl_surface was destroyed.
receive relative pointer motion events
std::function< void()> & on_destroy()
destroy the locked pointer object
std::function< void(double, double)> & on_set_cursor_position_hint()
set the pointer cursor position hint
static constexpr std::uint32_t locked_since_version
Minimum protocol version required for the locked function.
void unlocked(bool post=true)
lock deactivation event
void locked(bool post=true)
lock activation event
static constexpr std::uint32_t unlocked_since_version
Minimum protocol version required for the unlocked function.
std::function< void(region_t)> & on_set_region()
set a new lock region
constrain the movement of a pointer
std::function< void(zwp_confined_pointer_v1_t, surface_t, pointer_t, region_t, zwp_pointer_constraints_v1_lifetime)> & on_confine_pointer()
confine pointer to a region
std::function< void()> & on_destroy()
destroy the pointer constraints manager object
void post_already_constrained(std::string const &msg)
Post error: pointer constraint already requested on that surface.
std::function< void(zwp_locked_pointer_v1_t, surface_t, pointer_t, region_t, zwp_pointer_constraints_v1_lifetime)> & on_lock_pointer()
lock pointer to a position
bool can_end() const
Check whether the end function is available with the currently bound version of the protocol.
static constexpr std::uint32_t end_since_version
Minimum protocol version required for the end function.
void end(uint32_t serial, uint32_t time, int32_t cancelled, bool post=true)
multi-finger hold end
std::function< void()> & on_destroy()
destroy the hold gesture object
void begin(uint32_t serial, uint32_t time, surface_t const &surface, uint32_t fingers, bool post=true)
multi-finger hold begin
bool can_begin() const
Check whether the begin function is available with the currently bound version of the protocol.
static constexpr std::uint32_t begin_since_version
Minimum protocol version required for the begin function.
static constexpr std::uint32_t begin_since_version
Minimum protocol version required for the begin function.
std::function< void()> & on_destroy()
destroy the pinch gesture object
static constexpr std::uint32_t end_since_version
Minimum protocol version required for the end function.
void begin(uint32_t serial, uint32_t time, surface_t const &surface, uint32_t fingers, bool post=true)
multi-finger pinch begin
void end(uint32_t serial, uint32_t time, int32_t cancelled, bool post=true)
multi-finger pinch end
static constexpr std::uint32_t update_since_version
Minimum protocol version required for the update function.
void update(uint32_t time, double dx, double dy, double scale, double rotation, bool post=true)
multi-finger pinch motion
void end(uint32_t serial, uint32_t time, int32_t cancelled, bool post=true)
multi-finger swipe end
void update(uint32_t time, double dx, double dy, bool post=true)
multi-finger swipe motion
std::function< void()> & on_destroy()
destroy the pointer swipe gesture object
static constexpr std::uint32_t end_since_version
Minimum protocol version required for the end function.
void begin(uint32_t serial, uint32_t time, surface_t const &surface, uint32_t fingers, bool post=true)
multi-finger swipe begin
static constexpr std::uint32_t begin_since_version
Minimum protocol version required for the begin function.
static constexpr std::uint32_t update_since_version
Minimum protocol version required for the update function.
std::function< void(zwp_pointer_gesture_swipe_v1_t, pointer_t)> & on_get_swipe_gesture()
get swipe gesture
std::function< void(zwp_pointer_gesture_hold_v1_t, pointer_t)> & on_get_hold_gesture()
get hold gesture
std::function< void(zwp_pointer_gesture_pinch_v1_t, pointer_t)> & on_get_pinch_gesture()
get pinch gesture
std::function< void()> & on_release()
destroy the pointer gesture object
X primary selection emulation.
std::function< void(zwp_primary_selection_source_v1_t)> & on_create_source()
create a new primary selection source
std::function< void()> & on_destroy()
destroy the primary selection device manager
std::function< void(zwp_primary_selection_device_v1_t, seat_t)> & on_get_device()
create a new primary selection device
offer to transfer primary selection contents
void offer(std::string const &mime_type, bool post=true)
advertise offered mime type
static constexpr std::uint32_t offer_since_version
Minimum protocol version required for the offer function.
std::function< void(std::string, int)> & on_receive()
request that the data is transferred
std::function< void()> & on_destroy()
destroy the primary selection offer
offer to replace the contents of the primary selection
static constexpr std::uint32_t send_since_version
Minimum protocol version required for the send function.
static constexpr std::uint32_t cancelled_since_version
Minimum protocol version required for the cancelled function.
void send(std::string const &mime_type, int fd, bool post=true)
send the primary selection contents
std::function< void()> & on_destroy()
destroy the primary selection source
std::function< void(std::string)> & on_offer()
add an offered mime type
void cancelled(bool post=true)
request for primary selection contents was canceled
get relative pointer objects
std::function< void()> & on_destroy()
destroy the relative pointer manager object
std::function< void(zwp_relative_pointer_v1_t, pointer_t)> & on_get_relative_pointer()
get a relative pointer object
static constexpr std::uint32_t relative_motion_since_version
Minimum protocol version required for the relative_motion function.
std::function< void()> & on_destroy()
release the relative pointer object
void relative_motion(uint32_t utime_hi, uint32_t utime_lo, double dx, double dy, double dx_unaccel, double dy_unaccel, bool post=true)
relative pointer motion
controller object for graphic tablet devices
std::function< void()> & on_destroy()
release the memory for the tablet manager object
std::function< void(zwp_tablet_seat_v1_t, seat_t)> & on_get_tablet_seat()
get the tablet seat
controller object for graphic tablet devices
std::function< void()> & on_destroy()
release the memory for the tablet manager object
std::function< void(zwp_tablet_seat_v2_t, seat_t)> & on_get_tablet_seat()
get the tablet seat
a set of buttons, rings and strips
static constexpr std::uint32_t strip_since_version
Minimum protocol version required for the strip function.
static constexpr std::uint32_t modes_since_version
Minimum protocol version required for the modes function.
void done(bool post=true)
tablet group description events sequence complete
void buttons(array_t const &buttons, bool post=true)
buttons announced
std::function< void()> & on_destroy()
destroy the pad object
void mode_switch(uint32_t time, uint32_t serial, uint32_t mode, bool post=true)
mode switch event
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
void ring(bool post=true)
ring announced
static constexpr std::uint32_t buttons_since_version
Minimum protocol version required for the buttons function.
void strip(bool post=true)
strip announced
static constexpr std::uint32_t ring_since_version
Minimum protocol version required for the ring function.
void modes(uint32_t modes, bool post=true)
mode-switch ability announced
static constexpr std::uint32_t mode_switch_since_version
Minimum protocol version required for the mode_switch function.
static constexpr std::uint32_t angle_since_version
Minimum protocol version required for the angle function.
static constexpr std::uint32_t frame_since_version
Minimum protocol version required for the frame function.
static constexpr std::uint32_t source_since_version
Minimum protocol version required for the source function.
void angle(double degrees, bool post=true)
angle changed
std::function< void()> & on_destroy()
destroy the ring object
std::function< void(std::string, uint32_t)> & on_set_feedback()
set compositor feedback
void source(zwp_tablet_pad_ring_v2_source const &source, bool post=true)
ring event source
void stop(bool post=true)
interaction stopped
static constexpr std::uint32_t stop_since_version
Minimum protocol version required for the stop function.
void frame(uint32_t time, bool post=true)
end of a ring event sequence
void frame(uint32_t time, bool post=true)
end of a strip event sequence
void position(uint32_t position, bool post=true)
position changed
static constexpr std::uint32_t position_since_version
Minimum protocol version required for the position function.
std::function< void()> & on_destroy()
destroy the strip object
static constexpr std::uint32_t source_since_version
Minimum protocol version required for the source function.
std::function< void(std::string, uint32_t)> & on_set_feedback()
set compositor feedback
void source(zwp_tablet_pad_strip_v2_source const &source, bool post=true)
strip event source
static constexpr std::uint32_t frame_since_version
Minimum protocol version required for the frame function.
void stop(bool post=true)
interaction stopped
static constexpr std::uint32_t stop_since_version
Minimum protocol version required for the stop function.
a set of buttons, rings and strips
std::function< void(uint32_t, std::string, uint32_t)> & on_set_feedback()
set compositor feedback
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
void leave(uint32_t serial, surface_t const &surface, bool post=true)
enter event
void path(std::string const &path, bool post=true)
path to the device
std::function< void()> & on_destroy()
destroy the pad object
void button(uint32_t time, uint32_t button, zwp_tablet_pad_v2_button_state const &state, bool post=true)
physical button state
void removed(bool post=true)
pad removed event
static constexpr std::uint32_t buttons_since_version
Minimum protocol version required for the buttons function.
void done(bool post=true)
pad description event sequence complete
void group(bool post=true)
group announced
void buttons(uint32_t buttons, bool post=true)
buttons announced
static constexpr std::uint32_t leave_since_version
Minimum protocol version required for the leave function.
static constexpr std::uint32_t button_since_version
Minimum protocol version required for the button function.
static constexpr std::uint32_t group_since_version
Minimum protocol version required for the group function.
void enter(uint32_t serial, zwp_tablet_v2_t const &tablet, surface_t const &surface, bool post=true)
enter event
static constexpr std::uint32_t path_since_version
Minimum protocol version required for the path function.
static constexpr std::uint32_t removed_since_version
Minimum protocol version required for the removed function.
static constexpr std::uint32_t enter_since_version
Minimum protocol version required for the enter function.
controller object for graphic tablet devices of a seat
void tablet_added(bool post=true)
new device notification
void tool_added(bool post=true)
a new tool has been used with a tablet
static constexpr std::uint32_t tablet_added_since_version
Minimum protocol version required for the tablet_added function.
static constexpr std::uint32_t tool_added_since_version
Minimum protocol version required for the tool_added function.
std::function< void()> & on_destroy()
release the memory for the tablet seat object
controller object for graphic tablet devices of a seat
static constexpr std::uint32_t tablet_added_since_version
Minimum protocol version required for the tablet_added function.
std::function< void()> & on_destroy()
release the memory for the tablet seat object
static constexpr std::uint32_t tool_added_since_version
Minimum protocol version required for the tool_added function.
void tablet_added(bool post=true)
new device notification
void pad_added(bool post=true)
new pad notification
static constexpr std::uint32_t pad_added_since_version
Minimum protocol version required for the pad_added function.
void tool_added(bool post=true)
a new tool has been used with a tablet
void path(std::string const &path, bool post=true)
path to the device
static constexpr std::uint32_t id_since_version
Minimum protocol version required for the id function.
void name(std::string const &name, bool post=true)
tablet device name
void id(uint32_t vid, uint32_t pid, bool post=true)
tablet device USB vendor/product id
void removed(bool post=true)
tablet removed event
std::function< void()> & on_destroy()
destroy the tablet object
void done(bool post=true)
tablet description events sequence complete
static constexpr std::uint32_t path_since_version
Minimum protocol version required for the path function.
static constexpr std::uint32_t name_since_version
Minimum protocol version required for the name function.
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
static constexpr std::uint32_t removed_since_version
Minimum protocol version required for the removed function.
void removed(bool post=true)
tablet removed event
void id(uint32_t vid, uint32_t pid, bool post=true)
tablet device USB vendor/product id
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
void path(std::string const &path, bool post=true)
path to the device
static constexpr std::uint32_t path_since_version
Minimum protocol version required for the path function.
void done(bool post=true)
tablet description events sequence complete
void name(std::string const &name, bool post=true)
tablet device name
static constexpr std::uint32_t name_since_version
Minimum protocol version required for the name function.
static constexpr std::uint32_t removed_since_version
Minimum protocol version required for the removed function.
static constexpr std::uint32_t id_since_version
Minimum protocol version required for the id function.
std::function< void()> & on_destroy()
destroy the tablet object
std::function< void(zwp_text_input_v1_t)> & on_create_text_input()
create text input
std::function< void()> & on_destroy()
Destroy the wp_text_input_manager.
std::function< void(zwp_text_input_v3_t, seat_t)> & on_get_text_input()
create a new text input object
void input_panel_state(uint32_t state, bool post=true)
state of the input panel
std::function< void(int32_t, int32_t, int32_t, int32_t)> & on_set_cursor_rectangle()
void language(uint32_t serial, std::string const &language, bool post=true)
language
void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const &style, bool post=true)
pre-edit styling
void modifiers_map(array_t const &map, bool post=true)
modifiers map
std::function< void()> & on_hide_input_panel()
hide input panels
std::function< void(seat_t, surface_t)> & on_activate()
request activation
void leave(bool post=true)
leave event
static constexpr std::uint32_t leave_since_version
Minimum protocol version required for the leave function.
static constexpr std::uint32_t keysym_since_version
Minimum protocol version required for the keysym function.
static constexpr std::uint32_t modifiers_map_since_version
Minimum protocol version required for the modifiers_map function.
std::function< void(seat_t)> & on_deactivate()
request deactivation
std::function< void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> & on_set_content_type()
set content purpose and hint
std::function< void()> & on_reset()
reset
void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const &state, uint32_t modifiers, bool post=true)
keysym
void cursor_position(int32_t index, int32_t anchor, bool post=true)
set cursor to new position
std::function< void(uint32_t, uint32_t)> & on_invoke_action()
void text_direction(uint32_t serial, zwp_text_input_v1_text_direction const &direction, bool post=true)
text direction
static constexpr std::uint32_t language_since_version
Minimum protocol version required for the language function.
static constexpr std::uint32_t preedit_string_since_version
Minimum protocol version required for the preedit_string function.
std::function< void(uint32_t)> & on_commit_state()
static constexpr std::uint32_t preedit_cursor_since_version
Minimum protocol version required for the preedit_cursor function.
static constexpr std::uint32_t text_direction_since_version
Minimum protocol version required for the text_direction function.
static constexpr std::uint32_t delete_surrounding_text_since_version
Minimum protocol version required for the delete_surrounding_text function.
void preedit_string(uint32_t serial, std::string const &text, std::string const &commit, bool post=true)
pre-edit
void preedit_cursor(int32_t index, bool post=true)
pre-edit cursor
static constexpr std::uint32_t preedit_styling_since_version
Minimum protocol version required for the preedit_styling function.
void delete_surrounding_text(int32_t index, uint32_t length, bool post=true)
delete surrounding text
std::function< void(std::string)> & on_set_preferred_language()
sets preferred language
std::function< void()> & on_show_input_panel()
show input panels
static constexpr std::uint32_t enter_since_version
Minimum protocol version required for the enter function.
static constexpr std::uint32_t input_panel_state_since_version
Minimum protocol version required for the input_panel_state function.
static constexpr std::uint32_t cursor_position_since_version
Minimum protocol version required for the cursor_position function.
static constexpr std::uint32_t commit_string_since_version
Minimum protocol version required for the commit_string function.
std::function< void(std::string, uint32_t, uint32_t)> & on_set_surrounding_text()
sets the surrounding text
void commit_string(uint32_t serial, std::string const &text, bool post=true)
commit
void enter(surface_t const &surface, bool post=true)
enter event
void enter(surface_t const &surface, bool post=true)
enter event
std::function< void()> & on_destroy()
Destroy the wp_text_input.
std::function< void(zwp_text_input_v3_change_cause)> & on_set_text_change_cause()
indicates the cause of surrounding text change
static constexpr std::uint32_t delete_surrounding_text_since_version
Minimum protocol version required for the delete_surrounding_text function.
std::function< void()> & on_enable()
Request text input to be enabled.
std::function< void(std::string, int32_t, int32_t)> & on_set_surrounding_text()
sets the surrounding text
void preedit_string(std::string const &text, int32_t cursor_begin, int32_t cursor_end, bool post=true)
pre-edit
std::function< void()> & on_commit()
commit state
void commit_string(std::string const &text, bool post=true)
text commit
void done(uint32_t serial, bool post=true)
apply changes
static constexpr std::uint32_t preedit_string_since_version
Minimum protocol version required for the preedit_string function.
std::function< void(zwp_text_input_v3_content_hint, zwp_text_input_v3_content_purpose)> & on_set_content_type()
set content purpose and hint
static constexpr std::uint32_t enter_since_version
Minimum protocol version required for the enter function.
void delete_surrounding_text(uint32_t before_length, uint32_t after_length, bool post=true)
delete surrounding text
void leave(surface_t const &surface, bool post=true)
leave event
std::function< void()> & on_disable()
Disable text input on a surface.
std::function< void(int32_t, int32_t, int32_t, int32_t)> & on_set_cursor_rectangle()
set cursor position
static constexpr std::uint32_t commit_string_since_version
Minimum protocol version required for the commit_string function.
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
static constexpr std::uint32_t leave_since_version
Minimum protocol version required for the leave function.
context object for keyboard grab manager
std::function< void(zwp_xwayland_keyboard_grab_v1_t, surface_t, seat_t)> & on_grab_keyboard()
grab the keyboard to a surface
std::function< void()> & on_destroy()
destroy the keyboard grab manager
interface for grabbing the keyboard
std::function< void()> & on_destroy()
destroy the grabbed keyboard object
window decoration manager
std::function< void(zxdg_toplevel_decoration_v1_t, xdg_toplevel_t)> & on_get_toplevel_decoration()
create a new toplevel decoration object
std::function< void()> & on_destroy()
destroy the decoration manager object
an exported surface handle
void handle(std::string const &handle, bool post=true)
the exported surface handle
std::function< void()> & on_destroy()
unexport the exported surface
static constexpr std::uint32_t handle_since_version
Minimum protocol version required for the handle function.
an exported surface handle
std::function< void()> & on_destroy()
unexport the exported surface
static constexpr std::uint32_t handle_since_version
Minimum protocol version required for the handle function.
void handle(std::string const &handle, bool post=true)
the exported surface handle
interface for exporting surfaces
std::function< void(zxdg_exported_v1_t, surface_t)> & on_export()
export a surface
std::function< void()> & on_destroy()
destroy the xdg_exporter object
interface for exporting surfaces
std::function< void(zxdg_exported_v2_t, surface_t)> & on_export_toplevel()
export a toplevel surface
void post_invalid_surface(std::string const &msg)
Post error: surface is not an xdg_toplevel.
std::function< void()> & on_destroy()
destroy the xdg_exporter object
an imported surface handle
void destroyed(bool post=true)
the imported surface handle has been destroyed
std::function< void(surface_t)> & on_set_parent_of()
set as the parent of some surface
std::function< void()> & on_destroy()
destroy the xdg_imported object
static constexpr std::uint32_t destroyed_since_version
Minimum protocol version required for the destroyed function.
an imported surface handle
static constexpr std::uint32_t destroyed_since_version
Minimum protocol version required for the destroyed function.
void post_invalid_surface(std::string const &msg)
Post error: surface is not an xdg_toplevel.
void destroyed(bool post=true)
the imported surface handle has been destroyed
std::function< void()> & on_destroy()
destroy the xdg_imported object
std::function< void(surface_t)> & on_set_parent_of()
set as the parent of some surface
interface for importing surfaces
std::function< void(zxdg_imported_v1_t, std::string)> & on_import()
import a surface
std::function< void()> & on_destroy()
destroy the xdg_importer object
interface for importing surfaces
std::function< void()> & on_destroy()
destroy the xdg_importer object
std::function< void(zxdg_imported_v2_t, std::string)> & on_import_toplevel()
import a toplevel surface
manage xdg_output objects
std::function< void()> & on_destroy()
destroy the xdg_output_manager object
std::function< void(zxdg_output_v1_t, output_t)> & on_get_xdg_output()
create an xdg output from a wl_output
compositor logical output region
static constexpr std::uint32_t done_since_version
Minimum protocol version required for the done function.
bool can_name() const
Check whether the name function is available with the currently bound version of the protocol.
void logical_position(int32_t x, int32_t y, bool post=true)
position of the output within the global compositor space
void done(bool post=true)
all information about the output have been sent
bool can_description() const
Check whether the description function is available with the currently bound version of the protocol.
static constexpr std::uint32_t logical_position_since_version
Minimum protocol version required for the logical_position function.
static constexpr std::uint32_t name_since_version
Minimum protocol version required for the name function.
void logical_size(int32_t width, int32_t height, bool post=true)
size of the output in the global compositor space
std::function< void()> & on_destroy()
destroy the xdg_output object
static constexpr std::uint32_t description_since_version
Minimum protocol version required for the description function.
void name(std::string const &name, bool post=true)
name of this output
void description(std::string const &description, bool post=true)
human-readable description of this output
static constexpr std::uint32_t logical_size_since_version
Minimum protocol version required for the logical_size function.
short-lived, popup surfaces for menus
void post_invalid_grab(std::string const &msg)
Post error: tried to grab after being mapped.
void popup_done(bool post=true)
popup interaction is done
static constexpr std::uint32_t configure_since_version
Minimum protocol version required for the configure function.
static constexpr std::uint32_t popup_done_since_version
Minimum protocol version required for the popup_done function.
std::function< void(seat_t, uint32_t)> & on_grab()
make the popup take an explicit grab
std::function< void()> & on_destroy()
remove xdg_popup interface
void configure(int32_t x, int32_t y, int32_t width, int32_t height, bool post=true)
configure the popup surface
std::function< void(zxdg_positioner_v6_anchor)> & on_set_anchor()
set anchor rectangle anchor edges
std::function< void()> & on_destroy()
destroy the xdg_positioner object
std::function< void(int32_t, int32_t)> & on_set_offset()
set surface position offset
std::function< void(zxdg_positioner_v6_constraint_adjustment)> & on_set_constraint_adjustment()
set the adjustment to be done when constrained
std::function< void(zxdg_positioner_v6_gravity)> & on_set_gravity()
set child surface gravity
std::function< void(int32_t, int32_t)> & on_set_size()
set the size of the to-be positioned rectangle
void post_invalid_input(std::string const &msg)
Post error: invalid input provided.
std::function< void(int32_t, int32_t, int32_t, int32_t)> & on_set_anchor_rect()
set the anchor rectangle within the parent surface
create desktop-style surfaces
void post_invalid_surface_state(std::string const &msg)
Post error: the client provided an invalid surface state.
void post_invalid_positioner(std::string const &msg)
Post error: the client provided an invalid positioner.
static constexpr std::uint32_t ping_since_version
Minimum protocol version required for the ping function.
void ping(uint32_t serial, bool post=true)
check if the client is alive
void post_defunct_surfaces(std::string const &msg)
Post error: xdg_shell was destroyed before children.
std::function< void(zxdg_positioner_v6_t)> & on_create_positioner()
create a positioner object
std::function< void(uint32_t)> & on_pong()
respond to a ping event
void post_role(std::string const &msg)
Post error: given wl_surface has another role.
std::function< void(zxdg_surface_v6_t, surface_t)> & on_get_xdg_surface()
create a shell surface from a surface
void post_not_the_topmost_popup(std::string const &msg)
Post error: the client tried to map or destroy a non-topmost popup.
void post_invalid_popup_parent(std::string const &msg)
Post error: the client specified an invalid popup parent surface.
std::function< void()> & on_destroy()
destroy xdg_shell
desktop user interface surface base interface
static constexpr std::uint32_t configure_since_version
Minimum protocol version required for the configure function.
std::function< void(uint32_t)> & on_ack_configure()
ack a configure event
void configure(uint32_t serial, bool post=true)
suggest a surface change
std::function< void(zxdg_toplevel_v6_t)> & on_get_toplevel()
assign the xdg_toplevel surface role
std::function< void(zxdg_popup_v6_t, zxdg_surface_v6_t, zxdg_positioner_v6_t)> & on_get_popup()
assign the xdg_popup surface role
void post_not_constructed(std::string const &msg)
Post error:
void post_unconfigured_buffer(std::string const &msg)
Post error:
std::function< void(int32_t, int32_t, int32_t, int32_t)> & on_set_window_geometry()
set the new window geometry
std::function< void()> & on_destroy()
destroy the xdg_surface
void post_already_constructed(std::string const &msg)
Post error:
decoration object for a toplevel surface
void post_already_constructed(std::string const &msg)
Post error: xdg_toplevel already has a decoration object.
std::function< void()> & on_destroy()
destroy the decoration object
std::function< void()> & on_unset_mode()
unset the decoration mode
std::function< void(zxdg_toplevel_decoration_v1_mode)> & on_set_mode()
set the decoration mode
void configure(zxdg_toplevel_decoration_v1_mode const &mode, bool post=true)
suggest a surface change
void post_unconfigured_buffer(std::string const &msg)
Post error: xdg_toplevel has a buffer attached before configure.
void post_orphaned(std::string const &msg)
Post error: xdg_toplevel destroyed before the decoration object.
static constexpr std::uint32_t configure_since_version
Minimum protocol version required for the configure function.
static constexpr std::uint32_t close_since_version
Minimum protocol version required for the close function.
std::function< void(std::string)> & on_set_title()
set surface title
std::function< void(std::string)> & on_set_app_id()
set application ID
std::function< void(output_t)> & on_set_fullscreen()
set the window as fullscreen on a monitor
std::function< void(seat_t, uint32_t)> & on_move()
start an interactive move
std::function< void()> & on_unset_maximized()
unmaximize the window
void close(bool post=true)
surface wants to be closed
std::function< void()> & on_set_maximized()
maximize the window
std::function< void(zxdg_toplevel_v6_t)> & on_set_parent()
set the parent of this surface
std::function< void(seat_t, uint32_t, int32_t, int32_t)> & on_show_window_menu()
show the window menu
std::function< void(int32_t, int32_t)> & on_set_min_size()
set the minimum size
std::function< void()> & on_destroy()
destroy the xdg_toplevel
std::function< void()> & on_set_minimized()
set the window as minimized
static constexpr std::uint32_t configure_since_version
Minimum protocol version required for the configure function.
std::function< void(seat_t, uint32_t, zxdg_toplevel_v6_resize_edge)> & on_resize()
start an interactive resize
std::function< void(int32_t, int32_t)> & on_set_max_size()
set the maximum size
void configure(int32_t width, int32_t height, array_t const &states, bool post=true)
suggest a surface change
offer to transfer primary selection contents
offer to replace the contents of the primary selection
static const wayland::detail::bitfield< 10, 23 > latin
just latin characters should be entered
static const wayland::detail::bitfield< 10, 23 > lowercase
prefer lowercase letters
static const wayland::detail::bitfield< 10, 23 > hidden_text
characters should be hidden
static const wayland::detail::bitfield< 10, 23 > multiline
the text input is multiline
static const wayland::detail::bitfield< 10, 23 > auto_completion
suggest word completions
static const wayland::detail::bitfield< 10, 23 > auto_correction
suggest word corrections
static const wayland::detail::bitfield< 10, 23 > _default
auto completion, correction and capitalization
static const wayland::detail::bitfield< 10, 23 > none
no special behaviour
static const wayland::detail::bitfield< 10, 23 > uppercase
prefer uppercase letters
static const wayland::detail::bitfield< 10, 23 > titlecase
prefer casing for titles and headings (can be language dependent)
static const wayland::detail::bitfield< 10, 23 > sensitive_data
typed text should not be stored
static const wayland::detail::bitfield< 10, 23 > password
hidden and sensitive text
static const wayland::detail::bitfield< 10, 23 > auto_capitalization
switch to uppercase letters at the start of a sentence
static const wayland::detail::bitfield< 10, 28 > lowercase
prefer lowercase letters
static const wayland::detail::bitfield< 10, 28 > latin
just Latin characters should be entered
static const wayland::detail::bitfield< 10, 28 > spellcheck
suggest word corrections
static const wayland::detail::bitfield< 10, 28 > titlecase
prefer casing for titles and headings (can be language dependent)
static const wayland::detail::bitfield< 10, 28 > uppercase
prefer uppercase letters
static const wayland::detail::bitfield< 10, 28 > completion
suggest word completions
static const wayland::detail::bitfield< 10, 28 > auto_capitalization
switch to uppercase letters at the start of a sentence
static const wayland::detail::bitfield< 10, 28 > multiline
the text input is multiline
static const wayland::detail::bitfield< 10, 28 > sensitive_data
typed text should not be stored
static const wayland::detail::bitfield< 10, 28 > hidden_text
characters should be hidden
static const wayland::detail::bitfield< 10, 28 > none
no special behavior