11#include <wayland-server-protocol-extra.hpp>
13struct zwp_fullscreen_shell_v1;
14struct zwp_fullscreen_shell_mode_feedback_v1;
15struct zwp_idle_inhibit_manager_v1;
16struct zwp_idle_inhibitor_v1;
17struct zwp_input_method_context_v1;
18struct zwp_input_method_v1;
19struct zwp_input_panel_v1;
20struct zwp_input_panel_surface_v1;
21struct zwp_input_timestamps_manager_v1;
22struct zwp_input_timestamps_v1;
23struct zwp_keyboard_shortcuts_inhibit_manager_v1;
24struct zwp_keyboard_shortcuts_inhibitor_v1;
25struct zwp_linux_dmabuf_v1;
26struct zwp_linux_buffer_params_v1;
27struct zwp_linux_dmabuf_feedback_v1;
28struct zwp_linux_explicit_synchronization_v1;
29struct zwp_linux_surface_synchronization_v1;
30struct zwp_linux_buffer_release_v1;
31struct zwp_pointer_constraints_v1;
32struct zwp_locked_pointer_v1;
33struct zwp_confined_pointer_v1;
34struct zwp_pointer_gestures_v1;
35struct zwp_pointer_gesture_swipe_v1;
36struct zwp_pointer_gesture_pinch_v1;
37struct zwp_pointer_gesture_hold_v1;
38struct zwp_primary_selection_device_manager_v1;
39struct zwp_primary_selection_device_v1;
40struct zwp_primary_selection_offer_v1;
41struct zwp_primary_selection_source_v1;
42struct zwp_relative_pointer_manager_v1;
43struct zwp_relative_pointer_v1;
44struct zwp_tablet_manager_v1;
45struct zwp_tablet_seat_v1;
46struct zwp_tablet_tool_v1;
48struct zwp_tablet_manager_v2;
49struct zwp_tablet_seat_v2;
50struct zwp_tablet_tool_v2;
52struct zwp_tablet_pad_ring_v2;
53struct zwp_tablet_pad_strip_v2;
54struct zwp_tablet_pad_group_v2;
55struct zwp_tablet_pad_v2;
56struct zwp_text_input_v1;
57struct zwp_text_input_manager_v1;
58struct zwp_text_input_v3;
59struct zwp_text_input_manager_v3;
60struct xdg_activation_v1;
61struct xdg_activation_token_v1;
62struct zxdg_decoration_manager_v1;
63struct zxdg_toplevel_decoration_v1;
64struct zxdg_exporter_v1;
65struct zxdg_importer_v1;
66struct zxdg_exported_v1;
67struct zxdg_imported_v1;
68struct zxdg_exporter_v2;
69struct zxdg_importer_v2;
70struct zxdg_exported_v2;
71struct zxdg_imported_v2;
72struct zxdg_output_manager_v1;
75struct zxdg_positioner_v6;
76struct zxdg_surface_v6;
77struct zxdg_toplevel_v6;
79struct zwp_xwayland_keyboard_grab_manager_v1;
80struct zwp_xwayland_keyboard_grab_v1;
86class zwp_fullscreen_shell_v1_t;
87enum class zwp_fullscreen_shell_v1_capability : uint32_t;
88enum class zwp_fullscreen_shell_v1_present_method : uint32_t;
89enum class zwp_fullscreen_shell_v1_error : uint32_t;
90class zwp_fullscreen_shell_mode_feedback_v1_t;
91class zwp_idle_inhibit_manager_v1_t;
92class zwp_idle_inhibitor_v1_t;
93class zwp_input_method_context_v1_t;
94class zwp_input_method_v1_t;
95class zwp_input_panel_v1_t;
96class zwp_input_panel_surface_v1_t;
97enum class zwp_input_panel_surface_v1_position : uint32_t;
98class zwp_input_timestamps_manager_v1_t;
99class zwp_input_timestamps_v1_t;
100class zwp_keyboard_shortcuts_inhibit_manager_v1_t;
101enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t;
102class zwp_keyboard_shortcuts_inhibitor_v1_t;
103class zwp_linux_dmabuf_v1_t;
104class zwp_linux_buffer_params_v1_t;
105enum class zwp_linux_buffer_params_v1_error : uint32_t;
106struct zwp_linux_buffer_params_v1_flags;
107class zwp_linux_dmabuf_feedback_v1_t;
108struct zwp_linux_dmabuf_feedback_v1_tranche_flags;
109class zwp_linux_explicit_synchronization_v1_t;
110enum class zwp_linux_explicit_synchronization_v1_error : uint32_t;
111class zwp_linux_surface_synchronization_v1_t;
112enum class zwp_linux_surface_synchronization_v1_error : uint32_t;
113class zwp_linux_buffer_release_v1_t;
114class zwp_pointer_constraints_v1_t;
115enum class zwp_pointer_constraints_v1_error : uint32_t;
116enum class zwp_pointer_constraints_v1_lifetime : uint32_t;
117class zwp_locked_pointer_v1_t;
118class zwp_confined_pointer_v1_t;
119class zwp_pointer_gestures_v1_t;
120class zwp_pointer_gesture_swipe_v1_t;
121class zwp_pointer_gesture_pinch_v1_t;
122class zwp_pointer_gesture_hold_v1_t;
123class zwp_primary_selection_device_manager_v1_t;
124class zwp_primary_selection_device_v1_t;
125class zwp_primary_selection_offer_v1_t;
126class zwp_primary_selection_source_v1_t;
127class zwp_relative_pointer_manager_v1_t;
128class zwp_relative_pointer_v1_t;
129class zwp_tablet_manager_v1_t;
130class zwp_tablet_seat_v1_t;
131class zwp_tablet_tool_v1_t;
132enum class zwp_tablet_tool_v1_type : uint32_t;
133enum class zwp_tablet_tool_v1_capability : uint32_t;
134enum class zwp_tablet_tool_v1_button_state : uint32_t;
135enum class zwp_tablet_tool_v1_error : uint32_t;
136class zwp_tablet_v1_t;
137class zwp_tablet_manager_v2_t;
138class zwp_tablet_seat_v2_t;
139class zwp_tablet_tool_v2_t;
140enum class zwp_tablet_tool_v2_type : uint32_t;
141enum class zwp_tablet_tool_v2_capability : uint32_t;
142enum class zwp_tablet_tool_v2_button_state : uint32_t;
143enum class zwp_tablet_tool_v2_error : uint32_t;
144class zwp_tablet_v2_t;
145class zwp_tablet_pad_ring_v2_t;
146enum class zwp_tablet_pad_ring_v2_source : uint32_t;
147class zwp_tablet_pad_strip_v2_t;
148enum class zwp_tablet_pad_strip_v2_source : uint32_t;
149class zwp_tablet_pad_group_v2_t;
150class zwp_tablet_pad_v2_t;
151enum class zwp_tablet_pad_v2_button_state : uint32_t;
152class zwp_text_input_v1_t;
153struct zwp_text_input_v1_content_hint;
154enum class zwp_text_input_v1_content_purpose : uint32_t;
155enum class zwp_text_input_v1_preedit_style : uint32_t;
156enum class zwp_text_input_v1_text_direction : uint32_t;
157class zwp_text_input_manager_v1_t;
158class zwp_text_input_v3_t;
159enum class zwp_text_input_v3_change_cause : uint32_t;
160struct zwp_text_input_v3_content_hint;
161enum class zwp_text_input_v3_content_purpose : uint32_t;
162class zwp_text_input_manager_v3_t;
163class xdg_activation_v1_t;
164class xdg_activation_token_v1_t;
165enum class xdg_activation_token_v1_error : uint32_t;
166class zxdg_decoration_manager_v1_t;
167class zxdg_toplevel_decoration_v1_t;
168enum class zxdg_toplevel_decoration_v1_error : uint32_t;
169enum class zxdg_toplevel_decoration_v1_mode : uint32_t;
170class zxdg_exporter_v1_t;
171class zxdg_importer_v1_t;
172class zxdg_exported_v1_t;
173class zxdg_imported_v1_t;
174class zxdg_exporter_v2_t;
175enum class zxdg_exporter_v2_error : uint32_t;
176class zxdg_importer_v2_t;
177class zxdg_exported_v2_t;
178class zxdg_imported_v2_t;
179enum class zxdg_imported_v2_error : uint32_t;
180class zxdg_output_manager_v1_t;
181class zxdg_output_v1_t;
182class zxdg_shell_v6_t;
183enum class zxdg_shell_v6_error : uint32_t;
184class zxdg_positioner_v6_t;
185enum class zxdg_positioner_v6_error : uint32_t;
186struct zxdg_positioner_v6_anchor;
187struct zxdg_positioner_v6_gravity;
188struct zxdg_positioner_v6_constraint_adjustment;
189class zxdg_surface_v6_t;
190enum class zxdg_surface_v6_error : uint32_t;
191class zxdg_toplevel_v6_t;
192struct zxdg_toplevel_v6_resize_edge;
193enum class zxdg_toplevel_v6_state : uint32_t;
194class zxdg_popup_v6_t;
195enum class zxdg_popup_v6_error : uint32_t;
196class zwp_xwayland_keyboard_grab_manager_v1_t;
197class zwp_xwayland_keyboard_grab_v1_t;
201 extern const wl_interface zwp_fullscreen_shell_v1_interface;
202 extern const wl_interface zwp_fullscreen_shell_mode_feedback_v1_interface;
203 extern const wl_interface zwp_idle_inhibit_manager_v1_interface;
204 extern const wl_interface zwp_idle_inhibitor_v1_interface;
205 extern const wl_interface zwp_input_method_context_v1_interface;
206 extern const wl_interface zwp_input_method_v1_interface;
207 extern const wl_interface zwp_input_panel_v1_interface;
208 extern const wl_interface zwp_input_panel_surface_v1_interface;
209 extern const wl_interface zwp_input_timestamps_manager_v1_interface;
210 extern const wl_interface zwp_input_timestamps_v1_interface;
211 extern const wl_interface zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
212 extern const wl_interface zwp_keyboard_shortcuts_inhibitor_v1_interface;
213 extern const wl_interface zwp_linux_dmabuf_v1_interface;
214 extern const wl_interface zwp_linux_buffer_params_v1_interface;
215 extern const wl_interface zwp_linux_dmabuf_feedback_v1_interface;
216 extern const wl_interface zwp_linux_explicit_synchronization_v1_interface;
217 extern const wl_interface zwp_linux_surface_synchronization_v1_interface;
218 extern const wl_interface zwp_linux_buffer_release_v1_interface;
219 extern const wl_interface zwp_pointer_constraints_v1_interface;
220 extern const wl_interface zwp_locked_pointer_v1_interface;
221 extern const wl_interface zwp_confined_pointer_v1_interface;
222 extern const wl_interface zwp_pointer_gestures_v1_interface;
223 extern const wl_interface zwp_pointer_gesture_swipe_v1_interface;
224 extern const wl_interface zwp_pointer_gesture_pinch_v1_interface;
225 extern const wl_interface zwp_pointer_gesture_hold_v1_interface;
226 extern const wl_interface zwp_primary_selection_device_manager_v1_interface;
227 extern const wl_interface zwp_primary_selection_device_v1_interface;
228 extern const wl_interface zwp_primary_selection_offer_v1_interface;
229 extern const wl_interface zwp_primary_selection_source_v1_interface;
230 extern const wl_interface zwp_relative_pointer_manager_v1_interface;
231 extern const wl_interface zwp_relative_pointer_v1_interface;
232 extern const wl_interface zwp_tablet_manager_v1_interface;
233 extern const wl_interface zwp_tablet_seat_v1_interface;
234 extern const wl_interface zwp_tablet_tool_v1_interface;
235 extern const wl_interface zwp_tablet_v1_interface;
236 extern const wl_interface zwp_tablet_manager_v2_interface;
237 extern const wl_interface zwp_tablet_seat_v2_interface;
238 extern const wl_interface zwp_tablet_tool_v2_interface;
239 extern const wl_interface zwp_tablet_v2_interface;
240 extern const wl_interface zwp_tablet_pad_ring_v2_interface;
241 extern const wl_interface zwp_tablet_pad_strip_v2_interface;
242 extern const wl_interface zwp_tablet_pad_group_v2_interface;
243 extern const wl_interface zwp_tablet_pad_v2_interface;
244 extern const wl_interface zwp_text_input_v1_interface;
245 extern const wl_interface zwp_text_input_manager_v1_interface;
246 extern const wl_interface zwp_text_input_v3_interface;
247 extern const wl_interface zwp_text_input_manager_v3_interface;
248 extern const wl_interface xdg_activation_v1_interface;
249 extern const wl_interface xdg_activation_token_v1_interface;
250 extern const wl_interface zxdg_decoration_manager_v1_interface;
251 extern const wl_interface zxdg_toplevel_decoration_v1_interface;
252 extern const wl_interface zxdg_exporter_v1_interface;
253 extern const wl_interface zxdg_importer_v1_interface;
254 extern const wl_interface zxdg_exported_v1_interface;
255 extern const wl_interface zxdg_imported_v1_interface;
256 extern const wl_interface zxdg_exporter_v2_interface;
257 extern const wl_interface zxdg_importer_v2_interface;
258 extern const wl_interface zxdg_exported_v2_interface;
259 extern const wl_interface zxdg_imported_v2_interface;
260 extern const wl_interface zxdg_output_manager_v1_interface;
261 extern const wl_interface zxdg_output_v1_interface;
262 extern const wl_interface zxdg_shell_v6_interface;
263 extern const wl_interface zxdg_positioner_v6_interface;
264 extern const wl_interface zxdg_surface_v6_interface;
265 extern const wl_interface zxdg_toplevel_v6_interface;
266 extern const wl_interface zxdg_popup_v6_interface;
267 extern const wl_interface zwp_xwayland_keyboard_grab_manager_v1_interface;
268 extern const wl_interface zwp_xwayland_keyboard_grab_v1_interface;
311 struct events_t :
public resource_t::events_base_t
313 std::function<void()> release;
314 std::function<void(
surface_t, zwp_fullscreen_shell_v1_present_method,
output_t)> present_surface;
315 std::function<void(
surface_t,
output_t, int32_t, zwp_fullscreen_shell_mode_feedback_v1_t)> present_surface_for_mode;
318 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
321 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_fullscreen_shell_v1_interface;
322 static constexpr const unsigned int max_version = 1;
332 static const std::string interface_name;
334 operator zwp_fullscreen_shell_v1*()
const;
484enum class zwp_fullscreen_shell_v1_capability : uint32_t
499enum class zwp_fullscreen_shell_v1_present_method : uint32_t
518enum class zwp_fullscreen_shell_v1_error : uint32_t
530class zwp_fullscreen_shell_mode_feedback_v1_t :
public resource_t
533 struct events_t :
public resource_t::events_base_t
537 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
540 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_fullscreen_shell_mode_feedback_v1_interface;
541 static constexpr const unsigned int max_version = 1;
543 friend class global_t<zwp_fullscreen_shell_mode_feedback_v1_t>;
544 friend class global_base_t;
547 zwp_fullscreen_shell_mode_feedback_v1_t() =
default;
548 zwp_fullscreen_shell_mode_feedback_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
549 zwp_fullscreen_shell_mode_feedback_v1_t(
const resource_t &resource);
551 static const std::string interface_name;
553 operator zwp_fullscreen_shell_mode_feedback_v1*()
const;
565 void mode_successful(
bool post =
true);
569 static constexpr std::uint32_t mode_successful_since_version = 1;
581 void mode_failed(
bool post =
true);
585 static constexpr std::uint32_t mode_failed_since_version = 1;
597 void present_cancelled(
bool post =
true);
601 static constexpr std::uint32_t present_cancelled_since_version = 1;
605using global_zwp_fullscreen_shell_mode_feedback_v1_t = global_t<zwp_fullscreen_shell_mode_feedback_v1_t>;
627 struct events_t :
public resource_t::events_base_t
629 std::function<void()> destroy;
633 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
636 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_idle_inhibit_manager_v1_interface;
637 static constexpr const unsigned int max_version = 1;
647 static const std::string interface_name;
649 operator zwp_idle_inhibit_manager_v1*()
const;
691 struct events_t :
public resource_t::events_base_t
693 std::function<void()> destroy;
696 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
699 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_idle_inhibitor_v1_interface;
700 static constexpr const unsigned int max_version = 1;
710 static const std::string interface_name;
712 operator zwp_idle_inhibitor_v1*()
const;
756 struct events_t :
public resource_t::events_base_t
758 std::function<void()> destroy;
759 std::function<void(uint32_t, std::string)> commit_string;
760 std::function<void(uint32_t, std::string, std::string)> preedit_string;
761 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> preedit_styling;
762 std::function<void(int32_t)> preedit_cursor;
763 std::function<void(int32_t, uint32_t)> delete_surrounding_text;
764 std::function<void(int32_t, int32_t)> cursor_position;
765 std::function<void(array_t)> modifiers_map;
766 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> keysym;
767 std::function<void(
keyboard_t)> grab_keyboard;
768 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state)> key;
769 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> modifiers;
770 std::function<void(uint32_t, std::string)> language;
771 std::function<void(uint32_t, uint32_t)> text_direction;
774 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
777 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_method_context_v1_interface;
778 static constexpr const unsigned int max_version = 1;
788 static const std::string interface_name;
790 operator zwp_input_method_context_v1*()
const;
795 std::function<void()> &on_destroy();
843 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> &
on_preedit_styling();
907 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> &
on_keysym();
934 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state)> &
on_key();
949 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> &
on_modifiers();
956 std::function<void(uint32_t, std::string)> &
on_language();
977 void surrounding_text(std::string
const& text, uint32_t cursor, uint32_t anchor,
bool post =
true);
986 void reset(
bool post =
true);
1008 void invoke_action(uint32_t button, uint32_t index,
bool post =
true);
1050 struct events_t :
public resource_t::events_base_t
1054 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1057 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_method_v1_interface;
1058 static constexpr const unsigned int max_version = 1;
1068 static const std::string interface_name;
1070 operator zwp_input_method_v1*()
const;
1111 struct events_t :
public resource_t::events_base_t
1113 std::function<void(zwp_input_panel_surface_v1_t,
surface_t)> get_input_panel_surface;
1116 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1119 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_panel_v1_interface;
1120 static constexpr const unsigned int max_version = 1;
1130 static const std::string interface_name;
1132 operator zwp_input_panel_v1*()
const;
1149class zwp_input_panel_surface_v1_t :
public resource_t
1152 struct events_t :
public resource_t::events_base_t
1154 std::function<void(
output_t, zwp_input_panel_surface_v1_position)> set_toplevel;
1155 std::function<void()> set_overlay_panel;
1158 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1161 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_panel_surface_v1_interface;
1162 static constexpr const unsigned int max_version = 1;
1164 friend class global_t<zwp_input_panel_surface_v1_t>;
1165 friend class global_base_t;
1168 zwp_input_panel_surface_v1_t() =
default;
1169 zwp_input_panel_surface_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
1170 zwp_input_panel_surface_v1_t(
const resource_t &resource);
1172 static const std::string interface_name;
1174 operator zwp_input_panel_surface_v1*()
const;
1185 std::function<void(
output_t, zwp_input_panel_surface_v1_position)> &on_set_toplevel();
1195 std::function<void()> &on_set_overlay_panel();
1199using global_zwp_input_panel_surface_v1_t = global_t<zwp_input_panel_surface_v1_t>;
1204enum class zwp_input_panel_surface_v1_position : uint32_t
1219 struct events_t :
public resource_t::events_base_t
1221 std::function<void()> destroy;
1227 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1230 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_timestamps_manager_v1_interface;
1231 static constexpr const unsigned int max_version = 1;
1241 static const std::string interface_name;
1243 operator zwp_input_timestamps_manager_v1*()
const;
1317 struct events_t :
public resource_t::events_base_t
1319 std::function<void()> destroy;
1322 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1325 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_input_timestamps_v1_interface;
1326 static constexpr const unsigned int max_version = 1;
1336 static const std::string interface_name;
1338 operator zwp_input_timestamps_v1*()
const;
1370 void timestamp(uint32_t tv_sec_hi, uint32_t tv_sec_lo, uint32_t tv_nsec,
bool post =
true);
1389 struct events_t :
public resource_t::events_base_t
1391 std::function<void()> destroy;
1395 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1398 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_keyboard_shortcuts_inhibit_manager_v1_interface;
1399 static constexpr const unsigned int max_version = 1;
1409 static const std::string interface_name;
1411 operator zwp_keyboard_shortcuts_inhibit_manager_v1*()
const;
1445enum class zwp_keyboard_shortcuts_inhibit_manager_v1_error : uint32_t
1448 already_inhibited = 0
1492 struct events_t :
public resource_t::events_base_t
1494 std::function<void()> destroy;
1497 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1500 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_keyboard_shortcuts_inhibitor_v1_interface;
1501 static constexpr const unsigned int max_version = 1;
1511 static const std::string interface_name;
1513 operator zwp_keyboard_shortcuts_inhibitor_v1*()
const;
1537 void active(
bool post =
true);
1635 struct events_t :
public resource_t::events_base_t
1637 std::function<void()> destroy;
1643 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1646 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_dmabuf_v1_interface;
1647 static constexpr const unsigned int max_version = 4;
1657 static const std::string interface_name;
1659 operator zwp_linux_dmabuf_v1*()
const;
1757 void modifier(uint32_t
format, uint32_t modifier_hi, uint32_t modifier_lo,
bool post =
true);
1794 struct events_t :
public resource_t::events_base_t
1796 std::function<void()> destroy;
1797 std::function<void(
int, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> add;
1798 std::function<void(int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> create;
1799 std::function<void(
buffer_t, int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> create_immed;
1802 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
1805 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_buffer_params_v1_interface;
1806 static constexpr const unsigned int max_version = 4;
1816 static const std::string interface_name;
1818 operator zwp_linux_buffer_params_v1*()
const;
1854 std::function<void(
int, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> &
on_add();
1923 std::function<void(int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> &
on_create();
1957 std::function<void(
buffer_t, int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> &
on_create_immed();
1969 void created(
bool post =
true);
1985 void failed(
bool post =
true);
2030enum class zwp_linux_buffer_params_v1_error : uint32_t
2043 invalid_dimensions = 5,
2047 invalid_wl_buffer = 7
2053struct zwp_linux_buffer_params_v1_flags :
public wayland::detail::bitfield<3, 6>
2055 zwp_linux_buffer_params_v1_flags(
const wayland::detail::bitfield<3, 6> &b)
2056 : wayland::detail::bitfield<3, 6>(b) {}
2057 zwp_linux_buffer_params_v1_flags(
const uint32_t value)
2058 : wayland::detail::bitfield<3, 6>(value) {}
2060 static const wayland::detail::bitfield<3, 6> y_invert;
2062 static const wayland::detail::bitfield<3, 6> interlaced;
2064 static const wayland::detail::bitfield<3, 6> bottom_first;
2100 struct events_t :
public resource_t::events_base_t
2102 std::function<void()> destroy;
2105 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2108 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_dmabuf_feedback_v1_interface;
2109 static constexpr const unsigned int max_version = 4;
2119 static const std::string interface_name;
2121 operator zwp_linux_dmabuf_feedback_v1*()
const;
2140 void done(
bool post =
true);
2166 void format_table(
int fd, uint32_t size,
bool post =
true);
2200 void main_device(array_t
const& device,
bool post =
true);
2305 void tranche_flags(zwp_linux_dmabuf_feedback_v1_tranche_flags
const& flags,
bool post =
true);
2318struct zwp_linux_dmabuf_feedback_v1_tranche_flags :
public wayland::detail::bitfield<1, 7>
2320 zwp_linux_dmabuf_feedback_v1_tranche_flags(
const wayland::detail::bitfield<1, 7> &b)
2321 : wayland::detail::bitfield<1, 7>(b) {}
2322 zwp_linux_dmabuf_feedback_v1_tranche_flags(
const uint32_t value)
2323 : wayland::detail::bitfield<1, 7>(value) {}
2325 static const wayland::detail::bitfield<1, 7> scanout;
2352 struct events_t :
public resource_t::events_base_t
2354 std::function<void()> destroy;
2358 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2361 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_explicit_synchronization_v1_interface;
2362 static constexpr const unsigned int max_version = 2;
2372 static const std::string interface_name;
2374 operator zwp_linux_explicit_synchronization_v1*()
const;
2415enum class zwp_linux_explicit_synchronization_v1_error : uint32_t
2418 synchronization_exists = 0
2459 struct events_t :
public resource_t::events_base_t
2461 std::function<void()> destroy;
2462 std::function<void(
int)> set_acquire_fence;
2466 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2469 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_surface_synchronization_v1_interface;
2470 static constexpr const unsigned int max_version = 2;
2480 static const std::string interface_name;
2482 operator zwp_linux_surface_synchronization_v1*()
const;
2583enum class zwp_linux_surface_synchronization_v1_error : uint32_t
2588 duplicate_fence = 1,
2590 duplicate_release = 2,
2594 unsupported_buffer = 4,
2624 struct events_t :
public resource_t::events_base_t
2628 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2631 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_linux_buffer_release_v1_interface;
2632 static constexpr const unsigned int max_version = 1;
2642 static const std::string interface_name;
2644 operator zwp_linux_buffer_release_v1*()
const;
2714 struct events_t :
public resource_t::events_base_t
2716 std::function<void()> destroy;
2721 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2724 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_constraints_v1_interface;
2725 static constexpr const unsigned int max_version = 1;
2735 static const std::string interface_name;
2737 operator zwp_pointer_constraints_v1*()
const;
2834enum class zwp_pointer_constraints_v1_error : uint32_t
2837 already_constrained = 1
2847enum class zwp_pointer_constraints_v1_lifetime : uint32_t
2884 struct events_t :
public resource_t::events_base_t
2886 std::function<void()> destroy;
2887 std::function<void(
double,
double)> set_cursor_position_hint;
2888 std::function<void(
region_t)> set_region;
2891 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
2894 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_locked_pointer_v1_interface;
2895 static constexpr const unsigned int max_version = 1;
2905 static const std::string interface_name;
2907 operator zwp_locked_pointer_v1*()
const;
2955 void locked(
bool post =
true);
3005 struct events_t :
public resource_t::events_base_t
3007 std::function<void()> destroy;
3008 std::function<void(
region_t)> set_region;
3011 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3014 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_confined_pointer_v1_interface;
3015 static constexpr const unsigned int max_version = 1;
3025 static const std::string interface_name;
3027 operator zwp_confined_pointer_v1*()
const;
3116 struct events_t :
public resource_t::events_base_t
3120 std::function<void()> release;
3124 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3127 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gestures_v1_interface;
3128 static constexpr const unsigned int max_version = 3;
3138 static const std::string interface_name;
3140 operator zwp_pointer_gestures_v1*()
const;
3207 struct events_t :
public resource_t::events_base_t
3209 std::function<void()> destroy;
3212 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3215 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gesture_swipe_v1_interface;
3216 static constexpr const unsigned int max_version = 2;
3226 static const std::string interface_name;
3228 operator zwp_pointer_gesture_swipe_v1*()
const;
3245 void begin(uint32_t serial, uint32_t time,
surface_t const& surface, uint32_t fingers,
bool post =
true);
3263 void update(uint32_t time,
double dx,
double dy,
bool post =
true);
3283 void end(uint32_t serial, uint32_t time, int32_t cancelled,
bool post =
true);
3316 struct events_t :
public resource_t::events_base_t
3318 std::function<void()> destroy;
3321 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3324 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gesture_pinch_v1_interface;
3325 static constexpr const unsigned int max_version = 2;
3335 static const std::string interface_name;
3337 operator zwp_pointer_gesture_pinch_v1*()
const;
3354 void begin(uint32_t serial, uint32_t time,
surface_t const& surface, uint32_t fingers,
bool post =
true);
3381 void update(uint32_t time,
double dx,
double dy,
double scale,
double rotation,
bool post =
true);
3401 void end(uint32_t serial, uint32_t time, int32_t cancelled,
bool post =
true);
3436 struct events_t :
public resource_t::events_base_t
3438 std::function<void()> destroy;
3441 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3444 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_pointer_gesture_hold_v1_interface;
3445 static constexpr const unsigned int max_version = 3;
3455 static const std::string interface_name;
3457 operator zwp_pointer_gesture_hold_v1*()
const;
3473 void begin(uint32_t serial, uint32_t time,
surface_t const& surface, uint32_t fingers,
bool post =
true);
3500 void end(uint32_t serial, uint32_t time, int32_t cancelled,
bool post =
true);
3527 struct events_t :
public resource_t::events_base_t
3530 std::function<void(zwp_primary_selection_device_v1_t,
seat_t)> get_device;
3531 std::function<void()> destroy;
3534 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3537 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_device_manager_v1_interface;
3538 static constexpr const unsigned int max_version = 1;
3548 static const std::string interface_name;
3550 operator zwp_primary_selection_device_manager_v1*()
const;
3584class zwp_primary_selection_device_v1_t :
public resource_t
3587 struct events_t :
public resource_t::events_base_t
3590 std::function<void()> destroy;
3593 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3596 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_device_v1_interface;
3597 static constexpr const unsigned int max_version = 1;
3599 friend class global_t<zwp_primary_selection_device_v1_t>;
3600 friend class global_base_t;
3603 zwp_primary_selection_device_v1_t() =
default;
3604 zwp_primary_selection_device_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
3605 zwp_primary_selection_device_v1_t(
const resource_t &resource);
3607 static const std::string interface_name;
3609 operator zwp_primary_selection_device_v1*()
const;
3628 std::function<void()> &on_destroy();
3639 void data_offer(
bool post =
true);
3643 static constexpr std::uint32_t data_offer_since_version = 1;
3663 static constexpr std::uint32_t selection_since_version = 1;
3667using global_zwp_primary_selection_device_v1_t = global_t<zwp_primary_selection_device_v1_t>;
3682 struct events_t :
public resource_t::events_base_t
3684 std::function<void(std::string,
int)> receive;
3685 std::function<void()> destroy;
3688 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3691 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_offer_v1_interface;
3692 static constexpr const unsigned int max_version = 1;
3702 static const std::string interface_name;
3704 operator zwp_primary_selection_offer_v1*()
const;
3721 std::function<void(std::string,
int)> &
on_receive();
3739 void offer(std::string
const& mime_type,
bool post =
true);
3760 struct events_t :
public resource_t::events_base_t
3762 std::function<void(std::string)> offer;
3763 std::function<void()> destroy;
3766 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3769 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_primary_selection_source_v1_interface;
3770 static constexpr const unsigned int max_version = 1;
3780 static const std::string interface_name;
3782 operator zwp_primary_selection_source_v1*()
const;
3791 std::function<void(std::string)> &
on_offer();
3809 void send(std::string
const& mime_type,
int fd,
bool post =
true);
3841 struct events_t :
public resource_t::events_base_t
3843 std::function<void()> destroy;
3847 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3850 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_relative_pointer_manager_v1_interface;
3851 static constexpr const unsigned int max_version = 1;
3861 static const std::string interface_name;
3863 operator zwp_relative_pointer_manager_v1*()
const;
3899 struct events_t :
public resource_t::events_base_t
3901 std::function<void()> destroy;
3904 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3907 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_relative_pointer_v1_interface;
3908 static constexpr const unsigned int max_version = 1;
3918 static const std::string interface_name;
3920 operator zwp_relative_pointer_v1*()
const;
3967 void relative_motion(uint32_t utime_hi, uint32_t utime_lo,
double dx,
double dy,
double dx_unaccel,
double dy_unaccel,
bool post =
true);
3988 struct events_t :
public resource_t::events_base_t
3991 std::function<void()> destroy;
3994 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
3997 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_manager_v1_interface;
3998 static constexpr const unsigned int max_version = 1;
4008 static const std::string interface_name;
4010 operator zwp_tablet_manager_v1*()
const;
4045 struct events_t :
public resource_t::events_base_t
4047 std::function<void()> destroy;
4050 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4053 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_seat_v1_interface;
4054 static constexpr const unsigned int max_version = 1;
4064 static const std::string interface_name;
4066 operator zwp_tablet_seat_v1*()
const;
4138 struct events_t :
public resource_t::events_base_t
4140 std::function<void(uint32_t,
surface_t, int32_t, int32_t)> set_cursor;
4141 std::function<void()> destroy;
4144 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4147 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_tool_v1_interface;
4148 static constexpr const unsigned int max_version = 1;
4158 static const std::string interface_name;
4160 operator zwp_tablet_tool_v1*()
const;
4221 void type(zwp_tablet_tool_v1_type
const& tool_type,
bool post =
true);
4248 void hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo,
bool post =
true);
4270 void hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo,
bool post =
true);
4301 void done(
bool post =
true);
4325 void removed(
bool post =
true);
4392 void down(uint32_t serial,
bool post =
true);
4418 void up(
bool post =
true);
4431 void motion(
double x,
double y,
bool post =
true);
4447 void pressure(uint32_t pressure,
bool post =
true);
4463 void distance(uint32_t distance,
bool post =
true);
4479 void tilt(int32_t tilt_x, int32_t tilt_y,
bool post =
true);
4493 void rotation(int32_t degrees,
bool post =
true);
4509 void slider(int32_t position,
bool post =
true);
4533 void wheel(int32_t degrees, int32_t clicks,
bool post =
true);
4552 void button(uint32_t serial, uint32_t
button, zwp_tablet_tool_v1_button_state
const& state,
bool post =
true);
4567 void frame(uint32_t time,
bool post =
true);
4594enum class zwp_tablet_tool_v1_type : uint32_t
4622enum class zwp_tablet_tool_v1_capability : uint32_t
4643enum class zwp_tablet_tool_v1_button_state : uint32_t
4654enum class zwp_tablet_tool_v1_error : uint32_t
4676 struct events_t :
public resource_t::events_base_t
4678 std::function<void()> destroy;
4681 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4684 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_v1_interface;
4685 static constexpr const unsigned int max_version = 1;
4692 zwp_tablet_v1_t(
const client_t& client, uint32_t
id,
int version = 1);
4695 static const std::string interface_name;
4697 operator zwp_tablet_v1*()
const;
4713 void name(std::string
const&
name,
bool post =
true);
4727 void id(uint32_t vid, uint32_t pid,
bool post =
true);
4752 void path(std::string
const&
path,
bool post =
true);
4766 void done(
bool post =
true);
4781 void removed(
bool post =
true);
4802 struct events_t :
public resource_t::events_base_t
4805 std::function<void()> destroy;
4808 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4811 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_manager_v2_interface;
4812 static constexpr const unsigned int max_version = 1;
4822 static const std::string interface_name;
4824 operator zwp_tablet_manager_v2*()
const;
4859 struct events_t :
public resource_t::events_base_t
4861 std::function<void()> destroy;
4864 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4867 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_seat_v2_interface;
4868 static constexpr const unsigned int max_version = 1;
4878 static const std::string interface_name;
4880 operator zwp_tablet_seat_v2*()
const;
4973 struct events_t :
public resource_t::events_base_t
4975 std::function<void(uint32_t,
surface_t, int32_t, int32_t)> set_cursor;
4976 std::function<void()> destroy;
4979 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
4982 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_tool_v2_interface;
4983 static constexpr const unsigned int max_version = 1;
4993 static const std::string interface_name;
4995 operator zwp_tablet_tool_v2*()
const;
5054 void type(zwp_tablet_tool_v2_type
const& tool_type,
bool post =
true);
5081 void hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo,
bool post =
true);
5103 void hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo,
bool post =
true);
5134 void done(
bool post =
true);
5158 void removed(
bool post =
true);
5225 void down(uint32_t serial,
bool post =
true);
5251 void up(
bool post =
true);
5264 void motion(
double x,
double y,
bool post =
true);
5280 void pressure(uint32_t pressure,
bool post =
true);
5296 void distance(uint32_t distance,
bool post =
true);
5312 void tilt(
double tilt_x,
double tilt_y,
bool post =
true);
5326 void rotation(
double degrees,
bool post =
true);
5342 void slider(int32_t position,
bool post =
true);
5366 void wheel(
double degrees, int32_t clicks,
bool post =
true);
5385 void button(uint32_t serial, uint32_t
button, zwp_tablet_tool_v2_button_state
const& state,
bool post =
true);
5400 void frame(uint32_t time,
bool post =
true);
5427enum class zwp_tablet_tool_v2_type : uint32_t
5455enum class zwp_tablet_tool_v2_capability : uint32_t
5476enum class zwp_tablet_tool_v2_button_state : uint32_t
5487enum class zwp_tablet_tool_v2_error : uint32_t
5509 struct events_t :
public resource_t::events_base_t
5511 std::function<void()> destroy;
5514 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
5517 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_v2_interface;
5518 static constexpr const unsigned int max_version = 1;
5525 zwp_tablet_v2_t(
const client_t& client, uint32_t
id,
int version = 1);
5528 static const std::string interface_name;
5530 operator zwp_tablet_v2*()
const;
5546 void name(std::string
const&
name,
bool post =
true);
5560 void id(uint32_t vid, uint32_t pid,
bool post =
true);
5585 void path(std::string
const&
path,
bool post =
true);
5599 void done(
bool post =
true);
5614 void removed(
bool post =
true);
5637 struct events_t :
public resource_t::events_base_t
5639 std::function<void(std::string, uint32_t)> set_feedback;
5640 std::function<void()> destroy;
5643 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
5646 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_ring_v2_interface;
5647 static constexpr const unsigned int max_version = 1;
5657 static const std::string interface_name;
5659 operator zwp_tablet_pad_ring_v2*()
const;
5712 void source(zwp_tablet_pad_ring_v2_source
const&
source,
bool post =
true);
5727 void angle(
double degrees,
bool post =
true);
5747 void stop(
bool post =
true);
5771 void frame(uint32_t time,
bool post =
true);
5789enum class zwp_tablet_pad_ring_v2_source : uint32_t
5808 struct events_t :
public resource_t::events_base_t
5810 std::function<void(std::string, uint32_t)> set_feedback;
5811 std::function<void()> destroy;
5814 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
5817 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_strip_v2_interface;
5818 static constexpr const unsigned int max_version = 1;
5828 static const std::string interface_name;
5830 operator zwp_tablet_pad_strip_v2*()
const;
5883 void source(zwp_tablet_pad_strip_v2_source
const&
source,
bool post =
true);
5919 void stop(
bool post =
true);
5944 void frame(uint32_t time,
bool post =
true);
5962enum class zwp_tablet_pad_strip_v2_source : uint32_t
5997 struct events_t :
public resource_t::events_base_t
5999 std::function<void()> destroy;
6002 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6005 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_group_v2_interface;
6006 static constexpr const unsigned int max_version = 1;
6016 static const std::string interface_name;
6018 operator zwp_tablet_pad_group_v2*()
const;
6060 void ring(
bool post =
true);
6075 void strip(
bool post =
true);
6098 void modes(uint32_t
modes,
bool post =
true);
6112 void done(
bool post =
true);
6152 void mode_switch(uint32_t time, uint32_t serial, uint32_t mode,
bool post =
true);
6192 struct events_t :
public resource_t::events_base_t
6194 std::function<void(uint32_t, std::string, uint32_t)> set_feedback;
6195 std::function<void()> destroy;
6198 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6201 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_tablet_pad_v2_interface;
6202 static constexpr const unsigned int max_version = 1;
6212 static const std::string interface_name;
6214 operator zwp_tablet_pad_v2*()
const;
6247 std::function<void(uint32_t, std::string, uint32_t)> &
on_set_feedback();
6266 void group(
bool post =
true);
6287 void path(std::string
const&
path,
bool post =
true);
6317 void done(
bool post =
true);
6331 void button(uint32_t time, uint32_t
button, zwp_tablet_pad_v2_button_state
const& state,
bool post =
true);
6359 void leave(uint32_t serial,
surface_t const& surface,
bool post =
true);
6375 void removed(
bool post =
true);
6391enum class zwp_tablet_pad_v2_button_state : uint32_t
6436 struct events_t :
public resource_t::events_base_t
6439 std::function<void(
seat_t)> deactivate;
6440 std::function<void()> show_input_panel;
6441 std::function<void()> hide_input_panel;
6442 std::function<void()> reset;
6443 std::function<void(std::string, uint32_t, uint32_t)> set_surrounding_text;
6445 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_cursor_rectangle;
6446 std::function<void(std::string)> set_preferred_language;
6447 std::function<void(uint32_t)> commit_state;
6448 std::function<void(uint32_t, uint32_t)> invoke_action;
6451 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6454 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_v1_interface;
6455 static constexpr const unsigned int max_version = 1;
6465 static const std::string interface_name;
6467 operator zwp_text_input_v1*()
const;
6602 void leave(
bool post =
true);
6650 void preedit_string(uint32_t serial, std::string
const& text, std::string
const& commit,
bool post =
true);
6670 void preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style
const& style,
bool post =
true);
6705 void commit_string(uint32_t serial, std::string
const& text,
bool post =
true);
6721 void cursor_position(int32_t index, int32_t anchor,
bool post =
true);
6762 void keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state
const& state, uint32_t modifiers,
bool post =
true);
6776 void language(uint32_t serial, std::string
const&
language,
bool post =
true);
6793 void text_direction(uint32_t serial, zwp_text_input_v1_text_direction
const& direction,
bool post =
true);
6812 : wayland::detail::bitfield<10, 23>(b) {}
6814 : wayland::detail::bitfield<10, 23>(value) {}
6816 static const wayland::detail::bitfield<10, 23>
none;
6818 static const wayland::detail::bitfield<10, 23>
_default;
6820 static const wayland::detail::bitfield<10, 23>
password;
6838 static const wayland::detail::bitfield<10, 23>
latin;
6852enum class zwp_text_input_v1_content_purpose : uint32_t
6885enum class zwp_text_input_v1_preedit_style : uint32_t
6902enum class zwp_text_input_v1_text_direction : uint32_t
6921 struct events_t :
public resource_t::events_base_t
6926 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
6929 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_manager_v1_interface;
6930 static constexpr const unsigned int max_version = 1;
6940 static const std::string interface_name;
6942 operator zwp_text_input_manager_v1*()
const;
6990 struct events_t :
public resource_t::events_base_t
6992 std::function<void()> destroy;
6993 std::function<void()> enable;
6994 std::function<void()> disable;
6995 std::function<void(std::string, int32_t, int32_t)> set_surrounding_text;
6996 std::function<void(zwp_text_input_v3_change_cause)> set_text_change_cause;
6998 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_cursor_rectangle;
6999 std::function<void()> commit;
7002 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7005 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_v3_interface;
7006 static constexpr const unsigned int max_version = 1;
7016 static const std::string interface_name;
7018 operator zwp_text_input_v3*()
const;
7276 void preedit_string(std::string
const& text, int32_t cursor_begin, int32_t cursor_end,
bool post =
true);
7295 void commit_string(std::string
const& text,
bool post =
true);
7354 void done(uint32_t serial,
bool post =
true);
7369enum class zwp_text_input_v3_change_cause : uint32_t
7386 : wayland::detail::bitfield<10, 28>(b) {}
7388 : wayland::detail::bitfield<10, 28>(value) {}
7390 static const wayland::detail::bitfield<10, 28>
none;
7408 static const wayland::detail::bitfield<10, 28>
latin;
7422enum class zwp_text_input_v3_content_purpose : uint32_t
7463 struct events_t :
public resource_t::events_base_t
7465 std::function<void()> destroy;
7469 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7472 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_text_input_manager_v3_interface;
7473 static constexpr const unsigned int max_version = 1;
7483 static const std::string interface_name;
7485 operator zwp_text_input_manager_v3*()
const;
7518 struct events_t :
public resource_t::events_base_t
7520 std::function<void()> destroy;
7522 std::function<void(std::string,
surface_t)> activate;
7525 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7528 static constexpr const wl_interface *
interface = &wayland::server::detail::xdg_activation_v1_interface;
7529 static constexpr const unsigned int max_version = 1;
7539 static const std::string interface_name;
7541 operator xdg_activation_v1*()
const;
7602 struct events_t :
public resource_t::events_base_t
7604 std::function<void(uint32_t,
seat_t)> set_serial;
7605 std::function<void(std::string)> set_app_id;
7606 std::function<void(
surface_t)> set_surface;
7607 std::function<void()> commit;
7608 std::function<void()> destroy;
7611 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7614 static constexpr const wl_interface *
interface = &wayland::server::detail::xdg_activation_token_v1_interface;
7615 static constexpr const unsigned int max_version = 1;
7625 static const std::string interface_name;
7627 operator xdg_activation_token_v1*()
const;
7697 void done(std::string
const& token,
bool post =
true);
7714enum class xdg_activation_token_v1_error : uint32_t
7750 struct events_t :
public resource_t::events_base_t
7752 std::function<void()> destroy;
7756 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7759 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_decoration_manager_v1_interface;
7760 static constexpr const unsigned int max_version = 1;
7770 static const std::string interface_name;
7772 operator zxdg_decoration_manager_v1*()
const;
7815 struct events_t :
public resource_t::events_base_t
7817 std::function<void()> destroy;
7818 std::function<void(zxdg_toplevel_decoration_v1_mode)> set_mode;
7819 std::function<void()> unset_mode;
7822 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7825 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_toplevel_decoration_v1_interface;
7826 static constexpr const unsigned int max_version = 1;
7836 static const std::string interface_name;
7838 operator zxdg_toplevel_decoration_v1*()
const;
7871 std::function<void(zxdg_toplevel_decoration_v1_mode)> &
on_set_mode();
7895 void configure(zxdg_toplevel_decoration_v1_mode
const& mode,
bool post =
true);
7920enum class zxdg_toplevel_decoration_v1_error : uint32_t
7923 unconfigured_buffer = 0,
7925 already_constructed = 1,
7935enum class zxdg_toplevel_decoration_v1_mode : uint32_t
7953 struct events_t :
public resource_t::events_base_t
7955 std::function<void()> destroy;
7959 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
7962 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exporter_v1_interface;
7963 static constexpr const unsigned int max_version = 1;
7973 static const std::string interface_name;
7975 operator zxdg_exporter_v1*()
const;
8016 struct events_t :
public resource_t::events_base_t
8018 std::function<void()> destroy;
8022 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8025 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_importer_v1_interface;
8026 static constexpr const unsigned int max_version = 1;
8036 static const std::string interface_name;
8038 operator zxdg_importer_v1*()
const;
8077 struct events_t :
public resource_t::events_base_t
8079 std::function<void()> destroy;
8082 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8085 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exported_v1_interface;
8086 static constexpr const unsigned int max_version = 1;
8096 static const std::string interface_name;
8098 operator zxdg_exported_v1*()
const;
8118 void handle(std::string
const&
handle,
bool post =
true);
8139 struct events_t :
public resource_t::events_base_t
8141 std::function<void()> destroy;
8142 std::function<void(
surface_t)> set_parent_of;
8145 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8148 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_imported_v1_interface;
8149 static constexpr const unsigned int max_version = 1;
8159 static const std::string interface_name;
8161 operator zxdg_imported_v1*()
const;
8211 struct events_t :
public resource_t::events_base_t
8213 std::function<void()> destroy;
8217 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8220 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exporter_v2_interface;
8221 static constexpr const unsigned int max_version = 1;
8231 static const std::string interface_name;
8233 operator zxdg_exporter_v2*()
const;
8274enum class zxdg_exporter_v2_error : uint32_t
8291 struct events_t :
public resource_t::events_base_t
8293 std::function<void()> destroy;
8297 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8300 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_importer_v2_interface;
8301 static constexpr const unsigned int max_version = 1;
8311 static const std::string interface_name;
8313 operator zxdg_importer_v2*()
const;
8352 struct events_t :
public resource_t::events_base_t
8354 std::function<void()> destroy;
8357 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8360 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_exported_v2_interface;
8361 static constexpr const unsigned int max_version = 1;
8371 static const std::string interface_name;
8373 operator zxdg_exported_v2*()
const;
8393 void handle(std::string
const&
handle,
bool post =
true);
8414 struct events_t :
public resource_t::events_base_t
8416 std::function<void()> destroy;
8417 std::function<void(
surface_t)> set_parent_of;
8420 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8423 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_imported_v2_interface;
8424 static constexpr const unsigned int max_version = 1;
8434 static const std::string interface_name;
8436 operator zxdg_imported_v2*()
const;
8487enum class zxdg_imported_v2_error : uint32_t
8502 struct events_t :
public resource_t::events_base_t
8504 std::function<void()> destroy;
8508 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8511 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_output_manager_v1_interface;
8512 static constexpr const unsigned int max_version = 3;
8522 static const std::string interface_name;
8524 operator zxdg_output_manager_v1*()
const;
8566 struct events_t :
public resource_t::events_base_t
8568 std::function<void()> destroy;
8571 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8574 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_output_v1_interface;
8575 static constexpr const unsigned int max_version = 3;
8585 static const std::string interface_name;
8587 operator zxdg_output_v1*()
const;
8655 void logical_size(int32_t width, int32_t height,
bool post =
true);
8674 void done(
bool post =
true);
8703 void name(std::string
const& name,
bool post =
true);
8761 struct events_t :
public resource_t::events_base_t
8763 std::function<void()> destroy;
8766 std::function<void(uint32_t)> pong;
8769 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8772 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_shell_v6_interface;
8773 static constexpr const unsigned int max_version = 1;
8780 zxdg_shell_v6_t(
const client_t& client, uint32_t
id,
int version = 1);
8783 static const std::string interface_name;
8785 operator zxdg_shell_v6*()
const;
8834 std::function<void(uint32_t)> &
on_pong();
8852 void ping(uint32_t serial,
bool post =
true);
8889enum class zxdg_shell_v6_error : uint32_t
8894 defunct_surfaces = 1,
8896 not_the_topmost_popup = 2,
8898 invalid_popup_parent = 3,
8900 invalid_surface_state = 4,
8902 invalid_positioner = 5
8932 struct events_t :
public resource_t::events_base_t
8934 std::function<void()> destroy;
8935 std::function<void(int32_t, int32_t)> set_size;
8936 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_anchor_rect;
8937 std::function<void(zxdg_positioner_v6_anchor)> set_anchor;
8938 std::function<void(zxdg_positioner_v6_gravity)> set_gravity;
8940 std::function<void(int32_t, int32_t)> set_offset;
8943 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
8946 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_positioner_v6_interface;
8947 static constexpr const unsigned int max_version = 1;
8957 static const std::string interface_name;
8959 operator zxdg_positioner_v6*()
const;
8979 std::function<void(int32_t, int32_t)> &
on_set_size();
9016 std::function<void(zxdg_positioner_v6_anchor)> &
on_set_anchor();
9032 std::function<void(zxdg_positioner_v6_gravity)> &
on_set_gravity();
9084enum class zxdg_positioner_v6_error : uint32_t
9093struct zxdg_positioner_v6_anchor :
public wayland::detail::bitfield<4, 37>
9095 zxdg_positioner_v6_anchor(
const wayland::detail::bitfield<4, 37> &b)
9096 : wayland::detail::bitfield<4, 37>(b) {}
9097 zxdg_positioner_v6_anchor(
const uint32_t value)
9098 : wayland::detail::bitfield<4, 37>(value) {}
9100 static const wayland::detail::bitfield<4, 37> none;
9102 static const wayland::detail::bitfield<4, 37> top;
9104 static const wayland::detail::bitfield<4, 37> bottom;
9106 static const wayland::detail::bitfield<4, 37> left;
9108 static const wayland::detail::bitfield<4, 37> right;
9114struct zxdg_positioner_v6_gravity :
public wayland::detail::bitfield<4, 38>
9116 zxdg_positioner_v6_gravity(
const wayland::detail::bitfield<4, 38> &b)
9117 : wayland::detail::bitfield<4, 38>(b) {}
9118 zxdg_positioner_v6_gravity(
const uint32_t value)
9119 : wayland::detail::bitfield<4, 38>(value) {}
9121 static const wayland::detail::bitfield<4, 38> none;
9123 static const wayland::detail::bitfield<4, 38> top;
9125 static const wayland::detail::bitfield<4, 38> bottom;
9127 static const wayland::detail::bitfield<4, 38> left;
9129 static const wayland::detail::bitfield<4, 38> right;
9150 : wayland::detail::bitfield<6, 39>(b) {}
9152 : wayland::detail::bitfield<6, 39>(value) {}
9153 static const wayland::detail::bitfield<6, 39> none;
9154 static const wayland::detail::bitfield<6, 39> slide_x;
9155 static const wayland::detail::bitfield<6, 39> slide_y;
9156 static const wayland::detail::bitfield<6, 39> flip_x;
9157 static const wayland::detail::bitfield<6, 39> flip_y;
9158 static const wayland::detail::bitfield<6, 39> resize_x;
9159 static const wayland::detail::bitfield<6, 39> resize_y;
9200 struct events_t :
public resource_t::events_base_t
9202 std::function<void()> destroy;
9205 std::function<void(int32_t, int32_t, int32_t, int32_t)> set_window_geometry;
9206 std::function<void(uint32_t)> ack_configure;
9209 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
9212 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_surface_v6_interface;
9213 static constexpr const unsigned int max_version = 1;
9223 static const std::string interface_name;
9225 operator zxdg_surface_v6*()
const;
9342 void configure(uint32_t serial,
bool post =
true);
9367enum class zxdg_surface_v6_error : uint32_t
9369 not_constructed = 1,
9370 already_constructed = 2,
9371 unconfigured_buffer = 3
9387 struct events_t :
public resource_t::events_base_t
9389 std::function<void()> destroy;
9391 std::function<void(std::string)> set_title;
9392 std::function<void(std::string)> set_app_id;
9393 std::function<void(
seat_t, uint32_t, int32_t, int32_t)> show_window_menu;
9394 std::function<void(
seat_t, uint32_t)> move;
9396 std::function<void(int32_t, int32_t)> set_max_size;
9397 std::function<void(int32_t, int32_t)> set_min_size;
9398 std::function<void()> set_maximized;
9399 std::function<void()> unset_maximized;
9400 std::function<void(
output_t)> set_fullscreen;
9401 std::function<void()> unset_fullscreen;
9402 std::function<void()> set_minimized;
9405 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
9408 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_toplevel_v6_interface;
9409 static constexpr const unsigned int max_version = 1;
9419 static const std::string interface_name;
9421 operator zxdg_toplevel_v6*()
const;
9719 std::function<void()> &on_unset_fullscreen();
9761 void configure(int32_t width, int32_t height, array_t
const& states,
bool post =
true);
9779 void close(
bool post =
true);
9798 : wayland::detail::bitfield<4, 41>(b) {}
9800 : wayland::detail::bitfield<4, 41>(value) {}
9801 static const wayland::detail::bitfield<4, 41> none;
9802 static const wayland::detail::bitfield<4, 41> top;
9803 static const wayland::detail::bitfield<4, 41> bottom;
9804 static const wayland::detail::bitfield<4, 41> left;
9805 static const wayland::detail::bitfield<4, 41> top_left;
9806 static const wayland::detail::bitfield<4, 41> bottom_left;
9807 static const wayland::detail::bitfield<4, 41> right;
9808 static const wayland::detail::bitfield<4, 41> top_right;
9809 static const wayland::detail::bitfield<4, 41> bottom_right;
9823enum class zxdg_toplevel_v6_state : uint32_t
9876 struct events_t :
public resource_t::events_base_t
9878 std::function<void()> destroy;
9879 std::function<void(
seat_t, uint32_t)> grab;
9882 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
9885 static constexpr const wl_interface *
interface = &wayland::server::detail::zxdg_popup_v6_interface;
9886 static constexpr const unsigned int max_version = 1;
9893 zxdg_popup_v6_t(
const client_t& client, uint32_t
id,
int version = 1);
9896 static const std::string interface_name;
9898 operator zxdg_popup_v6*()
const;
9975 void configure(int32_t x, int32_t y, int32_t width, int32_t height,
bool post =
true);
10005enum class zxdg_popup_v6_error : uint32_t
10020 struct events_t :
public resource_t::events_base_t
10022 std::function<void()> destroy;
10026 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
10029 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_xwayland_keyboard_grab_manager_v1_interface;
10030 static constexpr const unsigned int max_version = 1;
10040 static const std::string interface_name;
10042 operator zwp_xwayland_keyboard_grab_manager_v1*()
const;
10092 struct events_t :
public resource_t::events_base_t
10094 std::function<void()> destroy;
10097 static int dispatcher(
int opcode,
const std::vector<wayland::detail::any>& args,
const std::shared_ptr<resource_t::events_base_t>& e);
10100 static constexpr const wl_interface *
interface = &wayland::server::detail::zwp_xwayland_keyboard_grab_v1_interface;
10101 static constexpr const unsigned int max_version = 1;
10111 static const std::string interface_name;
10113 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