Wayland++  1.0.0
C++ Bindings for Wayland
wayland-server-protocol-unstable.cpp
1 #include <wayland-server-protocol-unstable.hpp>
2 
3 using namespace wayland;
4 using namespace wayland::detail;
5 using namespace wayland::server;
6 using namespace wayland::server::detail;
7 
8 const wl_interface* zwp_fullscreen_shell_v1_interface_release_request_server[0] = {
9 };
10 
11 const wl_interface* zwp_fullscreen_shell_v1_interface_present_surface_request_server[3] = {
12  &surface_interface,
13  nullptr,
14  &output_interface,
15 };
16 
17 const wl_interface* zwp_fullscreen_shell_v1_interface_present_surface_for_mode_request_server[4] = {
18  &surface_interface,
19  &output_interface,
20  nullptr,
21  &zwp_fullscreen_shell_mode_feedback_v1_interface,
22 };
23 
24 const wl_interface* zwp_fullscreen_shell_v1_interface_capability_event_server[1] = {
25  nullptr,
26 };
27 
28 const wl_message zwp_fullscreen_shell_v1_interface_requests_server[3] = {
29  {
30  "release",
31  "",
32  zwp_fullscreen_shell_v1_interface_release_request_server,
33  },
34  {
35  "present_surface",
36  "?ou?o",
37  zwp_fullscreen_shell_v1_interface_present_surface_request_server,
38  },
39  {
40  "present_surface_for_mode",
41  "ooin",
42  zwp_fullscreen_shell_v1_interface_present_surface_for_mode_request_server,
43  },
44 };
45 
46 const wl_message zwp_fullscreen_shell_v1_interface_events_server[1] = {
47  {
48  "capability",
49  "u",
50  zwp_fullscreen_shell_v1_interface_capability_event_server,
51  },
52 };
53 
54 const wl_interface wayland::server::detail::zwp_fullscreen_shell_v1_interface =
55  {
56  "zwp_fullscreen_shell_v1",
57  1,
58  3,
59  zwp_fullscreen_shell_v1_interface_requests_server,
60  1,
61  zwp_fullscreen_shell_v1_interface_events_server,
62  };
63 
64 const wl_interface* zwp_fullscreen_shell_mode_feedback_v1_interface_mode_successful_event_server[0] = {
65 };
66 
67 const wl_interface* zwp_fullscreen_shell_mode_feedback_v1_interface_mode_failed_event_server[0] = {
68 };
69 
70 const wl_interface* zwp_fullscreen_shell_mode_feedback_v1_interface_present_cancelled_event_server[0] = {
71 };
72 
73 const wl_message zwp_fullscreen_shell_mode_feedback_v1_interface_requests_server[0] = {
74 };
75 
76 const wl_message zwp_fullscreen_shell_mode_feedback_v1_interface_events_server[3] = {
77  {
78  "mode_successful",
79  "",
80  zwp_fullscreen_shell_mode_feedback_v1_interface_mode_successful_event_server,
81  },
82  {
83  "mode_failed",
84  "",
85  zwp_fullscreen_shell_mode_feedback_v1_interface_mode_failed_event_server,
86  },
87  {
88  "present_cancelled",
89  "",
90  zwp_fullscreen_shell_mode_feedback_v1_interface_present_cancelled_event_server,
91  },
92 };
93 
94 const wl_interface wayland::server::detail::zwp_fullscreen_shell_mode_feedback_v1_interface =
95  {
96  "zwp_fullscreen_shell_mode_feedback_v1",
97  1,
98  0,
99  zwp_fullscreen_shell_mode_feedback_v1_interface_requests_server,
100  3,
101  zwp_fullscreen_shell_mode_feedback_v1_interface_events_server,
102  };
103 
104 const wl_interface* zwp_idle_inhibit_manager_v1_interface_destroy_request_server[0] = {
105 };
106 
107 const wl_interface* zwp_idle_inhibit_manager_v1_interface_create_inhibitor_request_server[2] = {
108  &zwp_idle_inhibitor_v1_interface,
109  &surface_interface,
110 };
111 
112 const wl_message zwp_idle_inhibit_manager_v1_interface_requests_server[2] = {
113  {
114  "destroy",
115  "",
116  zwp_idle_inhibit_manager_v1_interface_destroy_request_server,
117  },
118  {
119  "create_inhibitor",
120  "no",
121  zwp_idle_inhibit_manager_v1_interface_create_inhibitor_request_server,
122  },
123 };
124 
125 const wl_message zwp_idle_inhibit_manager_v1_interface_events_server[0] = {
126 };
127 
128 const wl_interface wayland::server::detail::zwp_idle_inhibit_manager_v1_interface =
129  {
130  "zwp_idle_inhibit_manager_v1",
131  1,
132  2,
133  zwp_idle_inhibit_manager_v1_interface_requests_server,
134  0,
135  zwp_idle_inhibit_manager_v1_interface_events_server,
136  };
137 
138 const wl_interface* zwp_idle_inhibitor_v1_interface_destroy_request_server[0] = {
139 };
140 
141 const wl_message zwp_idle_inhibitor_v1_interface_requests_server[1] = {
142  {
143  "destroy",
144  "",
145  zwp_idle_inhibitor_v1_interface_destroy_request_server,
146  },
147 };
148 
149 const wl_message zwp_idle_inhibitor_v1_interface_events_server[0] = {
150 };
151 
152 const wl_interface wayland::server::detail::zwp_idle_inhibitor_v1_interface =
153  {
154  "zwp_idle_inhibitor_v1",
155  1,
156  1,
157  zwp_idle_inhibitor_v1_interface_requests_server,
158  0,
159  zwp_idle_inhibitor_v1_interface_events_server,
160  };
161 
162 const wl_interface* zwp_input_method_context_v1_interface_destroy_request_server[0] = {
163 };
164 
165 const wl_interface* zwp_input_method_context_v1_interface_commit_string_request_server[2] = {
166  nullptr,
167  nullptr,
168 };
169 
170 const wl_interface* zwp_input_method_context_v1_interface_preedit_string_request_server[3] = {
171  nullptr,
172  nullptr,
173  nullptr,
174 };
175 
176 const wl_interface* zwp_input_method_context_v1_interface_preedit_styling_request_server[3] = {
177  nullptr,
178  nullptr,
179  nullptr,
180 };
181 
182 const wl_interface* zwp_input_method_context_v1_interface_preedit_cursor_request_server[1] = {
183  nullptr,
184 };
185 
186 const wl_interface* zwp_input_method_context_v1_interface_delete_surrounding_text_request_server[2] = {
187  nullptr,
188  nullptr,
189 };
190 
191 const wl_interface* zwp_input_method_context_v1_interface_cursor_position_request_server[2] = {
192  nullptr,
193  nullptr,
194 };
195 
196 const wl_interface* zwp_input_method_context_v1_interface_modifiers_map_request_server[1] = {
197  nullptr,
198 };
199 
200 const wl_interface* zwp_input_method_context_v1_interface_keysym_request_server[5] = {
201  nullptr,
202  nullptr,
203  nullptr,
204  nullptr,
205  nullptr,
206 };
207 
208 const wl_interface* zwp_input_method_context_v1_interface_grab_keyboard_request_server[1] = {
209  &keyboard_interface,
210 };
211 
212 const wl_interface* zwp_input_method_context_v1_interface_key_request_server[4] = {
213  nullptr,
214  nullptr,
215  nullptr,
216  nullptr,
217 };
218 
219 const wl_interface* zwp_input_method_context_v1_interface_modifiers_request_server[5] = {
220  nullptr,
221  nullptr,
222  nullptr,
223  nullptr,
224  nullptr,
225 };
226 
227 const wl_interface* zwp_input_method_context_v1_interface_language_request_server[2] = {
228  nullptr,
229  nullptr,
230 };
231 
232 const wl_interface* zwp_input_method_context_v1_interface_text_direction_request_server[2] = {
233  nullptr,
234  nullptr,
235 };
236 
237 const wl_interface* zwp_input_method_context_v1_interface_surrounding_text_event_server[3] = {
238  nullptr,
239  nullptr,
240  nullptr,
241 };
242 
243 const wl_interface* zwp_input_method_context_v1_interface_reset_event_server[0] = {
244 };
245 
246 const wl_interface* zwp_input_method_context_v1_interface_content_type_event_server[2] = {
247  nullptr,
248  nullptr,
249 };
250 
251 const wl_interface* zwp_input_method_context_v1_interface_invoke_action_event_server[2] = {
252  nullptr,
253  nullptr,
254 };
255 
256 const wl_interface* zwp_input_method_context_v1_interface_commit_state_event_server[1] = {
257  nullptr,
258 };
259 
260 const wl_interface* zwp_input_method_context_v1_interface_preferred_language_event_server[1] = {
261  nullptr,
262 };
263 
264 const wl_message zwp_input_method_context_v1_interface_requests_server[14] = {
265  {
266  "destroy",
267  "",
268  zwp_input_method_context_v1_interface_destroy_request_server,
269  },
270  {
271  "commit_string",
272  "us",
273  zwp_input_method_context_v1_interface_commit_string_request_server,
274  },
275  {
276  "preedit_string",
277  "uss",
278  zwp_input_method_context_v1_interface_preedit_string_request_server,
279  },
280  {
281  "preedit_styling",
282  "uuu",
283  zwp_input_method_context_v1_interface_preedit_styling_request_server,
284  },
285  {
286  "preedit_cursor",
287  "i",
288  zwp_input_method_context_v1_interface_preedit_cursor_request_server,
289  },
290  {
291  "delete_surrounding_text",
292  "iu",
293  zwp_input_method_context_v1_interface_delete_surrounding_text_request_server,
294  },
295  {
296  "cursor_position",
297  "ii",
298  zwp_input_method_context_v1_interface_cursor_position_request_server,
299  },
300  {
301  "modifiers_map",
302  "a",
303  zwp_input_method_context_v1_interface_modifiers_map_request_server,
304  },
305  {
306  "keysym",
307  "uuuuu",
308  zwp_input_method_context_v1_interface_keysym_request_server,
309  },
310  {
311  "grab_keyboard",
312  "n",
313  zwp_input_method_context_v1_interface_grab_keyboard_request_server,
314  },
315  {
316  "key",
317  "uuuu",
318  zwp_input_method_context_v1_interface_key_request_server,
319  },
320  {
321  "modifiers",
322  "uuuuu",
323  zwp_input_method_context_v1_interface_modifiers_request_server,
324  },
325  {
326  "language",
327  "us",
328  zwp_input_method_context_v1_interface_language_request_server,
329  },
330  {
331  "text_direction",
332  "uu",
333  zwp_input_method_context_v1_interface_text_direction_request_server,
334  },
335 };
336 
337 const wl_message zwp_input_method_context_v1_interface_events_server[6] = {
338  {
339  "surrounding_text",
340  "suu",
341  zwp_input_method_context_v1_interface_surrounding_text_event_server,
342  },
343  {
344  "reset",
345  "",
346  zwp_input_method_context_v1_interface_reset_event_server,
347  },
348  {
349  "content_type",
350  "uu",
351  zwp_input_method_context_v1_interface_content_type_event_server,
352  },
353  {
354  "invoke_action",
355  "uu",
356  zwp_input_method_context_v1_interface_invoke_action_event_server,
357  },
358  {
359  "commit_state",
360  "u",
361  zwp_input_method_context_v1_interface_commit_state_event_server,
362  },
363  {
364  "preferred_language",
365  "s",
366  zwp_input_method_context_v1_interface_preferred_language_event_server,
367  },
368 };
369 
370 const wl_interface wayland::server::detail::zwp_input_method_context_v1_interface =
371  {
372  "zwp_input_method_context_v1",
373  1,
374  14,
375  zwp_input_method_context_v1_interface_requests_server,
376  6,
377  zwp_input_method_context_v1_interface_events_server,
378  };
379 
380 const wl_interface* zwp_input_method_v1_interface_activate_event_server[1] = {
381  &zwp_input_method_context_v1_interface,
382 };
383 
384 const wl_interface* zwp_input_method_v1_interface_deactivate_event_server[1] = {
385  &zwp_input_method_context_v1_interface,
386 };
387 
388 const wl_message zwp_input_method_v1_interface_requests_server[0] = {
389 };
390 
391 const wl_message zwp_input_method_v1_interface_events_server[2] = {
392  {
393  "activate",
394  "n",
395  zwp_input_method_v1_interface_activate_event_server,
396  },
397  {
398  "deactivate",
399  "o",
400  zwp_input_method_v1_interface_deactivate_event_server,
401  },
402 };
403 
404 const wl_interface wayland::server::detail::zwp_input_method_v1_interface =
405  {
406  "zwp_input_method_v1",
407  1,
408  0,
409  zwp_input_method_v1_interface_requests_server,
410  2,
411  zwp_input_method_v1_interface_events_server,
412  };
413 
414 const wl_interface* zwp_input_panel_v1_interface_get_input_panel_surface_request_server[2] = {
415  &zwp_input_panel_surface_v1_interface,
416  &surface_interface,
417 };
418 
419 const wl_message zwp_input_panel_v1_interface_requests_server[1] = {
420  {
421  "get_input_panel_surface",
422  "no",
423  zwp_input_panel_v1_interface_get_input_panel_surface_request_server,
424  },
425 };
426 
427 const wl_message zwp_input_panel_v1_interface_events_server[0] = {
428 };
429 
430 const wl_interface wayland::server::detail::zwp_input_panel_v1_interface =
431  {
432  "zwp_input_panel_v1",
433  1,
434  1,
435  zwp_input_panel_v1_interface_requests_server,
436  0,
437  zwp_input_panel_v1_interface_events_server,
438  };
439 
440 const wl_interface* zwp_input_panel_surface_v1_interface_set_toplevel_request_server[2] = {
441  &output_interface,
442  nullptr,
443 };
444 
445 const wl_interface* zwp_input_panel_surface_v1_interface_set_overlay_panel_request_server[0] = {
446 };
447 
448 const wl_message zwp_input_panel_surface_v1_interface_requests_server[2] = {
449  {
450  "set_toplevel",
451  "ou",
452  zwp_input_panel_surface_v1_interface_set_toplevel_request_server,
453  },
454  {
455  "set_overlay_panel",
456  "",
457  zwp_input_panel_surface_v1_interface_set_overlay_panel_request_server,
458  },
459 };
460 
461 const wl_message zwp_input_panel_surface_v1_interface_events_server[0] = {
462 };
463 
464 const wl_interface wayland::server::detail::zwp_input_panel_surface_v1_interface =
465  {
466  "zwp_input_panel_surface_v1",
467  1,
468  2,
469  zwp_input_panel_surface_v1_interface_requests_server,
470  0,
471  zwp_input_panel_surface_v1_interface_events_server,
472  };
473 
474 const wl_interface* zwp_input_timestamps_manager_v1_interface_destroy_request_server[0] = {
475 };
476 
477 const wl_interface* zwp_input_timestamps_manager_v1_interface_get_keyboard_timestamps_request_server[2] = {
478  &zwp_input_timestamps_v1_interface,
479  &keyboard_interface,
480 };
481 
482 const wl_interface* zwp_input_timestamps_manager_v1_interface_get_pointer_timestamps_request_server[2] = {
483  &zwp_input_timestamps_v1_interface,
484  &pointer_interface,
485 };
486 
487 const wl_interface* zwp_input_timestamps_manager_v1_interface_get_touch_timestamps_request_server[2] = {
488  &zwp_input_timestamps_v1_interface,
489  &touch_interface,
490 };
491 
492 const wl_message zwp_input_timestamps_manager_v1_interface_requests_server[4] = {
493  {
494  "destroy",
495  "",
496  zwp_input_timestamps_manager_v1_interface_destroy_request_server,
497  },
498  {
499  "get_keyboard_timestamps",
500  "no",
501  zwp_input_timestamps_manager_v1_interface_get_keyboard_timestamps_request_server,
502  },
503  {
504  "get_pointer_timestamps",
505  "no",
506  zwp_input_timestamps_manager_v1_interface_get_pointer_timestamps_request_server,
507  },
508  {
509  "get_touch_timestamps",
510  "no",
511  zwp_input_timestamps_manager_v1_interface_get_touch_timestamps_request_server,
512  },
513 };
514 
515 const wl_message zwp_input_timestamps_manager_v1_interface_events_server[0] = {
516 };
517 
518 const wl_interface wayland::server::detail::zwp_input_timestamps_manager_v1_interface =
519  {
520  "zwp_input_timestamps_manager_v1",
521  1,
522  4,
523  zwp_input_timestamps_manager_v1_interface_requests_server,
524  0,
525  zwp_input_timestamps_manager_v1_interface_events_server,
526  };
527 
528 const wl_interface* zwp_input_timestamps_v1_interface_destroy_request_server[0] = {
529 };
530 
531 const wl_interface* zwp_input_timestamps_v1_interface_timestamp_event_server[3] = {
532  nullptr,
533  nullptr,
534  nullptr,
535 };
536 
537 const wl_message zwp_input_timestamps_v1_interface_requests_server[1] = {
538  {
539  "destroy",
540  "",
541  zwp_input_timestamps_v1_interface_destroy_request_server,
542  },
543 };
544 
545 const wl_message zwp_input_timestamps_v1_interface_events_server[1] = {
546  {
547  "timestamp",
548  "uuu",
549  zwp_input_timestamps_v1_interface_timestamp_event_server,
550  },
551 };
552 
553 const wl_interface wayland::server::detail::zwp_input_timestamps_v1_interface =
554  {
555  "zwp_input_timestamps_v1",
556  1,
557  1,
558  zwp_input_timestamps_v1_interface_requests_server,
559  1,
560  zwp_input_timestamps_v1_interface_events_server,
561  };
562 
563 const wl_interface* zwp_keyboard_shortcuts_inhibit_manager_v1_interface_destroy_request_server[0] = {
564 };
565 
566 const wl_interface* zwp_keyboard_shortcuts_inhibit_manager_v1_interface_inhibit_shortcuts_request_server[3] = {
567  &zwp_keyboard_shortcuts_inhibitor_v1_interface,
568  &surface_interface,
569  &seat_interface,
570 };
571 
572 const wl_message zwp_keyboard_shortcuts_inhibit_manager_v1_interface_requests_server[2] = {
573  {
574  "destroy",
575  "",
576  zwp_keyboard_shortcuts_inhibit_manager_v1_interface_destroy_request_server,
577  },
578  {
579  "inhibit_shortcuts",
580  "noo",
581  zwp_keyboard_shortcuts_inhibit_manager_v1_interface_inhibit_shortcuts_request_server,
582  },
583 };
584 
585 const wl_message zwp_keyboard_shortcuts_inhibit_manager_v1_interface_events_server[0] = {
586 };
587 
588 const wl_interface wayland::server::detail::zwp_keyboard_shortcuts_inhibit_manager_v1_interface =
589  {
590  "zwp_keyboard_shortcuts_inhibit_manager_v1",
591  1,
592  2,
593  zwp_keyboard_shortcuts_inhibit_manager_v1_interface_requests_server,
594  0,
595  zwp_keyboard_shortcuts_inhibit_manager_v1_interface_events_server,
596  };
597 
598 const wl_interface* zwp_keyboard_shortcuts_inhibitor_v1_interface_destroy_request_server[0] = {
599 };
600 
601 const wl_interface* zwp_keyboard_shortcuts_inhibitor_v1_interface_active_event_server[0] = {
602 };
603 
604 const wl_interface* zwp_keyboard_shortcuts_inhibitor_v1_interface_inactive_event_server[0] = {
605 };
606 
607 const wl_message zwp_keyboard_shortcuts_inhibitor_v1_interface_requests_server[1] = {
608  {
609  "destroy",
610  "",
611  zwp_keyboard_shortcuts_inhibitor_v1_interface_destroy_request_server,
612  },
613 };
614 
615 const wl_message zwp_keyboard_shortcuts_inhibitor_v1_interface_events_server[2] = {
616  {
617  "active",
618  "",
619  zwp_keyboard_shortcuts_inhibitor_v1_interface_active_event_server,
620  },
621  {
622  "inactive",
623  "",
624  zwp_keyboard_shortcuts_inhibitor_v1_interface_inactive_event_server,
625  },
626 };
627 
628 const wl_interface wayland::server::detail::zwp_keyboard_shortcuts_inhibitor_v1_interface =
629  {
630  "zwp_keyboard_shortcuts_inhibitor_v1",
631  1,
632  1,
633  zwp_keyboard_shortcuts_inhibitor_v1_interface_requests_server,
634  2,
635  zwp_keyboard_shortcuts_inhibitor_v1_interface_events_server,
636  };
637 
638 const wl_interface* zwp_linux_dmabuf_v1_interface_destroy_request_server[0] = {
639 };
640 
641 const wl_interface* zwp_linux_dmabuf_v1_interface_create_params_request_server[1] = {
642  &zwp_linux_buffer_params_v1_interface,
643 };
644 
645 const wl_interface* zwp_linux_dmabuf_v1_interface_get_default_feedback_request_server[1] = {
646  &zwp_linux_dmabuf_feedback_v1_interface,
647 };
648 
649 const wl_interface* zwp_linux_dmabuf_v1_interface_get_surface_feedback_request_server[2] = {
650  &zwp_linux_dmabuf_feedback_v1_interface,
651  &surface_interface,
652 };
653 
654 const wl_interface* zwp_linux_dmabuf_v1_interface_format_event_server[1] = {
655  nullptr,
656 };
657 
658 const wl_interface* zwp_linux_dmabuf_v1_interface_modifier_event_server[3] = {
659  nullptr,
660  nullptr,
661  nullptr,
662 };
663 
664 const wl_message zwp_linux_dmabuf_v1_interface_requests_server[4] = {
665  {
666  "destroy",
667  "",
668  zwp_linux_dmabuf_v1_interface_destroy_request_server,
669  },
670  {
671  "create_params",
672  "n",
673  zwp_linux_dmabuf_v1_interface_create_params_request_server,
674  },
675  {
676  "get_default_feedback",
677  "4n",
678  zwp_linux_dmabuf_v1_interface_get_default_feedback_request_server,
679  },
680  {
681  "get_surface_feedback",
682  "4no",
683  zwp_linux_dmabuf_v1_interface_get_surface_feedback_request_server,
684  },
685 };
686 
687 const wl_message zwp_linux_dmabuf_v1_interface_events_server[2] = {
688  {
689  "format",
690  "u",
691  zwp_linux_dmabuf_v1_interface_format_event_server,
692  },
693  {
694  "modifier",
695  "3uuu",
696  zwp_linux_dmabuf_v1_interface_modifier_event_server,
697  },
698 };
699 
700 const wl_interface wayland::server::detail::zwp_linux_dmabuf_v1_interface =
701  {
702  "zwp_linux_dmabuf_v1",
703  4,
704  4,
705  zwp_linux_dmabuf_v1_interface_requests_server,
706  2,
707  zwp_linux_dmabuf_v1_interface_events_server,
708  };
709 
710 const wl_interface* zwp_linux_buffer_params_v1_interface_destroy_request_server[0] = {
711 };
712 
713 const wl_interface* zwp_linux_buffer_params_v1_interface_add_request_server[6] = {
714  nullptr,
715  nullptr,
716  nullptr,
717  nullptr,
718  nullptr,
719  nullptr,
720 };
721 
722 const wl_interface* zwp_linux_buffer_params_v1_interface_create_request_server[4] = {
723  nullptr,
724  nullptr,
725  nullptr,
726  nullptr,
727 };
728 
729 const wl_interface* zwp_linux_buffer_params_v1_interface_create_immed_request_server[5] = {
730  &buffer_interface,
731  nullptr,
732  nullptr,
733  nullptr,
734  nullptr,
735 };
736 
737 const wl_interface* zwp_linux_buffer_params_v1_interface_created_event_server[1] = {
738  &buffer_interface,
739 };
740 
741 const wl_interface* zwp_linux_buffer_params_v1_interface_failed_event_server[0] = {
742 };
743 
744 const wl_message zwp_linux_buffer_params_v1_interface_requests_server[4] = {
745  {
746  "destroy",
747  "",
748  zwp_linux_buffer_params_v1_interface_destroy_request_server,
749  },
750  {
751  "add",
752  "huuuuu",
753  zwp_linux_buffer_params_v1_interface_add_request_server,
754  },
755  {
756  "create",
757  "iiuu",
758  zwp_linux_buffer_params_v1_interface_create_request_server,
759  },
760  {
761  "create_immed",
762  "2niiuu",
763  zwp_linux_buffer_params_v1_interface_create_immed_request_server,
764  },
765 };
766 
767 const wl_message zwp_linux_buffer_params_v1_interface_events_server[2] = {
768  {
769  "created",
770  "n",
771  zwp_linux_buffer_params_v1_interface_created_event_server,
772  },
773  {
774  "failed",
775  "",
776  zwp_linux_buffer_params_v1_interface_failed_event_server,
777  },
778 };
779 
780 const wl_interface wayland::server::detail::zwp_linux_buffer_params_v1_interface =
781  {
782  "zwp_linux_buffer_params_v1",
783  4,
784  4,
785  zwp_linux_buffer_params_v1_interface_requests_server,
786  2,
787  zwp_linux_buffer_params_v1_interface_events_server,
788  };
789 
790 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_destroy_request_server[0] = {
791 };
792 
793 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_done_event_server[0] = {
794 };
795 
796 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_format_table_event_server[2] = {
797  nullptr,
798  nullptr,
799 };
800 
801 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_main_device_event_server[1] = {
802  nullptr,
803 };
804 
805 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_tranche_done_event_server[0] = {
806 };
807 
808 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_tranche_target_device_event_server[1] = {
809  nullptr,
810 };
811 
812 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_tranche_formats_event_server[1] = {
813  nullptr,
814 };
815 
816 const wl_interface* zwp_linux_dmabuf_feedback_v1_interface_tranche_flags_event_server[1] = {
817  nullptr,
818 };
819 
820 const wl_message zwp_linux_dmabuf_feedback_v1_interface_requests_server[1] = {
821  {
822  "destroy",
823  "",
824  zwp_linux_dmabuf_feedback_v1_interface_destroy_request_server,
825  },
826 };
827 
828 const wl_message zwp_linux_dmabuf_feedback_v1_interface_events_server[7] = {
829  {
830  "done",
831  "",
832  zwp_linux_dmabuf_feedback_v1_interface_done_event_server,
833  },
834  {
835  "format_table",
836  "hu",
837  zwp_linux_dmabuf_feedback_v1_interface_format_table_event_server,
838  },
839  {
840  "main_device",
841  "a",
842  zwp_linux_dmabuf_feedback_v1_interface_main_device_event_server,
843  },
844  {
845  "tranche_done",
846  "",
847  zwp_linux_dmabuf_feedback_v1_interface_tranche_done_event_server,
848  },
849  {
850  "tranche_target_device",
851  "a",
852  zwp_linux_dmabuf_feedback_v1_interface_tranche_target_device_event_server,
853  },
854  {
855  "tranche_formats",
856  "a",
857  zwp_linux_dmabuf_feedback_v1_interface_tranche_formats_event_server,
858  },
859  {
860  "tranche_flags",
861  "u",
862  zwp_linux_dmabuf_feedback_v1_interface_tranche_flags_event_server,
863  },
864 };
865 
866 const wl_interface wayland::server::detail::zwp_linux_dmabuf_feedback_v1_interface =
867  {
868  "zwp_linux_dmabuf_feedback_v1",
869  4,
870  1,
871  zwp_linux_dmabuf_feedback_v1_interface_requests_server,
872  7,
873  zwp_linux_dmabuf_feedback_v1_interface_events_server,
874  };
875 
876 const wl_interface* zwp_linux_explicit_synchronization_v1_interface_destroy_request_server[0] = {
877 };
878 
879 const wl_interface* zwp_linux_explicit_synchronization_v1_interface_get_synchronization_request_server[2] = {
880  &zwp_linux_surface_synchronization_v1_interface,
881  &surface_interface,
882 };
883 
884 const wl_message zwp_linux_explicit_synchronization_v1_interface_requests_server[2] = {
885  {
886  "destroy",
887  "",
888  zwp_linux_explicit_synchronization_v1_interface_destroy_request_server,
889  },
890  {
891  "get_synchronization",
892  "no",
893  zwp_linux_explicit_synchronization_v1_interface_get_synchronization_request_server,
894  },
895 };
896 
897 const wl_message zwp_linux_explicit_synchronization_v1_interface_events_server[0] = {
898 };
899 
900 const wl_interface wayland::server::detail::zwp_linux_explicit_synchronization_v1_interface =
901  {
902  "zwp_linux_explicit_synchronization_v1",
903  2,
904  2,
905  zwp_linux_explicit_synchronization_v1_interface_requests_server,
906  0,
907  zwp_linux_explicit_synchronization_v1_interface_events_server,
908  };
909 
910 const wl_interface* zwp_linux_surface_synchronization_v1_interface_destroy_request_server[0] = {
911 };
912 
913 const wl_interface* zwp_linux_surface_synchronization_v1_interface_set_acquire_fence_request_server[1] = {
914  nullptr,
915 };
916 
917 const wl_interface* zwp_linux_surface_synchronization_v1_interface_get_release_request_server[1] = {
918  &zwp_linux_buffer_release_v1_interface,
919 };
920 
921 const wl_message zwp_linux_surface_synchronization_v1_interface_requests_server[3] = {
922  {
923  "destroy",
924  "",
925  zwp_linux_surface_synchronization_v1_interface_destroy_request_server,
926  },
927  {
928  "set_acquire_fence",
929  "h",
930  zwp_linux_surface_synchronization_v1_interface_set_acquire_fence_request_server,
931  },
932  {
933  "get_release",
934  "n",
935  zwp_linux_surface_synchronization_v1_interface_get_release_request_server,
936  },
937 };
938 
939 const wl_message zwp_linux_surface_synchronization_v1_interface_events_server[0] = {
940 };
941 
942 const wl_interface wayland::server::detail::zwp_linux_surface_synchronization_v1_interface =
943  {
944  "zwp_linux_surface_synchronization_v1",
945  2,
946  3,
947  zwp_linux_surface_synchronization_v1_interface_requests_server,
948  0,
949  zwp_linux_surface_synchronization_v1_interface_events_server,
950  };
951 
952 const wl_interface* zwp_linux_buffer_release_v1_interface_fenced_release_event_server[1] = {
953  nullptr,
954 };
955 
956 const wl_interface* zwp_linux_buffer_release_v1_interface_immediate_release_event_server[0] = {
957 };
958 
959 const wl_message zwp_linux_buffer_release_v1_interface_requests_server[0] = {
960 };
961 
962 const wl_message zwp_linux_buffer_release_v1_interface_events_server[2] = {
963  {
964  "fenced_release",
965  "h",
966  zwp_linux_buffer_release_v1_interface_fenced_release_event_server,
967  },
968  {
969  "immediate_release",
970  "",
971  zwp_linux_buffer_release_v1_interface_immediate_release_event_server,
972  },
973 };
974 
975 const wl_interface wayland::server::detail::zwp_linux_buffer_release_v1_interface =
976  {
977  "zwp_linux_buffer_release_v1",
978  1,
979  0,
980  zwp_linux_buffer_release_v1_interface_requests_server,
981  2,
982  zwp_linux_buffer_release_v1_interface_events_server,
983  };
984 
985 const wl_interface* zwp_pointer_constraints_v1_interface_destroy_request_server[0] = {
986 };
987 
988 const wl_interface* zwp_pointer_constraints_v1_interface_lock_pointer_request_server[5] = {
989  &zwp_locked_pointer_v1_interface,
990  &surface_interface,
991  &pointer_interface,
992  &region_interface,
993  nullptr,
994 };
995 
996 const wl_interface* zwp_pointer_constraints_v1_interface_confine_pointer_request_server[5] = {
997  &zwp_confined_pointer_v1_interface,
998  &surface_interface,
999  &pointer_interface,
1000  &region_interface,
1001  nullptr,
1002 };
1003 
1004 const wl_message zwp_pointer_constraints_v1_interface_requests_server[3] = {
1005  {
1006  "destroy",
1007  "",
1008  zwp_pointer_constraints_v1_interface_destroy_request_server,
1009  },
1010  {
1011  "lock_pointer",
1012  "noo?ou",
1013  zwp_pointer_constraints_v1_interface_lock_pointer_request_server,
1014  },
1015  {
1016  "confine_pointer",
1017  "noo?ou",
1018  zwp_pointer_constraints_v1_interface_confine_pointer_request_server,
1019  },
1020 };
1021 
1022 const wl_message zwp_pointer_constraints_v1_interface_events_server[0] = {
1023 };
1024 
1025 const wl_interface wayland::server::detail::zwp_pointer_constraints_v1_interface =
1026  {
1027  "zwp_pointer_constraints_v1",
1028  1,
1029  3,
1030  zwp_pointer_constraints_v1_interface_requests_server,
1031  0,
1032  zwp_pointer_constraints_v1_interface_events_server,
1033  };
1034 
1035 const wl_interface* zwp_locked_pointer_v1_interface_destroy_request_server[0] = {
1036 };
1037 
1038 const wl_interface* zwp_locked_pointer_v1_interface_set_cursor_position_hint_request_server[2] = {
1039  nullptr,
1040  nullptr,
1041 };
1042 
1043 const wl_interface* zwp_locked_pointer_v1_interface_set_region_request_server[1] = {
1044  &region_interface,
1045 };
1046 
1047 const wl_interface* zwp_locked_pointer_v1_interface_locked_event_server[0] = {
1048 };
1049 
1050 const wl_interface* zwp_locked_pointer_v1_interface_unlocked_event_server[0] = {
1051 };
1052 
1053 const wl_message zwp_locked_pointer_v1_interface_requests_server[3] = {
1054  {
1055  "destroy",
1056  "",
1057  zwp_locked_pointer_v1_interface_destroy_request_server,
1058  },
1059  {
1060  "set_cursor_position_hint",
1061  "ff",
1062  zwp_locked_pointer_v1_interface_set_cursor_position_hint_request_server,
1063  },
1064  {
1065  "set_region",
1066  "?o",
1067  zwp_locked_pointer_v1_interface_set_region_request_server,
1068  },
1069 };
1070 
1071 const wl_message zwp_locked_pointer_v1_interface_events_server[2] = {
1072  {
1073  "locked",
1074  "",
1075  zwp_locked_pointer_v1_interface_locked_event_server,
1076  },
1077  {
1078  "unlocked",
1079  "",
1080  zwp_locked_pointer_v1_interface_unlocked_event_server,
1081  },
1082 };
1083 
1084 const wl_interface wayland::server::detail::zwp_locked_pointer_v1_interface =
1085  {
1086  "zwp_locked_pointer_v1",
1087  1,
1088  3,
1089  zwp_locked_pointer_v1_interface_requests_server,
1090  2,
1091  zwp_locked_pointer_v1_interface_events_server,
1092  };
1093 
1094 const wl_interface* zwp_confined_pointer_v1_interface_destroy_request_server[0] = {
1095 };
1096 
1097 const wl_interface* zwp_confined_pointer_v1_interface_set_region_request_server[1] = {
1098  &region_interface,
1099 };
1100 
1101 const wl_interface* zwp_confined_pointer_v1_interface_confined_event_server[0] = {
1102 };
1103 
1104 const wl_interface* zwp_confined_pointer_v1_interface_unconfined_event_server[0] = {
1105 };
1106 
1107 const wl_message zwp_confined_pointer_v1_interface_requests_server[2] = {
1108  {
1109  "destroy",
1110  "",
1111  zwp_confined_pointer_v1_interface_destroy_request_server,
1112  },
1113  {
1114  "set_region",
1115  "?o",
1116  zwp_confined_pointer_v1_interface_set_region_request_server,
1117  },
1118 };
1119 
1120 const wl_message zwp_confined_pointer_v1_interface_events_server[2] = {
1121  {
1122  "confined",
1123  "",
1124  zwp_confined_pointer_v1_interface_confined_event_server,
1125  },
1126  {
1127  "unconfined",
1128  "",
1129  zwp_confined_pointer_v1_interface_unconfined_event_server,
1130  },
1131 };
1132 
1133 const wl_interface wayland::server::detail::zwp_confined_pointer_v1_interface =
1134  {
1135  "zwp_confined_pointer_v1",
1136  1,
1137  2,
1138  zwp_confined_pointer_v1_interface_requests_server,
1139  2,
1140  zwp_confined_pointer_v1_interface_events_server,
1141  };
1142 
1143 const wl_interface* zwp_pointer_gestures_v1_interface_get_swipe_gesture_request_server[2] = {
1144  &zwp_pointer_gesture_swipe_v1_interface,
1145  &pointer_interface,
1146 };
1147 
1148 const wl_interface* zwp_pointer_gestures_v1_interface_get_pinch_gesture_request_server[2] = {
1149  &zwp_pointer_gesture_pinch_v1_interface,
1150  &pointer_interface,
1151 };
1152 
1153 const wl_interface* zwp_pointer_gestures_v1_interface_release_request_server[0] = {
1154 };
1155 
1156 const wl_interface* zwp_pointer_gestures_v1_interface_get_hold_gesture_request_server[2] = {
1157  &zwp_pointer_gesture_hold_v1_interface,
1158  &pointer_interface,
1159 };
1160 
1161 const wl_message zwp_pointer_gestures_v1_interface_requests_server[4] = {
1162  {
1163  "get_swipe_gesture",
1164  "no",
1165  zwp_pointer_gestures_v1_interface_get_swipe_gesture_request_server,
1166  },
1167  {
1168  "get_pinch_gesture",
1169  "no",
1170  zwp_pointer_gestures_v1_interface_get_pinch_gesture_request_server,
1171  },
1172  {
1173  "release",
1174  "2",
1175  zwp_pointer_gestures_v1_interface_release_request_server,
1176  },
1177  {
1178  "get_hold_gesture",
1179  "3no",
1180  zwp_pointer_gestures_v1_interface_get_hold_gesture_request_server,
1181  },
1182 };
1183 
1184 const wl_message zwp_pointer_gestures_v1_interface_events_server[0] = {
1185 };
1186 
1187 const wl_interface wayland::server::detail::zwp_pointer_gestures_v1_interface =
1188  {
1189  "zwp_pointer_gestures_v1",
1190  3,
1191  4,
1192  zwp_pointer_gestures_v1_interface_requests_server,
1193  0,
1194  zwp_pointer_gestures_v1_interface_events_server,
1195  };
1196 
1197 const wl_interface* zwp_pointer_gesture_swipe_v1_interface_destroy_request_server[0] = {
1198 };
1199 
1200 const wl_interface* zwp_pointer_gesture_swipe_v1_interface_begin_event_server[4] = {
1201  nullptr,
1202  nullptr,
1203  &surface_interface,
1204  nullptr,
1205 };
1206 
1207 const wl_interface* zwp_pointer_gesture_swipe_v1_interface_update_event_server[3] = {
1208  nullptr,
1209  nullptr,
1210  nullptr,
1211 };
1212 
1213 const wl_interface* zwp_pointer_gesture_swipe_v1_interface_end_event_server[3] = {
1214  nullptr,
1215  nullptr,
1216  nullptr,
1217 };
1218 
1219 const wl_message zwp_pointer_gesture_swipe_v1_interface_requests_server[1] = {
1220  {
1221  "destroy",
1222  "",
1223  zwp_pointer_gesture_swipe_v1_interface_destroy_request_server,
1224  },
1225 };
1226 
1227 const wl_message zwp_pointer_gesture_swipe_v1_interface_events_server[3] = {
1228  {
1229  "begin",
1230  "uuou",
1231  zwp_pointer_gesture_swipe_v1_interface_begin_event_server,
1232  },
1233  {
1234  "update",
1235  "uff",
1236  zwp_pointer_gesture_swipe_v1_interface_update_event_server,
1237  },
1238  {
1239  "end",
1240  "uui",
1241  zwp_pointer_gesture_swipe_v1_interface_end_event_server,
1242  },
1243 };
1244 
1245 const wl_interface wayland::server::detail::zwp_pointer_gesture_swipe_v1_interface =
1246  {
1247  "zwp_pointer_gesture_swipe_v1",
1248  2,
1249  1,
1250  zwp_pointer_gesture_swipe_v1_interface_requests_server,
1251  3,
1252  zwp_pointer_gesture_swipe_v1_interface_events_server,
1253  };
1254 
1255 const wl_interface* zwp_pointer_gesture_pinch_v1_interface_destroy_request_server[0] = {
1256 };
1257 
1258 const wl_interface* zwp_pointer_gesture_pinch_v1_interface_begin_event_server[4] = {
1259  nullptr,
1260  nullptr,
1261  &surface_interface,
1262  nullptr,
1263 };
1264 
1265 const wl_interface* zwp_pointer_gesture_pinch_v1_interface_update_event_server[5] = {
1266  nullptr,
1267  nullptr,
1268  nullptr,
1269  nullptr,
1270  nullptr,
1271 };
1272 
1273 const wl_interface* zwp_pointer_gesture_pinch_v1_interface_end_event_server[3] = {
1274  nullptr,
1275  nullptr,
1276  nullptr,
1277 };
1278 
1279 const wl_message zwp_pointer_gesture_pinch_v1_interface_requests_server[1] = {
1280  {
1281  "destroy",
1282  "",
1283  zwp_pointer_gesture_pinch_v1_interface_destroy_request_server,
1284  },
1285 };
1286 
1287 const wl_message zwp_pointer_gesture_pinch_v1_interface_events_server[3] = {
1288  {
1289  "begin",
1290  "uuou",
1291  zwp_pointer_gesture_pinch_v1_interface_begin_event_server,
1292  },
1293  {
1294  "update",
1295  "uffff",
1296  zwp_pointer_gesture_pinch_v1_interface_update_event_server,
1297  },
1298  {
1299  "end",
1300  "uui",
1301  zwp_pointer_gesture_pinch_v1_interface_end_event_server,
1302  },
1303 };
1304 
1305 const wl_interface wayland::server::detail::zwp_pointer_gesture_pinch_v1_interface =
1306  {
1307  "zwp_pointer_gesture_pinch_v1",
1308  2,
1309  1,
1310  zwp_pointer_gesture_pinch_v1_interface_requests_server,
1311  3,
1312  zwp_pointer_gesture_pinch_v1_interface_events_server,
1313  };
1314 
1315 const wl_interface* zwp_pointer_gesture_hold_v1_interface_destroy_request_server[0] = {
1316 };
1317 
1318 const wl_interface* zwp_pointer_gesture_hold_v1_interface_begin_event_server[4] = {
1319  nullptr,
1320  nullptr,
1321  &surface_interface,
1322  nullptr,
1323 };
1324 
1325 const wl_interface* zwp_pointer_gesture_hold_v1_interface_end_event_server[3] = {
1326  nullptr,
1327  nullptr,
1328  nullptr,
1329 };
1330 
1331 const wl_message zwp_pointer_gesture_hold_v1_interface_requests_server[1] = {
1332  {
1333  "destroy",
1334  "3",
1335  zwp_pointer_gesture_hold_v1_interface_destroy_request_server,
1336  },
1337 };
1338 
1339 const wl_message zwp_pointer_gesture_hold_v1_interface_events_server[2] = {
1340  {
1341  "begin",
1342  "3uuou",
1343  zwp_pointer_gesture_hold_v1_interface_begin_event_server,
1344  },
1345  {
1346  "end",
1347  "3uui",
1348  zwp_pointer_gesture_hold_v1_interface_end_event_server,
1349  },
1350 };
1351 
1352 const wl_interface wayland::server::detail::zwp_pointer_gesture_hold_v1_interface =
1353  {
1354  "zwp_pointer_gesture_hold_v1",
1355  3,
1356  1,
1357  zwp_pointer_gesture_hold_v1_interface_requests_server,
1358  2,
1359  zwp_pointer_gesture_hold_v1_interface_events_server,
1360  };
1361 
1362 const wl_interface* zwp_primary_selection_device_manager_v1_interface_create_source_request_server[1] = {
1363  &zwp_primary_selection_source_v1_interface,
1364 };
1365 
1366 const wl_interface* zwp_primary_selection_device_manager_v1_interface_get_device_request_server[2] = {
1367  &zwp_primary_selection_device_v1_interface,
1368  &seat_interface,
1369 };
1370 
1371 const wl_interface* zwp_primary_selection_device_manager_v1_interface_destroy_request_server[0] = {
1372 };
1373 
1374 const wl_message zwp_primary_selection_device_manager_v1_interface_requests_server[3] = {
1375  {
1376  "create_source",
1377  "n",
1378  zwp_primary_selection_device_manager_v1_interface_create_source_request_server,
1379  },
1380  {
1381  "get_device",
1382  "no",
1383  zwp_primary_selection_device_manager_v1_interface_get_device_request_server,
1384  },
1385  {
1386  "destroy",
1387  "",
1388  zwp_primary_selection_device_manager_v1_interface_destroy_request_server,
1389  },
1390 };
1391 
1392 const wl_message zwp_primary_selection_device_manager_v1_interface_events_server[0] = {
1393 };
1394 
1395 const wl_interface wayland::server::detail::zwp_primary_selection_device_manager_v1_interface =
1396  {
1397  "zwp_primary_selection_device_manager_v1",
1398  1,
1399  3,
1400  zwp_primary_selection_device_manager_v1_interface_requests_server,
1401  0,
1402  zwp_primary_selection_device_manager_v1_interface_events_server,
1403  };
1404 
1405 const wl_interface* zwp_primary_selection_device_v1_interface_set_selection_request_server[2] = {
1406  &zwp_primary_selection_source_v1_interface,
1407  nullptr,
1408 };
1409 
1410 const wl_interface* zwp_primary_selection_device_v1_interface_destroy_request_server[0] = {
1411 };
1412 
1413 const wl_interface* zwp_primary_selection_device_v1_interface_data_offer_event_server[1] = {
1414  &zwp_primary_selection_offer_v1_interface,
1415 };
1416 
1417 const wl_interface* zwp_primary_selection_device_v1_interface_selection_event_server[1] = {
1418  &zwp_primary_selection_offer_v1_interface,
1419 };
1420 
1421 const wl_message zwp_primary_selection_device_v1_interface_requests_server[2] = {
1422  {
1423  "set_selection",
1424  "?ou",
1425  zwp_primary_selection_device_v1_interface_set_selection_request_server,
1426  },
1427  {
1428  "destroy",
1429  "",
1430  zwp_primary_selection_device_v1_interface_destroy_request_server,
1431  },
1432 };
1433 
1434 const wl_message zwp_primary_selection_device_v1_interface_events_server[2] = {
1435  {
1436  "data_offer",
1437  "n",
1438  zwp_primary_selection_device_v1_interface_data_offer_event_server,
1439  },
1440  {
1441  "selection",
1442  "?o",
1443  zwp_primary_selection_device_v1_interface_selection_event_server,
1444  },
1445 };
1446 
1447 const wl_interface wayland::server::detail::zwp_primary_selection_device_v1_interface =
1448  {
1449  "zwp_primary_selection_device_v1",
1450  1,
1451  2,
1452  zwp_primary_selection_device_v1_interface_requests_server,
1453  2,
1454  zwp_primary_selection_device_v1_interface_events_server,
1455  };
1456 
1457 const wl_interface* zwp_primary_selection_offer_v1_interface_receive_request_server[2] = {
1458  nullptr,
1459  nullptr,
1460 };
1461 
1462 const wl_interface* zwp_primary_selection_offer_v1_interface_destroy_request_server[0] = {
1463 };
1464 
1465 const wl_interface* zwp_primary_selection_offer_v1_interface_offer_event_server[1] = {
1466  nullptr,
1467 };
1468 
1469 const wl_message zwp_primary_selection_offer_v1_interface_requests_server[2] = {
1470  {
1471  "receive",
1472  "sh",
1473  zwp_primary_selection_offer_v1_interface_receive_request_server,
1474  },
1475  {
1476  "destroy",
1477  "",
1478  zwp_primary_selection_offer_v1_interface_destroy_request_server,
1479  },
1480 };
1481 
1482 const wl_message zwp_primary_selection_offer_v1_interface_events_server[1] = {
1483  {
1484  "offer",
1485  "s",
1486  zwp_primary_selection_offer_v1_interface_offer_event_server,
1487  },
1488 };
1489 
1490 const wl_interface wayland::server::detail::zwp_primary_selection_offer_v1_interface =
1491  {
1492  "zwp_primary_selection_offer_v1",
1493  1,
1494  2,
1495  zwp_primary_selection_offer_v1_interface_requests_server,
1496  1,
1497  zwp_primary_selection_offer_v1_interface_events_server,
1498  };
1499 
1500 const wl_interface* zwp_primary_selection_source_v1_interface_offer_request_server[1] = {
1501  nullptr,
1502 };
1503 
1504 const wl_interface* zwp_primary_selection_source_v1_interface_destroy_request_server[0] = {
1505 };
1506 
1507 const wl_interface* zwp_primary_selection_source_v1_interface_send_event_server[2] = {
1508  nullptr,
1509  nullptr,
1510 };
1511 
1512 const wl_interface* zwp_primary_selection_source_v1_interface_cancelled_event_server[0] = {
1513 };
1514 
1515 const wl_message zwp_primary_selection_source_v1_interface_requests_server[2] = {
1516  {
1517  "offer",
1518  "s",
1519  zwp_primary_selection_source_v1_interface_offer_request_server,
1520  },
1521  {
1522  "destroy",
1523  "",
1524  zwp_primary_selection_source_v1_interface_destroy_request_server,
1525  },
1526 };
1527 
1528 const wl_message zwp_primary_selection_source_v1_interface_events_server[2] = {
1529  {
1530  "send",
1531  "sh",
1532  zwp_primary_selection_source_v1_interface_send_event_server,
1533  },
1534  {
1535  "cancelled",
1536  "",
1537  zwp_primary_selection_source_v1_interface_cancelled_event_server,
1538  },
1539 };
1540 
1541 const wl_interface wayland::server::detail::zwp_primary_selection_source_v1_interface =
1542  {
1543  "zwp_primary_selection_source_v1",
1544  1,
1545  2,
1546  zwp_primary_selection_source_v1_interface_requests_server,
1547  2,
1548  zwp_primary_selection_source_v1_interface_events_server,
1549  };
1550 
1551 const wl_interface* zwp_relative_pointer_manager_v1_interface_destroy_request_server[0] = {
1552 };
1553 
1554 const wl_interface* zwp_relative_pointer_manager_v1_interface_get_relative_pointer_request_server[2] = {
1555  &zwp_relative_pointer_v1_interface,
1556  &pointer_interface,
1557 };
1558 
1559 const wl_message zwp_relative_pointer_manager_v1_interface_requests_server[2] = {
1560  {
1561  "destroy",
1562  "",
1563  zwp_relative_pointer_manager_v1_interface_destroy_request_server,
1564  },
1565  {
1566  "get_relative_pointer",
1567  "no",
1568  zwp_relative_pointer_manager_v1_interface_get_relative_pointer_request_server,
1569  },
1570 };
1571 
1572 const wl_message zwp_relative_pointer_manager_v1_interface_events_server[0] = {
1573 };
1574 
1575 const wl_interface wayland::server::detail::zwp_relative_pointer_manager_v1_interface =
1576  {
1577  "zwp_relative_pointer_manager_v1",
1578  1,
1579  2,
1580  zwp_relative_pointer_manager_v1_interface_requests_server,
1581  0,
1582  zwp_relative_pointer_manager_v1_interface_events_server,
1583  };
1584 
1585 const wl_interface* zwp_relative_pointer_v1_interface_destroy_request_server[0] = {
1586 };
1587 
1588 const wl_interface* zwp_relative_pointer_v1_interface_relative_motion_event_server[6] = {
1589  nullptr,
1590  nullptr,
1591  nullptr,
1592  nullptr,
1593  nullptr,
1594  nullptr,
1595 };
1596 
1597 const wl_message zwp_relative_pointer_v1_interface_requests_server[1] = {
1598  {
1599  "destroy",
1600  "",
1601  zwp_relative_pointer_v1_interface_destroy_request_server,
1602  },
1603 };
1604 
1605 const wl_message zwp_relative_pointer_v1_interface_events_server[1] = {
1606  {
1607  "relative_motion",
1608  "uuffff",
1609  zwp_relative_pointer_v1_interface_relative_motion_event_server,
1610  },
1611 };
1612 
1613 const wl_interface wayland::server::detail::zwp_relative_pointer_v1_interface =
1614  {
1615  "zwp_relative_pointer_v1",
1616  1,
1617  1,
1618  zwp_relative_pointer_v1_interface_requests_server,
1619  1,
1620  zwp_relative_pointer_v1_interface_events_server,
1621  };
1622 
1623 const wl_interface* zwp_tablet_manager_v1_interface_get_tablet_seat_request_server[2] = {
1624  &zwp_tablet_seat_v1_interface,
1625  &seat_interface,
1626 };
1627 
1628 const wl_interface* zwp_tablet_manager_v1_interface_destroy_request_server[0] = {
1629 };
1630 
1631 const wl_message zwp_tablet_manager_v1_interface_requests_server[2] = {
1632  {
1633  "get_tablet_seat",
1634  "no",
1635  zwp_tablet_manager_v1_interface_get_tablet_seat_request_server,
1636  },
1637  {
1638  "destroy",
1639  "",
1640  zwp_tablet_manager_v1_interface_destroy_request_server,
1641  },
1642 };
1643 
1644 const wl_message zwp_tablet_manager_v1_interface_events_server[0] = {
1645 };
1646 
1647 const wl_interface wayland::server::detail::zwp_tablet_manager_v1_interface =
1648  {
1649  "zwp_tablet_manager_v1",
1650  1,
1651  2,
1652  zwp_tablet_manager_v1_interface_requests_server,
1653  0,
1654  zwp_tablet_manager_v1_interface_events_server,
1655  };
1656 
1657 const wl_interface* zwp_tablet_seat_v1_interface_destroy_request_server[0] = {
1658 };
1659 
1660 const wl_interface* zwp_tablet_seat_v1_interface_tablet_added_event_server[1] = {
1661  &zwp_tablet_v1_interface,
1662 };
1663 
1664 const wl_interface* zwp_tablet_seat_v1_interface_tool_added_event_server[1] = {
1665  &zwp_tablet_tool_v1_interface,
1666 };
1667 
1668 const wl_message zwp_tablet_seat_v1_interface_requests_server[1] = {
1669  {
1670  "destroy",
1671  "",
1672  zwp_tablet_seat_v1_interface_destroy_request_server,
1673  },
1674 };
1675 
1676 const wl_message zwp_tablet_seat_v1_interface_events_server[2] = {
1677  {
1678  "tablet_added",
1679  "n",
1680  zwp_tablet_seat_v1_interface_tablet_added_event_server,
1681  },
1682  {
1683  "tool_added",
1684  "n",
1685  zwp_tablet_seat_v1_interface_tool_added_event_server,
1686  },
1687 };
1688 
1689 const wl_interface wayland::server::detail::zwp_tablet_seat_v1_interface =
1690  {
1691  "zwp_tablet_seat_v1",
1692  1,
1693  1,
1694  zwp_tablet_seat_v1_interface_requests_server,
1695  2,
1696  zwp_tablet_seat_v1_interface_events_server,
1697  };
1698 
1699 const wl_interface* zwp_tablet_tool_v1_interface_set_cursor_request_server[4] = {
1700  nullptr,
1701  &surface_interface,
1702  nullptr,
1703  nullptr,
1704 };
1705 
1706 const wl_interface* zwp_tablet_tool_v1_interface_destroy_request_server[0] = {
1707 };
1708 
1709 const wl_interface* zwp_tablet_tool_v1_interface_type_event_server[1] = {
1710  nullptr,
1711 };
1712 
1713 const wl_interface* zwp_tablet_tool_v1_interface_hardware_serial_event_server[2] = {
1714  nullptr,
1715  nullptr,
1716 };
1717 
1718 const wl_interface* zwp_tablet_tool_v1_interface_hardware_id_wacom_event_server[2] = {
1719  nullptr,
1720  nullptr,
1721 };
1722 
1723 const wl_interface* zwp_tablet_tool_v1_interface_capability_event_server[1] = {
1724  nullptr,
1725 };
1726 
1727 const wl_interface* zwp_tablet_tool_v1_interface_done_event_server[0] = {
1728 };
1729 
1730 const wl_interface* zwp_tablet_tool_v1_interface_removed_event_server[0] = {
1731 };
1732 
1733 const wl_interface* zwp_tablet_tool_v1_interface_proximity_in_event_server[3] = {
1734  nullptr,
1735  &zwp_tablet_v1_interface,
1736  &surface_interface,
1737 };
1738 
1739 const wl_interface* zwp_tablet_tool_v1_interface_proximity_out_event_server[0] = {
1740 };
1741 
1742 const wl_interface* zwp_tablet_tool_v1_interface_down_event_server[1] = {
1743  nullptr,
1744 };
1745 
1746 const wl_interface* zwp_tablet_tool_v1_interface_up_event_server[0] = {
1747 };
1748 
1749 const wl_interface* zwp_tablet_tool_v1_interface_motion_event_server[2] = {
1750  nullptr,
1751  nullptr,
1752 };
1753 
1754 const wl_interface* zwp_tablet_tool_v1_interface_pressure_event_server[1] = {
1755  nullptr,
1756 };
1757 
1758 const wl_interface* zwp_tablet_tool_v1_interface_distance_event_server[1] = {
1759  nullptr,
1760 };
1761 
1762 const wl_interface* zwp_tablet_tool_v1_interface_tilt_event_server[2] = {
1763  nullptr,
1764  nullptr,
1765 };
1766 
1767 const wl_interface* zwp_tablet_tool_v1_interface_rotation_event_server[1] = {
1768  nullptr,
1769 };
1770 
1771 const wl_interface* zwp_tablet_tool_v1_interface_slider_event_server[1] = {
1772  nullptr,
1773 };
1774 
1775 const wl_interface* zwp_tablet_tool_v1_interface_wheel_event_server[2] = {
1776  nullptr,
1777  nullptr,
1778 };
1779 
1780 const wl_interface* zwp_tablet_tool_v1_interface_button_event_server[3] = {
1781  nullptr,
1782  nullptr,
1783  nullptr,
1784 };
1785 
1786 const wl_interface* zwp_tablet_tool_v1_interface_frame_event_server[1] = {
1787  nullptr,
1788 };
1789 
1790 const wl_message zwp_tablet_tool_v1_interface_requests_server[2] = {
1791  {
1792  "set_cursor",
1793  "u?oii",
1794  zwp_tablet_tool_v1_interface_set_cursor_request_server,
1795  },
1796  {
1797  "destroy",
1798  "",
1799  zwp_tablet_tool_v1_interface_destroy_request_server,
1800  },
1801 };
1802 
1803 const wl_message zwp_tablet_tool_v1_interface_events_server[19] = {
1804  {
1805  "type",
1806  "u",
1807  zwp_tablet_tool_v1_interface_type_event_server,
1808  },
1809  {
1810  "hardware_serial",
1811  "uu",
1812  zwp_tablet_tool_v1_interface_hardware_serial_event_server,
1813  },
1814  {
1815  "hardware_id_wacom",
1816  "uu",
1817  zwp_tablet_tool_v1_interface_hardware_id_wacom_event_server,
1818  },
1819  {
1820  "capability",
1821  "u",
1822  zwp_tablet_tool_v1_interface_capability_event_server,
1823  },
1824  {
1825  "done",
1826  "",
1827  zwp_tablet_tool_v1_interface_done_event_server,
1828  },
1829  {
1830  "removed",
1831  "",
1832  zwp_tablet_tool_v1_interface_removed_event_server,
1833  },
1834  {
1835  "proximity_in",
1836  "uoo",
1837  zwp_tablet_tool_v1_interface_proximity_in_event_server,
1838  },
1839  {
1840  "proximity_out",
1841  "",
1842  zwp_tablet_tool_v1_interface_proximity_out_event_server,
1843  },
1844  {
1845  "down",
1846  "u",
1847  zwp_tablet_tool_v1_interface_down_event_server,
1848  },
1849  {
1850  "up",
1851  "",
1852  zwp_tablet_tool_v1_interface_up_event_server,
1853  },
1854  {
1855  "motion",
1856  "ff",
1857  zwp_tablet_tool_v1_interface_motion_event_server,
1858  },
1859  {
1860  "pressure",
1861  "u",
1862  zwp_tablet_tool_v1_interface_pressure_event_server,
1863  },
1864  {
1865  "distance",
1866  "u",
1867  zwp_tablet_tool_v1_interface_distance_event_server,
1868  },
1869  {
1870  "tilt",
1871  "ii",
1872  zwp_tablet_tool_v1_interface_tilt_event_server,
1873  },
1874  {
1875  "rotation",
1876  "i",
1877  zwp_tablet_tool_v1_interface_rotation_event_server,
1878  },
1879  {
1880  "slider",
1881  "i",
1882  zwp_tablet_tool_v1_interface_slider_event_server,
1883  },
1884  {
1885  "wheel",
1886  "ii",
1887  zwp_tablet_tool_v1_interface_wheel_event_server,
1888  },
1889  {
1890  "button",
1891  "uuu",
1892  zwp_tablet_tool_v1_interface_button_event_server,
1893  },
1894  {
1895  "frame",
1896  "u",
1897  zwp_tablet_tool_v1_interface_frame_event_server,
1898  },
1899 };
1900 
1901 const wl_interface wayland::server::detail::zwp_tablet_tool_v1_interface =
1902  {
1903  "zwp_tablet_tool_v1",
1904  1,
1905  2,
1906  zwp_tablet_tool_v1_interface_requests_server,
1907  19,
1908  zwp_tablet_tool_v1_interface_events_server,
1909  };
1910 
1911 const wl_interface* zwp_tablet_v1_interface_destroy_request_server[0] = {
1912 };
1913 
1914 const wl_interface* zwp_tablet_v1_interface_name_event_server[1] = {
1915  nullptr,
1916 };
1917 
1918 const wl_interface* zwp_tablet_v1_interface_id_event_server[2] = {
1919  nullptr,
1920  nullptr,
1921 };
1922 
1923 const wl_interface* zwp_tablet_v1_interface_path_event_server[1] = {
1924  nullptr,
1925 };
1926 
1927 const wl_interface* zwp_tablet_v1_interface_done_event_server[0] = {
1928 };
1929 
1930 const wl_interface* zwp_tablet_v1_interface_removed_event_server[0] = {
1931 };
1932 
1933 const wl_message zwp_tablet_v1_interface_requests_server[1] = {
1934  {
1935  "destroy",
1936  "",
1937  zwp_tablet_v1_interface_destroy_request_server,
1938  },
1939 };
1940 
1941 const wl_message zwp_tablet_v1_interface_events_server[5] = {
1942  {
1943  "name",
1944  "s",
1945  zwp_tablet_v1_interface_name_event_server,
1946  },
1947  {
1948  "id",
1949  "uu",
1950  zwp_tablet_v1_interface_id_event_server,
1951  },
1952  {
1953  "path",
1954  "s",
1955  zwp_tablet_v1_interface_path_event_server,
1956  },
1957  {
1958  "done",
1959  "",
1960  zwp_tablet_v1_interface_done_event_server,
1961  },
1962  {
1963  "removed",
1964  "",
1965  zwp_tablet_v1_interface_removed_event_server,
1966  },
1967 };
1968 
1969 const wl_interface wayland::server::detail::zwp_tablet_v1_interface =
1970  {
1971  "zwp_tablet_v1",
1972  1,
1973  1,
1974  zwp_tablet_v1_interface_requests_server,
1975  5,
1976  zwp_tablet_v1_interface_events_server,
1977  };
1978 
1979 const wl_interface* zwp_tablet_manager_v2_interface_get_tablet_seat_request_server[2] = {
1980  &zwp_tablet_seat_v2_interface,
1981  &seat_interface,
1982 };
1983 
1984 const wl_interface* zwp_tablet_manager_v2_interface_destroy_request_server[0] = {
1985 };
1986 
1987 const wl_message zwp_tablet_manager_v2_interface_requests_server[2] = {
1988  {
1989  "get_tablet_seat",
1990  "no",
1991  zwp_tablet_manager_v2_interface_get_tablet_seat_request_server,
1992  },
1993  {
1994  "destroy",
1995  "",
1996  zwp_tablet_manager_v2_interface_destroy_request_server,
1997  },
1998 };
1999 
2000 const wl_message zwp_tablet_manager_v2_interface_events_server[0] = {
2001 };
2002 
2003 const wl_interface wayland::server::detail::zwp_tablet_manager_v2_interface =
2004  {
2005  "zwp_tablet_manager_v2",
2006  1,
2007  2,
2008  zwp_tablet_manager_v2_interface_requests_server,
2009  0,
2010  zwp_tablet_manager_v2_interface_events_server,
2011  };
2012 
2013 const wl_interface* zwp_tablet_seat_v2_interface_destroy_request_server[0] = {
2014 };
2015 
2016 const wl_interface* zwp_tablet_seat_v2_interface_tablet_added_event_server[1] = {
2017  &zwp_tablet_v2_interface,
2018 };
2019 
2020 const wl_interface* zwp_tablet_seat_v2_interface_tool_added_event_server[1] = {
2021  &zwp_tablet_tool_v2_interface,
2022 };
2023 
2024 const wl_interface* zwp_tablet_seat_v2_interface_pad_added_event_server[1] = {
2025  &zwp_tablet_pad_v2_interface,
2026 };
2027 
2028 const wl_message zwp_tablet_seat_v2_interface_requests_server[1] = {
2029  {
2030  "destroy",
2031  "",
2032  zwp_tablet_seat_v2_interface_destroy_request_server,
2033  },
2034 };
2035 
2036 const wl_message zwp_tablet_seat_v2_interface_events_server[3] = {
2037  {
2038  "tablet_added",
2039  "n",
2040  zwp_tablet_seat_v2_interface_tablet_added_event_server,
2041  },
2042  {
2043  "tool_added",
2044  "n",
2045  zwp_tablet_seat_v2_interface_tool_added_event_server,
2046  },
2047  {
2048  "pad_added",
2049  "n",
2050  zwp_tablet_seat_v2_interface_pad_added_event_server,
2051  },
2052 };
2053 
2054 const wl_interface wayland::server::detail::zwp_tablet_seat_v2_interface =
2055  {
2056  "zwp_tablet_seat_v2",
2057  1,
2058  1,
2059  zwp_tablet_seat_v2_interface_requests_server,
2060  3,
2061  zwp_tablet_seat_v2_interface_events_server,
2062  };
2063 
2064 const wl_interface* zwp_tablet_tool_v2_interface_set_cursor_request_server[4] = {
2065  nullptr,
2066  &surface_interface,
2067  nullptr,
2068  nullptr,
2069 };
2070 
2071 const wl_interface* zwp_tablet_tool_v2_interface_destroy_request_server[0] = {
2072 };
2073 
2074 const wl_interface* zwp_tablet_tool_v2_interface_type_event_server[1] = {
2075  nullptr,
2076 };
2077 
2078 const wl_interface* zwp_tablet_tool_v2_interface_hardware_serial_event_server[2] = {
2079  nullptr,
2080  nullptr,
2081 };
2082 
2083 const wl_interface* zwp_tablet_tool_v2_interface_hardware_id_wacom_event_server[2] = {
2084  nullptr,
2085  nullptr,
2086 };
2087 
2088 const wl_interface* zwp_tablet_tool_v2_interface_capability_event_server[1] = {
2089  nullptr,
2090 };
2091 
2092 const wl_interface* zwp_tablet_tool_v2_interface_done_event_server[0] = {
2093 };
2094 
2095 const wl_interface* zwp_tablet_tool_v2_interface_removed_event_server[0] = {
2096 };
2097 
2098 const wl_interface* zwp_tablet_tool_v2_interface_proximity_in_event_server[3] = {
2099  nullptr,
2100  &zwp_tablet_v2_interface,
2101  &surface_interface,
2102 };
2103 
2104 const wl_interface* zwp_tablet_tool_v2_interface_proximity_out_event_server[0] = {
2105 };
2106 
2107 const wl_interface* zwp_tablet_tool_v2_interface_down_event_server[1] = {
2108  nullptr,
2109 };
2110 
2111 const wl_interface* zwp_tablet_tool_v2_interface_up_event_server[0] = {
2112 };
2113 
2114 const wl_interface* zwp_tablet_tool_v2_interface_motion_event_server[2] = {
2115  nullptr,
2116  nullptr,
2117 };
2118 
2119 const wl_interface* zwp_tablet_tool_v2_interface_pressure_event_server[1] = {
2120  nullptr,
2121 };
2122 
2123 const wl_interface* zwp_tablet_tool_v2_interface_distance_event_server[1] = {
2124  nullptr,
2125 };
2126 
2127 const wl_interface* zwp_tablet_tool_v2_interface_tilt_event_server[2] = {
2128  nullptr,
2129  nullptr,
2130 };
2131 
2132 const wl_interface* zwp_tablet_tool_v2_interface_rotation_event_server[1] = {
2133  nullptr,
2134 };
2135 
2136 const wl_interface* zwp_tablet_tool_v2_interface_slider_event_server[1] = {
2137  nullptr,
2138 };
2139 
2140 const wl_interface* zwp_tablet_tool_v2_interface_wheel_event_server[2] = {
2141  nullptr,
2142  nullptr,
2143 };
2144 
2145 const wl_interface* zwp_tablet_tool_v2_interface_button_event_server[3] = {
2146  nullptr,
2147  nullptr,
2148  nullptr,
2149 };
2150 
2151 const wl_interface* zwp_tablet_tool_v2_interface_frame_event_server[1] = {
2152  nullptr,
2153 };
2154 
2155 const wl_message zwp_tablet_tool_v2_interface_requests_server[2] = {
2156  {
2157  "set_cursor",
2158  "u?oii",
2159  zwp_tablet_tool_v2_interface_set_cursor_request_server,
2160  },
2161  {
2162  "destroy",
2163  "",
2164  zwp_tablet_tool_v2_interface_destroy_request_server,
2165  },
2166 };
2167 
2168 const wl_message zwp_tablet_tool_v2_interface_events_server[19] = {
2169  {
2170  "type",
2171  "u",
2172  zwp_tablet_tool_v2_interface_type_event_server,
2173  },
2174  {
2175  "hardware_serial",
2176  "uu",
2177  zwp_tablet_tool_v2_interface_hardware_serial_event_server,
2178  },
2179  {
2180  "hardware_id_wacom",
2181  "uu",
2182  zwp_tablet_tool_v2_interface_hardware_id_wacom_event_server,
2183  },
2184  {
2185  "capability",
2186  "u",
2187  zwp_tablet_tool_v2_interface_capability_event_server,
2188  },
2189  {
2190  "done",
2191  "",
2192  zwp_tablet_tool_v2_interface_done_event_server,
2193  },
2194  {
2195  "removed",
2196  "",
2197  zwp_tablet_tool_v2_interface_removed_event_server,
2198  },
2199  {
2200  "proximity_in",
2201  "uoo",
2202  zwp_tablet_tool_v2_interface_proximity_in_event_server,
2203  },
2204  {
2205  "proximity_out",
2206  "",
2207  zwp_tablet_tool_v2_interface_proximity_out_event_server,
2208  },
2209  {
2210  "down",
2211  "u",
2212  zwp_tablet_tool_v2_interface_down_event_server,
2213  },
2214  {
2215  "up",
2216  "",
2217  zwp_tablet_tool_v2_interface_up_event_server,
2218  },
2219  {
2220  "motion",
2221  "ff",
2222  zwp_tablet_tool_v2_interface_motion_event_server,
2223  },
2224  {
2225  "pressure",
2226  "u",
2227  zwp_tablet_tool_v2_interface_pressure_event_server,
2228  },
2229  {
2230  "distance",
2231  "u",
2232  zwp_tablet_tool_v2_interface_distance_event_server,
2233  },
2234  {
2235  "tilt",
2236  "ff",
2237  zwp_tablet_tool_v2_interface_tilt_event_server,
2238  },
2239  {
2240  "rotation",
2241  "f",
2242  zwp_tablet_tool_v2_interface_rotation_event_server,
2243  },
2244  {
2245  "slider",
2246  "i",
2247  zwp_tablet_tool_v2_interface_slider_event_server,
2248  },
2249  {
2250  "wheel",
2251  "fi",
2252  zwp_tablet_tool_v2_interface_wheel_event_server,
2253  },
2254  {
2255  "button",
2256  "uuu",
2257  zwp_tablet_tool_v2_interface_button_event_server,
2258  },
2259  {
2260  "frame",
2261  "u",
2262  zwp_tablet_tool_v2_interface_frame_event_server,
2263  },
2264 };
2265 
2266 const wl_interface wayland::server::detail::zwp_tablet_tool_v2_interface =
2267  {
2268  "zwp_tablet_tool_v2",
2269  1,
2270  2,
2271  zwp_tablet_tool_v2_interface_requests_server,
2272  19,
2273  zwp_tablet_tool_v2_interface_events_server,
2274  };
2275 
2276 const wl_interface* zwp_tablet_v2_interface_destroy_request_server[0] = {
2277 };
2278 
2279 const wl_interface* zwp_tablet_v2_interface_name_event_server[1] = {
2280  nullptr,
2281 };
2282 
2283 const wl_interface* zwp_tablet_v2_interface_id_event_server[2] = {
2284  nullptr,
2285  nullptr,
2286 };
2287 
2288 const wl_interface* zwp_tablet_v2_interface_path_event_server[1] = {
2289  nullptr,
2290 };
2291 
2292 const wl_interface* zwp_tablet_v2_interface_done_event_server[0] = {
2293 };
2294 
2295 const wl_interface* zwp_tablet_v2_interface_removed_event_server[0] = {
2296 };
2297 
2298 const wl_message zwp_tablet_v2_interface_requests_server[1] = {
2299  {
2300  "destroy",
2301  "",
2302  zwp_tablet_v2_interface_destroy_request_server,
2303  },
2304 };
2305 
2306 const wl_message zwp_tablet_v2_interface_events_server[5] = {
2307  {
2308  "name",
2309  "s",
2310  zwp_tablet_v2_interface_name_event_server,
2311  },
2312  {
2313  "id",
2314  "uu",
2315  zwp_tablet_v2_interface_id_event_server,
2316  },
2317  {
2318  "path",
2319  "s",
2320  zwp_tablet_v2_interface_path_event_server,
2321  },
2322  {
2323  "done",
2324  "",
2325  zwp_tablet_v2_interface_done_event_server,
2326  },
2327  {
2328  "removed",
2329  "",
2330  zwp_tablet_v2_interface_removed_event_server,
2331  },
2332 };
2333 
2334 const wl_interface wayland::server::detail::zwp_tablet_v2_interface =
2335  {
2336  "zwp_tablet_v2",
2337  1,
2338  1,
2339  zwp_tablet_v2_interface_requests_server,
2340  5,
2341  zwp_tablet_v2_interface_events_server,
2342  };
2343 
2344 const wl_interface* zwp_tablet_pad_ring_v2_interface_set_feedback_request_server[2] = {
2345  nullptr,
2346  nullptr,
2347 };
2348 
2349 const wl_interface* zwp_tablet_pad_ring_v2_interface_destroy_request_server[0] = {
2350 };
2351 
2352 const wl_interface* zwp_tablet_pad_ring_v2_interface_source_event_server[1] = {
2353  nullptr,
2354 };
2355 
2356 const wl_interface* zwp_tablet_pad_ring_v2_interface_angle_event_server[1] = {
2357  nullptr,
2358 };
2359 
2360 const wl_interface* zwp_tablet_pad_ring_v2_interface_stop_event_server[0] = {
2361 };
2362 
2363 const wl_interface* zwp_tablet_pad_ring_v2_interface_frame_event_server[1] = {
2364  nullptr,
2365 };
2366 
2367 const wl_message zwp_tablet_pad_ring_v2_interface_requests_server[2] = {
2368  {
2369  "set_feedback",
2370  "su",
2371  zwp_tablet_pad_ring_v2_interface_set_feedback_request_server,
2372  },
2373  {
2374  "destroy",
2375  "",
2376  zwp_tablet_pad_ring_v2_interface_destroy_request_server,
2377  },
2378 };
2379 
2380 const wl_message zwp_tablet_pad_ring_v2_interface_events_server[4] = {
2381  {
2382  "source",
2383  "u",
2384  zwp_tablet_pad_ring_v2_interface_source_event_server,
2385  },
2386  {
2387  "angle",
2388  "f",
2389  zwp_tablet_pad_ring_v2_interface_angle_event_server,
2390  },
2391  {
2392  "stop",
2393  "",
2394  zwp_tablet_pad_ring_v2_interface_stop_event_server,
2395  },
2396  {
2397  "frame",
2398  "u",
2399  zwp_tablet_pad_ring_v2_interface_frame_event_server,
2400  },
2401 };
2402 
2403 const wl_interface wayland::server::detail::zwp_tablet_pad_ring_v2_interface =
2404  {
2405  "zwp_tablet_pad_ring_v2",
2406  1,
2407  2,
2408  zwp_tablet_pad_ring_v2_interface_requests_server,
2409  4,
2410  zwp_tablet_pad_ring_v2_interface_events_server,
2411  };
2412 
2413 const wl_interface* zwp_tablet_pad_strip_v2_interface_set_feedback_request_server[2] = {
2414  nullptr,
2415  nullptr,
2416 };
2417 
2418 const wl_interface* zwp_tablet_pad_strip_v2_interface_destroy_request_server[0] = {
2419 };
2420 
2421 const wl_interface* zwp_tablet_pad_strip_v2_interface_source_event_server[1] = {
2422  nullptr,
2423 };
2424 
2425 const wl_interface* zwp_tablet_pad_strip_v2_interface_position_event_server[1] = {
2426  nullptr,
2427 };
2428 
2429 const wl_interface* zwp_tablet_pad_strip_v2_interface_stop_event_server[0] = {
2430 };
2431 
2432 const wl_interface* zwp_tablet_pad_strip_v2_interface_frame_event_server[1] = {
2433  nullptr,
2434 };
2435 
2436 const wl_message zwp_tablet_pad_strip_v2_interface_requests_server[2] = {
2437  {
2438  "set_feedback",
2439  "su",
2440  zwp_tablet_pad_strip_v2_interface_set_feedback_request_server,
2441  },
2442  {
2443  "destroy",
2444  "",
2445  zwp_tablet_pad_strip_v2_interface_destroy_request_server,
2446  },
2447 };
2448 
2449 const wl_message zwp_tablet_pad_strip_v2_interface_events_server[4] = {
2450  {
2451  "source",
2452  "u",
2453  zwp_tablet_pad_strip_v2_interface_source_event_server,
2454  },
2455  {
2456  "position",
2457  "u",
2458  zwp_tablet_pad_strip_v2_interface_position_event_server,
2459  },
2460  {
2461  "stop",
2462  "",
2463  zwp_tablet_pad_strip_v2_interface_stop_event_server,
2464  },
2465  {
2466  "frame",
2467  "u",
2468  zwp_tablet_pad_strip_v2_interface_frame_event_server,
2469  },
2470 };
2471 
2472 const wl_interface wayland::server::detail::zwp_tablet_pad_strip_v2_interface =
2473  {
2474  "zwp_tablet_pad_strip_v2",
2475  1,
2476  2,
2477  zwp_tablet_pad_strip_v2_interface_requests_server,
2478  4,
2479  zwp_tablet_pad_strip_v2_interface_events_server,
2480  };
2481 
2482 const wl_interface* zwp_tablet_pad_group_v2_interface_destroy_request_server[0] = {
2483 };
2484 
2485 const wl_interface* zwp_tablet_pad_group_v2_interface_buttons_event_server[1] = {
2486  nullptr,
2487 };
2488 
2489 const wl_interface* zwp_tablet_pad_group_v2_interface_ring_event_server[1] = {
2490  &zwp_tablet_pad_ring_v2_interface,
2491 };
2492 
2493 const wl_interface* zwp_tablet_pad_group_v2_interface_strip_event_server[1] = {
2494  &zwp_tablet_pad_strip_v2_interface,
2495 };
2496 
2497 const wl_interface* zwp_tablet_pad_group_v2_interface_modes_event_server[1] = {
2498  nullptr,
2499 };
2500 
2501 const wl_interface* zwp_tablet_pad_group_v2_interface_done_event_server[0] = {
2502 };
2503 
2504 const wl_interface* zwp_tablet_pad_group_v2_interface_mode_switch_event_server[3] = {
2505  nullptr,
2506  nullptr,
2507  nullptr,
2508 };
2509 
2510 const wl_message zwp_tablet_pad_group_v2_interface_requests_server[1] = {
2511  {
2512  "destroy",
2513  "",
2514  zwp_tablet_pad_group_v2_interface_destroy_request_server,
2515  },
2516 };
2517 
2518 const wl_message zwp_tablet_pad_group_v2_interface_events_server[6] = {
2519  {
2520  "buttons",
2521  "a",
2522  zwp_tablet_pad_group_v2_interface_buttons_event_server,
2523  },
2524  {
2525  "ring",
2526  "n",
2527  zwp_tablet_pad_group_v2_interface_ring_event_server,
2528  },
2529  {
2530  "strip",
2531  "n",
2532  zwp_tablet_pad_group_v2_interface_strip_event_server,
2533  },
2534  {
2535  "modes",
2536  "u",
2537  zwp_tablet_pad_group_v2_interface_modes_event_server,
2538  },
2539  {
2540  "done",
2541  "",
2542  zwp_tablet_pad_group_v2_interface_done_event_server,
2543  },
2544  {
2545  "mode_switch",
2546  "uuu",
2547  zwp_tablet_pad_group_v2_interface_mode_switch_event_server,
2548  },
2549 };
2550 
2551 const wl_interface wayland::server::detail::zwp_tablet_pad_group_v2_interface =
2552  {
2553  "zwp_tablet_pad_group_v2",
2554  1,
2555  1,
2556  zwp_tablet_pad_group_v2_interface_requests_server,
2557  6,
2558  zwp_tablet_pad_group_v2_interface_events_server,
2559  };
2560 
2561 const wl_interface* zwp_tablet_pad_v2_interface_set_feedback_request_server[3] = {
2562  nullptr,
2563  nullptr,
2564  nullptr,
2565 };
2566 
2567 const wl_interface* zwp_tablet_pad_v2_interface_destroy_request_server[0] = {
2568 };
2569 
2570 const wl_interface* zwp_tablet_pad_v2_interface_group_event_server[1] = {
2571  &zwp_tablet_pad_group_v2_interface,
2572 };
2573 
2574 const wl_interface* zwp_tablet_pad_v2_interface_path_event_server[1] = {
2575  nullptr,
2576 };
2577 
2578 const wl_interface* zwp_tablet_pad_v2_interface_buttons_event_server[1] = {
2579  nullptr,
2580 };
2581 
2582 const wl_interface* zwp_tablet_pad_v2_interface_done_event_server[0] = {
2583 };
2584 
2585 const wl_interface* zwp_tablet_pad_v2_interface_button_event_server[3] = {
2586  nullptr,
2587  nullptr,
2588  nullptr,
2589 };
2590 
2591 const wl_interface* zwp_tablet_pad_v2_interface_enter_event_server[3] = {
2592  nullptr,
2593  &zwp_tablet_v2_interface,
2594  &surface_interface,
2595 };
2596 
2597 const wl_interface* zwp_tablet_pad_v2_interface_leave_event_server[2] = {
2598  nullptr,
2599  &surface_interface,
2600 };
2601 
2602 const wl_interface* zwp_tablet_pad_v2_interface_removed_event_server[0] = {
2603 };
2604 
2605 const wl_message zwp_tablet_pad_v2_interface_requests_server[2] = {
2606  {
2607  "set_feedback",
2608  "usu",
2609  zwp_tablet_pad_v2_interface_set_feedback_request_server,
2610  },
2611  {
2612  "destroy",
2613  "",
2614  zwp_tablet_pad_v2_interface_destroy_request_server,
2615  },
2616 };
2617 
2618 const wl_message zwp_tablet_pad_v2_interface_events_server[8] = {
2619  {
2620  "group",
2621  "n",
2622  zwp_tablet_pad_v2_interface_group_event_server,
2623  },
2624  {
2625  "path",
2626  "s",
2627  zwp_tablet_pad_v2_interface_path_event_server,
2628  },
2629  {
2630  "buttons",
2631  "u",
2632  zwp_tablet_pad_v2_interface_buttons_event_server,
2633  },
2634  {
2635  "done",
2636  "",
2637  zwp_tablet_pad_v2_interface_done_event_server,
2638  },
2639  {
2640  "button",
2641  "uuu",
2642  zwp_tablet_pad_v2_interface_button_event_server,
2643  },
2644  {
2645  "enter",
2646  "uoo",
2647  zwp_tablet_pad_v2_interface_enter_event_server,
2648  },
2649  {
2650  "leave",
2651  "uo",
2652  zwp_tablet_pad_v2_interface_leave_event_server,
2653  },
2654  {
2655  "removed",
2656  "",
2657  zwp_tablet_pad_v2_interface_removed_event_server,
2658  },
2659 };
2660 
2661 const wl_interface wayland::server::detail::zwp_tablet_pad_v2_interface =
2662  {
2663  "zwp_tablet_pad_v2",
2664  1,
2665  2,
2666  zwp_tablet_pad_v2_interface_requests_server,
2667  8,
2668  zwp_tablet_pad_v2_interface_events_server,
2669  };
2670 
2671 const wl_interface* zwp_text_input_v1_interface_activate_request_server[2] = {
2672  &seat_interface,
2673  &surface_interface,
2674 };
2675 
2676 const wl_interface* zwp_text_input_v1_interface_deactivate_request_server[1] = {
2677  &seat_interface,
2678 };
2679 
2680 const wl_interface* zwp_text_input_v1_interface_show_input_panel_request_server[0] = {
2681 };
2682 
2683 const wl_interface* zwp_text_input_v1_interface_hide_input_panel_request_server[0] = {
2684 };
2685 
2686 const wl_interface* zwp_text_input_v1_interface_reset_request_server[0] = {
2687 };
2688 
2689 const wl_interface* zwp_text_input_v1_interface_set_surrounding_text_request_server[3] = {
2690  nullptr,
2691  nullptr,
2692  nullptr,
2693 };
2694 
2695 const wl_interface* zwp_text_input_v1_interface_set_content_type_request_server[2] = {
2696  nullptr,
2697  nullptr,
2698 };
2699 
2700 const wl_interface* zwp_text_input_v1_interface_set_cursor_rectangle_request_server[4] = {
2701  nullptr,
2702  nullptr,
2703  nullptr,
2704  nullptr,
2705 };
2706 
2707 const wl_interface* zwp_text_input_v1_interface_set_preferred_language_request_server[1] = {
2708  nullptr,
2709 };
2710 
2711 const wl_interface* zwp_text_input_v1_interface_commit_state_request_server[1] = {
2712  nullptr,
2713 };
2714 
2715 const wl_interface* zwp_text_input_v1_interface_invoke_action_request_server[2] = {
2716  nullptr,
2717  nullptr,
2718 };
2719 
2720 const wl_interface* zwp_text_input_v1_interface_enter_event_server[1] = {
2721  &surface_interface,
2722 };
2723 
2724 const wl_interface* zwp_text_input_v1_interface_leave_event_server[0] = {
2725 };
2726 
2727 const wl_interface* zwp_text_input_v1_interface_modifiers_map_event_server[1] = {
2728  nullptr,
2729 };
2730 
2731 const wl_interface* zwp_text_input_v1_interface_input_panel_state_event_server[1] = {
2732  nullptr,
2733 };
2734 
2735 const wl_interface* zwp_text_input_v1_interface_preedit_string_event_server[3] = {
2736  nullptr,
2737  nullptr,
2738  nullptr,
2739 };
2740 
2741 const wl_interface* zwp_text_input_v1_interface_preedit_styling_event_server[3] = {
2742  nullptr,
2743  nullptr,
2744  nullptr,
2745 };
2746 
2747 const wl_interface* zwp_text_input_v1_interface_preedit_cursor_event_server[1] = {
2748  nullptr,
2749 };
2750 
2751 const wl_interface* zwp_text_input_v1_interface_commit_string_event_server[2] = {
2752  nullptr,
2753  nullptr,
2754 };
2755 
2756 const wl_interface* zwp_text_input_v1_interface_cursor_position_event_server[2] = {
2757  nullptr,
2758  nullptr,
2759 };
2760 
2761 const wl_interface* zwp_text_input_v1_interface_delete_surrounding_text_event_server[2] = {
2762  nullptr,
2763  nullptr,
2764 };
2765 
2766 const wl_interface* zwp_text_input_v1_interface_keysym_event_server[5] = {
2767  nullptr,
2768  nullptr,
2769  nullptr,
2770  nullptr,
2771  nullptr,
2772 };
2773 
2774 const wl_interface* zwp_text_input_v1_interface_language_event_server[2] = {
2775  nullptr,
2776  nullptr,
2777 };
2778 
2779 const wl_interface* zwp_text_input_v1_interface_text_direction_event_server[2] = {
2780  nullptr,
2781  nullptr,
2782 };
2783 
2784 const wl_message zwp_text_input_v1_interface_requests_server[11] = {
2785  {
2786  "activate",
2787  "oo",
2788  zwp_text_input_v1_interface_activate_request_server,
2789  },
2790  {
2791  "deactivate",
2792  "o",
2793  zwp_text_input_v1_interface_deactivate_request_server,
2794  },
2795  {
2796  "show_input_panel",
2797  "",
2798  zwp_text_input_v1_interface_show_input_panel_request_server,
2799  },
2800  {
2801  "hide_input_panel",
2802  "",
2803  zwp_text_input_v1_interface_hide_input_panel_request_server,
2804  },
2805  {
2806  "reset",
2807  "",
2808  zwp_text_input_v1_interface_reset_request_server,
2809  },
2810  {
2811  "set_surrounding_text",
2812  "suu",
2813  zwp_text_input_v1_interface_set_surrounding_text_request_server,
2814  },
2815  {
2816  "set_content_type",
2817  "uu",
2818  zwp_text_input_v1_interface_set_content_type_request_server,
2819  },
2820  {
2821  "set_cursor_rectangle",
2822  "iiii",
2823  zwp_text_input_v1_interface_set_cursor_rectangle_request_server,
2824  },
2825  {
2826  "set_preferred_language",
2827  "s",
2828  zwp_text_input_v1_interface_set_preferred_language_request_server,
2829  },
2830  {
2831  "commit_state",
2832  "u",
2833  zwp_text_input_v1_interface_commit_state_request_server,
2834  },
2835  {
2836  "invoke_action",
2837  "uu",
2838  zwp_text_input_v1_interface_invoke_action_request_server,
2839  },
2840 };
2841 
2842 const wl_message zwp_text_input_v1_interface_events_server[13] = {
2843  {
2844  "enter",
2845  "o",
2846  zwp_text_input_v1_interface_enter_event_server,
2847  },
2848  {
2849  "leave",
2850  "",
2851  zwp_text_input_v1_interface_leave_event_server,
2852  },
2853  {
2854  "modifiers_map",
2855  "a",
2856  zwp_text_input_v1_interface_modifiers_map_event_server,
2857  },
2858  {
2859  "input_panel_state",
2860  "u",
2861  zwp_text_input_v1_interface_input_panel_state_event_server,
2862  },
2863  {
2864  "preedit_string",
2865  "uss",
2866  zwp_text_input_v1_interface_preedit_string_event_server,
2867  },
2868  {
2869  "preedit_styling",
2870  "uuu",
2871  zwp_text_input_v1_interface_preedit_styling_event_server,
2872  },
2873  {
2874  "preedit_cursor",
2875  "i",
2876  zwp_text_input_v1_interface_preedit_cursor_event_server,
2877  },
2878  {
2879  "commit_string",
2880  "us",
2881  zwp_text_input_v1_interface_commit_string_event_server,
2882  },
2883  {
2884  "cursor_position",
2885  "ii",
2886  zwp_text_input_v1_interface_cursor_position_event_server,
2887  },
2888  {
2889  "delete_surrounding_text",
2890  "iu",
2891  zwp_text_input_v1_interface_delete_surrounding_text_event_server,
2892  },
2893  {
2894  "keysym",
2895  "uuuuu",
2896  zwp_text_input_v1_interface_keysym_event_server,
2897  },
2898  {
2899  "language",
2900  "us",
2901  zwp_text_input_v1_interface_language_event_server,
2902  },
2903  {
2904  "text_direction",
2905  "uu",
2906  zwp_text_input_v1_interface_text_direction_event_server,
2907  },
2908 };
2909 
2910 const wl_interface wayland::server::detail::zwp_text_input_v1_interface =
2911  {
2912  "zwp_text_input_v1",
2913  1,
2914  11,
2915  zwp_text_input_v1_interface_requests_server,
2916  13,
2917  zwp_text_input_v1_interface_events_server,
2918  };
2919 
2920 const wl_interface* zwp_text_input_manager_v1_interface_create_text_input_request_server[1] = {
2921  &zwp_text_input_v1_interface,
2922 };
2923 
2924 const wl_message zwp_text_input_manager_v1_interface_requests_server[1] = {
2925  {
2926  "create_text_input",
2927  "n",
2928  zwp_text_input_manager_v1_interface_create_text_input_request_server,
2929  },
2930 };
2931 
2932 const wl_message zwp_text_input_manager_v1_interface_events_server[0] = {
2933 };
2934 
2935 const wl_interface wayland::server::detail::zwp_text_input_manager_v1_interface =
2936  {
2937  "zwp_text_input_manager_v1",
2938  1,
2939  1,
2940  zwp_text_input_manager_v1_interface_requests_server,
2941  0,
2942  zwp_text_input_manager_v1_interface_events_server,
2943  };
2944 
2945 const wl_interface* zwp_text_input_v3_interface_destroy_request_server[0] = {
2946 };
2947 
2948 const wl_interface* zwp_text_input_v3_interface_enable_request_server[0] = {
2949 };
2950 
2951 const wl_interface* zwp_text_input_v3_interface_disable_request_server[0] = {
2952 };
2953 
2954 const wl_interface* zwp_text_input_v3_interface_set_surrounding_text_request_server[3] = {
2955  nullptr,
2956  nullptr,
2957  nullptr,
2958 };
2959 
2960 const wl_interface* zwp_text_input_v3_interface_set_text_change_cause_request_server[1] = {
2961  nullptr,
2962 };
2963 
2964 const wl_interface* zwp_text_input_v3_interface_set_content_type_request_server[2] = {
2965  nullptr,
2966  nullptr,
2967 };
2968 
2969 const wl_interface* zwp_text_input_v3_interface_set_cursor_rectangle_request_server[4] = {
2970  nullptr,
2971  nullptr,
2972  nullptr,
2973  nullptr,
2974 };
2975 
2976 const wl_interface* zwp_text_input_v3_interface_commit_request_server[0] = {
2977 };
2978 
2979 const wl_interface* zwp_text_input_v3_interface_enter_event_server[1] = {
2980  &surface_interface,
2981 };
2982 
2983 const wl_interface* zwp_text_input_v3_interface_leave_event_server[1] = {
2984  &surface_interface,
2985 };
2986 
2987 const wl_interface* zwp_text_input_v3_interface_preedit_string_event_server[3] = {
2988  nullptr,
2989  nullptr,
2990  nullptr,
2991 };
2992 
2993 const wl_interface* zwp_text_input_v3_interface_commit_string_event_server[1] = {
2994  nullptr,
2995 };
2996 
2997 const wl_interface* zwp_text_input_v3_interface_delete_surrounding_text_event_server[2] = {
2998  nullptr,
2999  nullptr,
3000 };
3001 
3002 const wl_interface* zwp_text_input_v3_interface_done_event_server[1] = {
3003  nullptr,
3004 };
3005 
3006 const wl_message zwp_text_input_v3_interface_requests_server[8] = {
3007  {
3008  "destroy",
3009  "",
3010  zwp_text_input_v3_interface_destroy_request_server,
3011  },
3012  {
3013  "enable",
3014  "",
3015  zwp_text_input_v3_interface_enable_request_server,
3016  },
3017  {
3018  "disable",
3019  "",
3020  zwp_text_input_v3_interface_disable_request_server,
3021  },
3022  {
3023  "set_surrounding_text",
3024  "sii",
3025  zwp_text_input_v3_interface_set_surrounding_text_request_server,
3026  },
3027  {
3028  "set_text_change_cause",
3029  "u",
3030  zwp_text_input_v3_interface_set_text_change_cause_request_server,
3031  },
3032  {
3033  "set_content_type",
3034  "uu",
3035  zwp_text_input_v3_interface_set_content_type_request_server,
3036  },
3037  {
3038  "set_cursor_rectangle",
3039  "iiii",
3040  zwp_text_input_v3_interface_set_cursor_rectangle_request_server,
3041  },
3042  {
3043  "commit",
3044  "",
3045  zwp_text_input_v3_interface_commit_request_server,
3046  },
3047 };
3048 
3049 const wl_message zwp_text_input_v3_interface_events_server[6] = {
3050  {
3051  "enter",
3052  "o",
3053  zwp_text_input_v3_interface_enter_event_server,
3054  },
3055  {
3056  "leave",
3057  "o",
3058  zwp_text_input_v3_interface_leave_event_server,
3059  },
3060  {
3061  "preedit_string",
3062  "?sii",
3063  zwp_text_input_v3_interface_preedit_string_event_server,
3064  },
3065  {
3066  "commit_string",
3067  "?s",
3068  zwp_text_input_v3_interface_commit_string_event_server,
3069  },
3070  {
3071  "delete_surrounding_text",
3072  "uu",
3073  zwp_text_input_v3_interface_delete_surrounding_text_event_server,
3074  },
3075  {
3076  "done",
3077  "u",
3078  zwp_text_input_v3_interface_done_event_server,
3079  },
3080 };
3081 
3082 const wl_interface wayland::server::detail::zwp_text_input_v3_interface =
3083  {
3084  "zwp_text_input_v3",
3085  1,
3086  8,
3087  zwp_text_input_v3_interface_requests_server,
3088  6,
3089  zwp_text_input_v3_interface_events_server,
3090  };
3091 
3092 const wl_interface* zwp_text_input_manager_v3_interface_destroy_request_server[0] = {
3093 };
3094 
3095 const wl_interface* zwp_text_input_manager_v3_interface_get_text_input_request_server[2] = {
3096  &zwp_text_input_v3_interface,
3097  &seat_interface,
3098 };
3099 
3100 const wl_message zwp_text_input_manager_v3_interface_requests_server[2] = {
3101  {
3102  "destroy",
3103  "",
3104  zwp_text_input_manager_v3_interface_destroy_request_server,
3105  },
3106  {
3107  "get_text_input",
3108  "no",
3109  zwp_text_input_manager_v3_interface_get_text_input_request_server,
3110  },
3111 };
3112 
3113 const wl_message zwp_text_input_manager_v3_interface_events_server[0] = {
3114 };
3115 
3116 const wl_interface wayland::server::detail::zwp_text_input_manager_v3_interface =
3117  {
3118  "zwp_text_input_manager_v3",
3119  1,
3120  2,
3121  zwp_text_input_manager_v3_interface_requests_server,
3122  0,
3123  zwp_text_input_manager_v3_interface_events_server,
3124  };
3125 
3126 const wl_interface* xdg_activation_v1_interface_destroy_request_server[0] = {
3127 };
3128 
3129 const wl_interface* xdg_activation_v1_interface_get_activation_token_request_server[1] = {
3130  &xdg_activation_token_v1_interface,
3131 };
3132 
3133 const wl_interface* xdg_activation_v1_interface_activate_request_server[2] = {
3134  nullptr,
3135  &surface_interface,
3136 };
3137 
3138 const wl_message xdg_activation_v1_interface_requests_server[3] = {
3139  {
3140  "destroy",
3141  "",
3142  xdg_activation_v1_interface_destroy_request_server,
3143  },
3144  {
3145  "get_activation_token",
3146  "n",
3147  xdg_activation_v1_interface_get_activation_token_request_server,
3148  },
3149  {
3150  "activate",
3151  "so",
3152  xdg_activation_v1_interface_activate_request_server,
3153  },
3154 };
3155 
3156 const wl_message xdg_activation_v1_interface_events_server[0] = {
3157 };
3158 
3159 const wl_interface wayland::server::detail::xdg_activation_v1_interface =
3160  {
3161  "xdg_activation_v1",
3162  1,
3163  3,
3164  xdg_activation_v1_interface_requests_server,
3165  0,
3166  xdg_activation_v1_interface_events_server,
3167  };
3168 
3169 const wl_interface* xdg_activation_token_v1_interface_set_serial_request_server[2] = {
3170  nullptr,
3171  &seat_interface,
3172 };
3173 
3174 const wl_interface* xdg_activation_token_v1_interface_set_app_id_request_server[1] = {
3175  nullptr,
3176 };
3177 
3178 const wl_interface* xdg_activation_token_v1_interface_set_surface_request_server[1] = {
3179  &surface_interface,
3180 };
3181 
3182 const wl_interface* xdg_activation_token_v1_interface_commit_request_server[0] = {
3183 };
3184 
3185 const wl_interface* xdg_activation_token_v1_interface_destroy_request_server[0] = {
3186 };
3187 
3188 const wl_interface* xdg_activation_token_v1_interface_done_event_server[1] = {
3189  nullptr,
3190 };
3191 
3192 const wl_message xdg_activation_token_v1_interface_requests_server[5] = {
3193  {
3194  "set_serial",
3195  "uo",
3196  xdg_activation_token_v1_interface_set_serial_request_server,
3197  },
3198  {
3199  "set_app_id",
3200  "s",
3201  xdg_activation_token_v1_interface_set_app_id_request_server,
3202  },
3203  {
3204  "set_surface",
3205  "o",
3206  xdg_activation_token_v1_interface_set_surface_request_server,
3207  },
3208  {
3209  "commit",
3210  "",
3211  xdg_activation_token_v1_interface_commit_request_server,
3212  },
3213  {
3214  "destroy",
3215  "",
3216  xdg_activation_token_v1_interface_destroy_request_server,
3217  },
3218 };
3219 
3220 const wl_message xdg_activation_token_v1_interface_events_server[1] = {
3221  {
3222  "done",
3223  "s",
3224  xdg_activation_token_v1_interface_done_event_server,
3225  },
3226 };
3227 
3228 const wl_interface wayland::server::detail::xdg_activation_token_v1_interface =
3229  {
3230  "xdg_activation_token_v1",
3231  1,
3232  5,
3233  xdg_activation_token_v1_interface_requests_server,
3234  1,
3235  xdg_activation_token_v1_interface_events_server,
3236  };
3237 
3238 const wl_interface* zxdg_decoration_manager_v1_interface_destroy_request_server[0] = {
3239 };
3240 
3241 const wl_interface* zxdg_decoration_manager_v1_interface_get_toplevel_decoration_request_server[2] = {
3242  &zxdg_toplevel_decoration_v1_interface,
3243  &xdg_toplevel_interface,
3244 };
3245 
3246 const wl_message zxdg_decoration_manager_v1_interface_requests_server[2] = {
3247  {
3248  "destroy",
3249  "",
3250  zxdg_decoration_manager_v1_interface_destroy_request_server,
3251  },
3252  {
3253  "get_toplevel_decoration",
3254  "no",
3255  zxdg_decoration_manager_v1_interface_get_toplevel_decoration_request_server,
3256  },
3257 };
3258 
3259 const wl_message zxdg_decoration_manager_v1_interface_events_server[0] = {
3260 };
3261 
3262 const wl_interface wayland::server::detail::zxdg_decoration_manager_v1_interface =
3263  {
3264  "zxdg_decoration_manager_v1",
3265  1,
3266  2,
3267  zxdg_decoration_manager_v1_interface_requests_server,
3268  0,
3269  zxdg_decoration_manager_v1_interface_events_server,
3270  };
3271 
3272 const wl_interface* zxdg_toplevel_decoration_v1_interface_destroy_request_server[0] = {
3273 };
3274 
3275 const wl_interface* zxdg_toplevel_decoration_v1_interface_set_mode_request_server[1] = {
3276  nullptr,
3277 };
3278 
3279 const wl_interface* zxdg_toplevel_decoration_v1_interface_unset_mode_request_server[0] = {
3280 };
3281 
3282 const wl_interface* zxdg_toplevel_decoration_v1_interface_configure_event_server[1] = {
3283  nullptr,
3284 };
3285 
3286 const wl_message zxdg_toplevel_decoration_v1_interface_requests_server[3] = {
3287  {
3288  "destroy",
3289  "",
3290  zxdg_toplevel_decoration_v1_interface_destroy_request_server,
3291  },
3292  {
3293  "set_mode",
3294  "u",
3295  zxdg_toplevel_decoration_v1_interface_set_mode_request_server,
3296  },
3297  {
3298  "unset_mode",
3299  "",
3300  zxdg_toplevel_decoration_v1_interface_unset_mode_request_server,
3301  },
3302 };
3303 
3304 const wl_message zxdg_toplevel_decoration_v1_interface_events_server[1] = {
3305  {
3306  "configure",
3307  "u",
3308  zxdg_toplevel_decoration_v1_interface_configure_event_server,
3309  },
3310 };
3311 
3312 const wl_interface wayland::server::detail::zxdg_toplevel_decoration_v1_interface =
3313  {
3314  "zxdg_toplevel_decoration_v1",
3315  1,
3316  3,
3317  zxdg_toplevel_decoration_v1_interface_requests_server,
3318  1,
3319  zxdg_toplevel_decoration_v1_interface_events_server,
3320  };
3321 
3322 const wl_interface* zxdg_exporter_v1_interface_destroy_request_server[0] = {
3323 };
3324 
3325 const wl_interface* zxdg_exporter_v1_interface_export_request_server[2] = {
3326  &zxdg_exported_v1_interface,
3327  &surface_interface,
3328 };
3329 
3330 const wl_message zxdg_exporter_v1_interface_requests_server[2] = {
3331  {
3332  "destroy",
3333  "",
3334  zxdg_exporter_v1_interface_destroy_request_server,
3335  },
3336  {
3337  "export",
3338  "no",
3339  zxdg_exporter_v1_interface_export_request_server,
3340  },
3341 };
3342 
3343 const wl_message zxdg_exporter_v1_interface_events_server[0] = {
3344 };
3345 
3346 const wl_interface wayland::server::detail::zxdg_exporter_v1_interface =
3347  {
3348  "zxdg_exporter_v1",
3349  1,
3350  2,
3351  zxdg_exporter_v1_interface_requests_server,
3352  0,
3353  zxdg_exporter_v1_interface_events_server,
3354  };
3355 
3356 const wl_interface* zxdg_importer_v1_interface_destroy_request_server[0] = {
3357 };
3358 
3359 const wl_interface* zxdg_importer_v1_interface_import_request_server[2] = {
3360  &zxdg_imported_v1_interface,
3361  nullptr,
3362 };
3363 
3364 const wl_message zxdg_importer_v1_interface_requests_server[2] = {
3365  {
3366  "destroy",
3367  "",
3368  zxdg_importer_v1_interface_destroy_request_server,
3369  },
3370  {
3371  "import",
3372  "ns",
3373  zxdg_importer_v1_interface_import_request_server,
3374  },
3375 };
3376 
3377 const wl_message zxdg_importer_v1_interface_events_server[0] = {
3378 };
3379 
3380 const wl_interface wayland::server::detail::zxdg_importer_v1_interface =
3381  {
3382  "zxdg_importer_v1",
3383  1,
3384  2,
3385  zxdg_importer_v1_interface_requests_server,
3386  0,
3387  zxdg_importer_v1_interface_events_server,
3388  };
3389 
3390 const wl_interface* zxdg_exported_v1_interface_destroy_request_server[0] = {
3391 };
3392 
3393 const wl_interface* zxdg_exported_v1_interface_handle_event_server[1] = {
3394  nullptr,
3395 };
3396 
3397 const wl_message zxdg_exported_v1_interface_requests_server[1] = {
3398  {
3399  "destroy",
3400  "",
3401  zxdg_exported_v1_interface_destroy_request_server,
3402  },
3403 };
3404 
3405 const wl_message zxdg_exported_v1_interface_events_server[1] = {
3406  {
3407  "handle",
3408  "s",
3409  zxdg_exported_v1_interface_handle_event_server,
3410  },
3411 };
3412 
3413 const wl_interface wayland::server::detail::zxdg_exported_v1_interface =
3414  {
3415  "zxdg_exported_v1",
3416  1,
3417  1,
3418  zxdg_exported_v1_interface_requests_server,
3419  1,
3420  zxdg_exported_v1_interface_events_server,
3421  };
3422 
3423 const wl_interface* zxdg_imported_v1_interface_destroy_request_server[0] = {
3424 };
3425 
3426 const wl_interface* zxdg_imported_v1_interface_set_parent_of_request_server[1] = {
3427  &surface_interface,
3428 };
3429 
3430 const wl_interface* zxdg_imported_v1_interface_destroyed_event_server[0] = {
3431 };
3432 
3433 const wl_message zxdg_imported_v1_interface_requests_server[2] = {
3434  {
3435  "destroy",
3436  "",
3437  zxdg_imported_v1_interface_destroy_request_server,
3438  },
3439  {
3440  "set_parent_of",
3441  "o",
3442  zxdg_imported_v1_interface_set_parent_of_request_server,
3443  },
3444 };
3445 
3446 const wl_message zxdg_imported_v1_interface_events_server[1] = {
3447  {
3448  "destroyed",
3449  "",
3450  zxdg_imported_v1_interface_destroyed_event_server,
3451  },
3452 };
3453 
3454 const wl_interface wayland::server::detail::zxdg_imported_v1_interface =
3455  {
3456  "zxdg_imported_v1",
3457  1,
3458  2,
3459  zxdg_imported_v1_interface_requests_server,
3460  1,
3461  zxdg_imported_v1_interface_events_server,
3462  };
3463 
3464 const wl_interface* zxdg_exporter_v2_interface_destroy_request_server[0] = {
3465 };
3466 
3467 const wl_interface* zxdg_exporter_v2_interface_export_toplevel_request_server[2] = {
3468  &zxdg_exported_v2_interface,
3469  &surface_interface,
3470 };
3471 
3472 const wl_message zxdg_exporter_v2_interface_requests_server[2] = {
3473  {
3474  "destroy",
3475  "",
3476  zxdg_exporter_v2_interface_destroy_request_server,
3477  },
3478  {
3479  "export_toplevel",
3480  "no",
3481  zxdg_exporter_v2_interface_export_toplevel_request_server,
3482  },
3483 };
3484 
3485 const wl_message zxdg_exporter_v2_interface_events_server[0] = {
3486 };
3487 
3488 const wl_interface wayland::server::detail::zxdg_exporter_v2_interface =
3489  {
3490  "zxdg_exporter_v2",
3491  1,
3492  2,
3493  zxdg_exporter_v2_interface_requests_server,
3494  0,
3495  zxdg_exporter_v2_interface_events_server,
3496  };
3497 
3498 const wl_interface* zxdg_importer_v2_interface_destroy_request_server[0] = {
3499 };
3500 
3501 const wl_interface* zxdg_importer_v2_interface_import_toplevel_request_server[2] = {
3502  &zxdg_imported_v2_interface,
3503  nullptr,
3504 };
3505 
3506 const wl_message zxdg_importer_v2_interface_requests_server[2] = {
3507  {
3508  "destroy",
3509  "",
3510  zxdg_importer_v2_interface_destroy_request_server,
3511  },
3512  {
3513  "import_toplevel",
3514  "ns",
3515  zxdg_importer_v2_interface_import_toplevel_request_server,
3516  },
3517 };
3518 
3519 const wl_message zxdg_importer_v2_interface_events_server[0] = {
3520 };
3521 
3522 const wl_interface wayland::server::detail::zxdg_importer_v2_interface =
3523  {
3524  "zxdg_importer_v2",
3525  1,
3526  2,
3527  zxdg_importer_v2_interface_requests_server,
3528  0,
3529  zxdg_importer_v2_interface_events_server,
3530  };
3531 
3532 const wl_interface* zxdg_exported_v2_interface_destroy_request_server[0] = {
3533 };
3534 
3535 const wl_interface* zxdg_exported_v2_interface_handle_event_server[1] = {
3536  nullptr,
3537 };
3538 
3539 const wl_message zxdg_exported_v2_interface_requests_server[1] = {
3540  {
3541  "destroy",
3542  "",
3543  zxdg_exported_v2_interface_destroy_request_server,
3544  },
3545 };
3546 
3547 const wl_message zxdg_exported_v2_interface_events_server[1] = {
3548  {
3549  "handle",
3550  "s",
3551  zxdg_exported_v2_interface_handle_event_server,
3552  },
3553 };
3554 
3555 const wl_interface wayland::server::detail::zxdg_exported_v2_interface =
3556  {
3557  "zxdg_exported_v2",
3558  1,
3559  1,
3560  zxdg_exported_v2_interface_requests_server,
3561  1,
3562  zxdg_exported_v2_interface_events_server,
3563  };
3564 
3565 const wl_interface* zxdg_imported_v2_interface_destroy_request_server[0] = {
3566 };
3567 
3568 const wl_interface* zxdg_imported_v2_interface_set_parent_of_request_server[1] = {
3569  &surface_interface,
3570 };
3571 
3572 const wl_interface* zxdg_imported_v2_interface_destroyed_event_server[0] = {
3573 };
3574 
3575 const wl_message zxdg_imported_v2_interface_requests_server[2] = {
3576  {
3577  "destroy",
3578  "",
3579  zxdg_imported_v2_interface_destroy_request_server,
3580  },
3581  {
3582  "set_parent_of",
3583  "o",
3584  zxdg_imported_v2_interface_set_parent_of_request_server,
3585  },
3586 };
3587 
3588 const wl_message zxdg_imported_v2_interface_events_server[1] = {
3589  {
3590  "destroyed",
3591  "",
3592  zxdg_imported_v2_interface_destroyed_event_server,
3593  },
3594 };
3595 
3596 const wl_interface wayland::server::detail::zxdg_imported_v2_interface =
3597  {
3598  "zxdg_imported_v2",
3599  1,
3600  2,
3601  zxdg_imported_v2_interface_requests_server,
3602  1,
3603  zxdg_imported_v2_interface_events_server,
3604  };
3605 
3606 const wl_interface* zxdg_output_manager_v1_interface_destroy_request_server[0] = {
3607 };
3608 
3609 const wl_interface* zxdg_output_manager_v1_interface_get_xdg_output_request_server[2] = {
3610  &zxdg_output_v1_interface,
3611  &output_interface,
3612 };
3613 
3614 const wl_message zxdg_output_manager_v1_interface_requests_server[2] = {
3615  {
3616  "destroy",
3617  "",
3618  zxdg_output_manager_v1_interface_destroy_request_server,
3619  },
3620  {
3621  "get_xdg_output",
3622  "no",
3623  zxdg_output_manager_v1_interface_get_xdg_output_request_server,
3624  },
3625 };
3626 
3627 const wl_message zxdg_output_manager_v1_interface_events_server[0] = {
3628 };
3629 
3630 const wl_interface wayland::server::detail::zxdg_output_manager_v1_interface =
3631  {
3632  "zxdg_output_manager_v1",
3633  3,
3634  2,
3635  zxdg_output_manager_v1_interface_requests_server,
3636  0,
3637  zxdg_output_manager_v1_interface_events_server,
3638  };
3639 
3640 const wl_interface* zxdg_output_v1_interface_destroy_request_server[0] = {
3641 };
3642 
3643 const wl_interface* zxdg_output_v1_interface_logical_position_event_server[2] = {
3644  nullptr,
3645  nullptr,
3646 };
3647 
3648 const wl_interface* zxdg_output_v1_interface_logical_size_event_server[2] = {
3649  nullptr,
3650  nullptr,
3651 };
3652 
3653 const wl_interface* zxdg_output_v1_interface_done_event_server[0] = {
3654 };
3655 
3656 const wl_interface* zxdg_output_v1_interface_name_event_server[1] = {
3657  nullptr,
3658 };
3659 
3660 const wl_interface* zxdg_output_v1_interface_description_event_server[1] = {
3661  nullptr,
3662 };
3663 
3664 const wl_message zxdg_output_v1_interface_requests_server[1] = {
3665  {
3666  "destroy",
3667  "",
3668  zxdg_output_v1_interface_destroy_request_server,
3669  },
3670 };
3671 
3672 const wl_message zxdg_output_v1_interface_events_server[5] = {
3673  {
3674  "logical_position",
3675  "ii",
3676  zxdg_output_v1_interface_logical_position_event_server,
3677  },
3678  {
3679  "logical_size",
3680  "ii",
3681  zxdg_output_v1_interface_logical_size_event_server,
3682  },
3683  {
3684  "done",
3685  "",
3686  zxdg_output_v1_interface_done_event_server,
3687  },
3688  {
3689  "name",
3690  "2s",
3691  zxdg_output_v1_interface_name_event_server,
3692  },
3693  {
3694  "description",
3695  "2s",
3696  zxdg_output_v1_interface_description_event_server,
3697  },
3698 };
3699 
3700 const wl_interface wayland::server::detail::zxdg_output_v1_interface =
3701  {
3702  "zxdg_output_v1",
3703  3,
3704  1,
3705  zxdg_output_v1_interface_requests_server,
3706  5,
3707  zxdg_output_v1_interface_events_server,
3708  };
3709 
3710 const wl_interface* zxdg_shell_v6_interface_destroy_request_server[0] = {
3711 };
3712 
3713 const wl_interface* zxdg_shell_v6_interface_create_positioner_request_server[1] = {
3714  &zxdg_positioner_v6_interface,
3715 };
3716 
3717 const wl_interface* zxdg_shell_v6_interface_get_xdg_surface_request_server[2] = {
3718  &zxdg_surface_v6_interface,
3719  &surface_interface,
3720 };
3721 
3722 const wl_interface* zxdg_shell_v6_interface_pong_request_server[1] = {
3723  nullptr,
3724 };
3725 
3726 const wl_interface* zxdg_shell_v6_interface_ping_event_server[1] = {
3727  nullptr,
3728 };
3729 
3730 const wl_message zxdg_shell_v6_interface_requests_server[4] = {
3731  {
3732  "destroy",
3733  "",
3734  zxdg_shell_v6_interface_destroy_request_server,
3735  },
3736  {
3737  "create_positioner",
3738  "n",
3739  zxdg_shell_v6_interface_create_positioner_request_server,
3740  },
3741  {
3742  "get_xdg_surface",
3743  "no",
3744  zxdg_shell_v6_interface_get_xdg_surface_request_server,
3745  },
3746  {
3747  "pong",
3748  "u",
3749  zxdg_shell_v6_interface_pong_request_server,
3750  },
3751 };
3752 
3753 const wl_message zxdg_shell_v6_interface_events_server[1] = {
3754  {
3755  "ping",
3756  "u",
3757  zxdg_shell_v6_interface_ping_event_server,
3758  },
3759 };
3760 
3761 const wl_interface wayland::server::detail::zxdg_shell_v6_interface =
3762  {
3763  "zxdg_shell_v6",
3764  1,
3765  4,
3766  zxdg_shell_v6_interface_requests_server,
3767  1,
3768  zxdg_shell_v6_interface_events_server,
3769  };
3770 
3771 const wl_interface* zxdg_positioner_v6_interface_destroy_request_server[0] = {
3772 };
3773 
3774 const wl_interface* zxdg_positioner_v6_interface_set_size_request_server[2] = {
3775  nullptr,
3776  nullptr,
3777 };
3778 
3779 const wl_interface* zxdg_positioner_v6_interface_set_anchor_rect_request_server[4] = {
3780  nullptr,
3781  nullptr,
3782  nullptr,
3783  nullptr,
3784 };
3785 
3786 const wl_interface* zxdg_positioner_v6_interface_set_anchor_request_server[1] = {
3787  nullptr,
3788 };
3789 
3790 const wl_interface* zxdg_positioner_v6_interface_set_gravity_request_server[1] = {
3791  nullptr,
3792 };
3793 
3794 const wl_interface* zxdg_positioner_v6_interface_set_constraint_adjustment_request_server[1] = {
3795  nullptr,
3796 };
3797 
3798 const wl_interface* zxdg_positioner_v6_interface_set_offset_request_server[2] = {
3799  nullptr,
3800  nullptr,
3801 };
3802 
3803 const wl_message zxdg_positioner_v6_interface_requests_server[7] = {
3804  {
3805  "destroy",
3806  "",
3807  zxdg_positioner_v6_interface_destroy_request_server,
3808  },
3809  {
3810  "set_size",
3811  "ii",
3812  zxdg_positioner_v6_interface_set_size_request_server,
3813  },
3814  {
3815  "set_anchor_rect",
3816  "iiii",
3817  zxdg_positioner_v6_interface_set_anchor_rect_request_server,
3818  },
3819  {
3820  "set_anchor",
3821  "u",
3822  zxdg_positioner_v6_interface_set_anchor_request_server,
3823  },
3824  {
3825  "set_gravity",
3826  "u",
3827  zxdg_positioner_v6_interface_set_gravity_request_server,
3828  },
3829  {
3830  "set_constraint_adjustment",
3831  "u",
3832  zxdg_positioner_v6_interface_set_constraint_adjustment_request_server,
3833  },
3834  {
3835  "set_offset",
3836  "ii",
3837  zxdg_positioner_v6_interface_set_offset_request_server,
3838  },
3839 };
3840 
3841 const wl_message zxdg_positioner_v6_interface_events_server[0] = {
3842 };
3843 
3844 const wl_interface wayland::server::detail::zxdg_positioner_v6_interface =
3845  {
3846  "zxdg_positioner_v6",
3847  1,
3848  7,
3849  zxdg_positioner_v6_interface_requests_server,
3850  0,
3851  zxdg_positioner_v6_interface_events_server,
3852  };
3853 
3854 const wl_interface* zxdg_surface_v6_interface_destroy_request_server[0] = {
3855 };
3856 
3857 const wl_interface* zxdg_surface_v6_interface_get_toplevel_request_server[1] = {
3858  &zxdg_toplevel_v6_interface,
3859 };
3860 
3861 const wl_interface* zxdg_surface_v6_interface_get_popup_request_server[3] = {
3862  &zxdg_popup_v6_interface,
3863  &zxdg_surface_v6_interface,
3864  &zxdg_positioner_v6_interface,
3865 };
3866 
3867 const wl_interface* zxdg_surface_v6_interface_set_window_geometry_request_server[4] = {
3868  nullptr,
3869  nullptr,
3870  nullptr,
3871  nullptr,
3872 };
3873 
3874 const wl_interface* zxdg_surface_v6_interface_ack_configure_request_server[1] = {
3875  nullptr,
3876 };
3877 
3878 const wl_interface* zxdg_surface_v6_interface_configure_event_server[1] = {
3879  nullptr,
3880 };
3881 
3882 const wl_message zxdg_surface_v6_interface_requests_server[5] = {
3883  {
3884  "destroy",
3885  "",
3886  zxdg_surface_v6_interface_destroy_request_server,
3887  },
3888  {
3889  "get_toplevel",
3890  "n",
3891  zxdg_surface_v6_interface_get_toplevel_request_server,
3892  },
3893  {
3894  "get_popup",
3895  "noo",
3896  zxdg_surface_v6_interface_get_popup_request_server,
3897  },
3898  {
3899  "set_window_geometry",
3900  "iiii",
3901  zxdg_surface_v6_interface_set_window_geometry_request_server,
3902  },
3903  {
3904  "ack_configure",
3905  "u",
3906  zxdg_surface_v6_interface_ack_configure_request_server,
3907  },
3908 };
3909 
3910 const wl_message zxdg_surface_v6_interface_events_server[1] = {
3911  {
3912  "configure",
3913  "u",
3914  zxdg_surface_v6_interface_configure_event_server,
3915  },
3916 };
3917 
3918 const wl_interface wayland::server::detail::zxdg_surface_v6_interface =
3919  {
3920  "zxdg_surface_v6",
3921  1,
3922  5,
3923  zxdg_surface_v6_interface_requests_server,
3924  1,
3925  zxdg_surface_v6_interface_events_server,
3926  };
3927 
3928 const wl_interface* zxdg_toplevel_v6_interface_destroy_request_server[0] = {
3929 };
3930 
3931 const wl_interface* zxdg_toplevel_v6_interface_set_parent_request_server[1] = {
3932  &zxdg_toplevel_v6_interface,
3933 };
3934 
3935 const wl_interface* zxdg_toplevel_v6_interface_set_title_request_server[1] = {
3936  nullptr,
3937 };
3938 
3939 const wl_interface* zxdg_toplevel_v6_interface_set_app_id_request_server[1] = {
3940  nullptr,
3941 };
3942 
3943 const wl_interface* zxdg_toplevel_v6_interface_show_window_menu_request_server[4] = {
3944  &seat_interface,
3945  nullptr,
3946  nullptr,
3947  nullptr,
3948 };
3949 
3950 const wl_interface* zxdg_toplevel_v6_interface_move_request_server[2] = {
3951  &seat_interface,
3952  nullptr,
3953 };
3954 
3955 const wl_interface* zxdg_toplevel_v6_interface_resize_request_server[3] = {
3956  &seat_interface,
3957  nullptr,
3958  nullptr,
3959 };
3960 
3961 const wl_interface* zxdg_toplevel_v6_interface_set_max_size_request_server[2] = {
3962  nullptr,
3963  nullptr,
3964 };
3965 
3966 const wl_interface* zxdg_toplevel_v6_interface_set_min_size_request_server[2] = {
3967  nullptr,
3968  nullptr,
3969 };
3970 
3971 const wl_interface* zxdg_toplevel_v6_interface_set_maximized_request_server[0] = {
3972 };
3973 
3974 const wl_interface* zxdg_toplevel_v6_interface_unset_maximized_request_server[0] = {
3975 };
3976 
3977 const wl_interface* zxdg_toplevel_v6_interface_set_fullscreen_request_server[1] = {
3978  &output_interface,
3979 };
3980 
3981 const wl_interface* zxdg_toplevel_v6_interface_unset_fullscreen_request_server[0] = {
3982 };
3983 
3984 const wl_interface* zxdg_toplevel_v6_interface_set_minimized_request_server[0] = {
3985 };
3986 
3987 const wl_interface* zxdg_toplevel_v6_interface_configure_event_server[3] = {
3988  nullptr,
3989  nullptr,
3990  nullptr,
3991 };
3992 
3993 const wl_interface* zxdg_toplevel_v6_interface_close_event_server[0] = {
3994 };
3995 
3996 const wl_message zxdg_toplevel_v6_interface_requests_server[14] = {
3997  {
3998  "destroy",
3999  "",
4000  zxdg_toplevel_v6_interface_destroy_request_server,
4001  },
4002  {
4003  "set_parent",
4004  "?o",
4005  zxdg_toplevel_v6_interface_set_parent_request_server,
4006  },
4007  {
4008  "set_title",
4009  "s",
4010  zxdg_toplevel_v6_interface_set_title_request_server,
4011  },
4012  {
4013  "set_app_id",
4014  "s",
4015  zxdg_toplevel_v6_interface_set_app_id_request_server,
4016  },
4017  {
4018  "show_window_menu",
4019  "ouii",
4020  zxdg_toplevel_v6_interface_show_window_menu_request_server,
4021  },
4022  {
4023  "move",
4024  "ou",
4025  zxdg_toplevel_v6_interface_move_request_server,
4026  },
4027  {
4028  "resize",
4029  "ouu",
4030  zxdg_toplevel_v6_interface_resize_request_server,
4031  },
4032  {
4033  "set_max_size",
4034  "ii",
4035  zxdg_toplevel_v6_interface_set_max_size_request_server,
4036  },
4037  {
4038  "set_min_size",
4039  "ii",
4040  zxdg_toplevel_v6_interface_set_min_size_request_server,
4041  },
4042  {
4043  "set_maximized",
4044  "",
4045  zxdg_toplevel_v6_interface_set_maximized_request_server,
4046  },
4047  {
4048  "unset_maximized",
4049  "",
4050  zxdg_toplevel_v6_interface_unset_maximized_request_server,
4051  },
4052  {
4053  "set_fullscreen",
4054  "?o",
4055  zxdg_toplevel_v6_interface_set_fullscreen_request_server,
4056  },
4057  {
4058  "unset_fullscreen",
4059  "",
4060  zxdg_toplevel_v6_interface_unset_fullscreen_request_server,
4061  },
4062  {
4063  "set_minimized",
4064  "",
4065  zxdg_toplevel_v6_interface_set_minimized_request_server,
4066  },
4067 };
4068 
4069 const wl_message zxdg_toplevel_v6_interface_events_server[2] = {
4070  {
4071  "configure",
4072  "iia",
4073  zxdg_toplevel_v6_interface_configure_event_server,
4074  },
4075  {
4076  "close",
4077  "",
4078  zxdg_toplevel_v6_interface_close_event_server,
4079  },
4080 };
4081 
4082 const wl_interface wayland::server::detail::zxdg_toplevel_v6_interface =
4083  {
4084  "zxdg_toplevel_v6",
4085  1,
4086  14,
4087  zxdg_toplevel_v6_interface_requests_server,
4088  2,
4089  zxdg_toplevel_v6_interface_events_server,
4090  };
4091 
4092 const wl_interface* zxdg_popup_v6_interface_destroy_request_server[0] = {
4093 };
4094 
4095 const wl_interface* zxdg_popup_v6_interface_grab_request_server[2] = {
4096  &seat_interface,
4097  nullptr,
4098 };
4099 
4100 const wl_interface* zxdg_popup_v6_interface_configure_event_server[4] = {
4101  nullptr,
4102  nullptr,
4103  nullptr,
4104  nullptr,
4105 };
4106 
4107 const wl_interface* zxdg_popup_v6_interface_popup_done_event_server[0] = {
4108 };
4109 
4110 const wl_message zxdg_popup_v6_interface_requests_server[2] = {
4111  {
4112  "destroy",
4113  "",
4114  zxdg_popup_v6_interface_destroy_request_server,
4115  },
4116  {
4117  "grab",
4118  "ou",
4119  zxdg_popup_v6_interface_grab_request_server,
4120  },
4121 };
4122 
4123 const wl_message zxdg_popup_v6_interface_events_server[2] = {
4124  {
4125  "configure",
4126  "iiii",
4127  zxdg_popup_v6_interface_configure_event_server,
4128  },
4129  {
4130  "popup_done",
4131  "",
4132  zxdg_popup_v6_interface_popup_done_event_server,
4133  },
4134 };
4135 
4136 const wl_interface wayland::server::detail::zxdg_popup_v6_interface =
4137  {
4138  "zxdg_popup_v6",
4139  1,
4140  2,
4141  zxdg_popup_v6_interface_requests_server,
4142  2,
4143  zxdg_popup_v6_interface_events_server,
4144  };
4145 
4146 const wl_interface* zwp_xwayland_keyboard_grab_manager_v1_interface_destroy_request_server[0] = {
4147 };
4148 
4149 const wl_interface* zwp_xwayland_keyboard_grab_manager_v1_interface_grab_keyboard_request_server[3] = {
4150  &zwp_xwayland_keyboard_grab_v1_interface,
4151  &surface_interface,
4152  &seat_interface,
4153 };
4154 
4155 const wl_message zwp_xwayland_keyboard_grab_manager_v1_interface_requests_server[2] = {
4156  {
4157  "destroy",
4158  "",
4159  zwp_xwayland_keyboard_grab_manager_v1_interface_destroy_request_server,
4160  },
4161  {
4162  "grab_keyboard",
4163  "noo",
4164  zwp_xwayland_keyboard_grab_manager_v1_interface_grab_keyboard_request_server,
4165  },
4166 };
4167 
4168 const wl_message zwp_xwayland_keyboard_grab_manager_v1_interface_events_server[0] = {
4169 };
4170 
4171 const wl_interface wayland::server::detail::zwp_xwayland_keyboard_grab_manager_v1_interface =
4172  {
4173  "zwp_xwayland_keyboard_grab_manager_v1",
4174  1,
4175  2,
4176  zwp_xwayland_keyboard_grab_manager_v1_interface_requests_server,
4177  0,
4178  zwp_xwayland_keyboard_grab_manager_v1_interface_events_server,
4179  };
4180 
4181 const wl_interface* zwp_xwayland_keyboard_grab_v1_interface_destroy_request_server[0] = {
4182 };
4183 
4184 const wl_message zwp_xwayland_keyboard_grab_v1_interface_requests_server[1] = {
4185  {
4186  "destroy",
4187  "",
4188  zwp_xwayland_keyboard_grab_v1_interface_destroy_request_server,
4189  },
4190 };
4191 
4192 const wl_message zwp_xwayland_keyboard_grab_v1_interface_events_server[0] = {
4193 };
4194 
4195 const wl_interface wayland::server::detail::zwp_xwayland_keyboard_grab_v1_interface =
4196  {
4197  "zwp_xwayland_keyboard_grab_v1",
4198  1,
4199  1,
4200  zwp_xwayland_keyboard_grab_v1_interface_requests_server,
4201  0,
4202  zwp_xwayland_keyboard_grab_v1_interface_events_server,
4203  };
4204 
4205 zwp_fullscreen_shell_v1_t::zwp_fullscreen_shell_v1_t(const client_t& client, uint32_t id, int version)
4206  : resource_t(client, &server::detail::zwp_fullscreen_shell_v1_interface, id, version)
4207 {
4208  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4209 }
4210 
4211 zwp_fullscreen_shell_v1_t::zwp_fullscreen_shell_v1_t(const resource_t &resource)
4212  : resource_t(resource)
4213 {
4214  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4215 }
4216 
4217 const std::string zwp_fullscreen_shell_v1_t::interface_name = "zwp_fullscreen_shell_v1";
4218 
4219 zwp_fullscreen_shell_v1_t::operator zwp_fullscreen_shell_v1*() const
4220 {
4221  return reinterpret_cast<zwp_fullscreen_shell_v1*> (c_ptr());
4222 }
4223 
4224 std::function<void()> &zwp_fullscreen_shell_v1_t::on_release()
4225 {
4226  return std::static_pointer_cast<events_t>(get_events())->release;
4227 }
4228 
4229 
4230 std::function<void(surface_t, zwp_fullscreen_shell_v1_present_method, output_t)> &zwp_fullscreen_shell_v1_t::on_present_surface()
4231 {
4232  return std::static_pointer_cast<events_t>(get_events())->present_surface;
4233 }
4234 
4235 
4236 std::function<void(surface_t, output_t, int32_t, zwp_fullscreen_shell_mode_feedback_v1_t)> &zwp_fullscreen_shell_v1_t::on_present_surface_for_mode()
4237 {
4238  return std::static_pointer_cast<events_t>(get_events())->present_surface_for_mode;
4239 }
4240 
4241 
4242 void zwp_fullscreen_shell_v1_t::capability(zwp_fullscreen_shell_v1_capability const& capability, bool post)
4243 {
4244  send_event(post, 0, static_cast<uint32_t>(capability));
4245 }
4246 
4247 void zwp_fullscreen_shell_v1_t::post_invalid_method(std::string const& msg)
4248 {
4249  post_error(static_cast<uint32_t>(zwp_fullscreen_shell_v1_error::invalid_method), msg);
4250 }
4251 
4252 void zwp_fullscreen_shell_v1_t::post_role(std::string const& msg)
4253 {
4254  post_error(static_cast<uint32_t>(zwp_fullscreen_shell_v1_error::role), msg);
4255 }
4256 
4257 int zwp_fullscreen_shell_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4258 {
4259  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4260  switch(opcode)
4261  {
4262  case 0:
4263  if(events->release) events->release();
4264  break;
4265  case 1:
4266  if(events->present_surface) events->present_surface(surface_t(args[0].get<resource_t>()), zwp_fullscreen_shell_v1_present_method(args[1].get<uint32_t>()), output_t(args[2].get<resource_t>()));
4267  break;
4268  case 2:
4269  if(events->present_surface_for_mode) events->present_surface_for_mode(surface_t(args[0].get<resource_t>()), output_t(args[1].get<resource_t>()), args[2].get<int32_t>(), zwp_fullscreen_shell_mode_feedback_v1_t(args[3].get<resource_t>()));
4270  break;
4271  }
4272  return 0;
4273 }
4274 
4275 
4276 
4277 
4278 zwp_fullscreen_shell_mode_feedback_v1_t::zwp_fullscreen_shell_mode_feedback_v1_t(const client_t& client, uint32_t id, int version)
4279  : resource_t(client, &server::detail::zwp_fullscreen_shell_mode_feedback_v1_interface, id, version)
4280 {
4281  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4282 }
4283 
4284 zwp_fullscreen_shell_mode_feedback_v1_t::zwp_fullscreen_shell_mode_feedback_v1_t(const resource_t &resource)
4285  : resource_t(resource)
4286 {
4287  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4288 }
4289 
4290 const std::string zwp_fullscreen_shell_mode_feedback_v1_t::interface_name = "zwp_fullscreen_shell_mode_feedback_v1";
4291 
4292 zwp_fullscreen_shell_mode_feedback_v1_t::operator zwp_fullscreen_shell_mode_feedback_v1*() const
4293 {
4294  return reinterpret_cast<zwp_fullscreen_shell_mode_feedback_v1*> (c_ptr());
4295 }
4296 
4297 void zwp_fullscreen_shell_mode_feedback_v1_t::mode_successful(bool post)
4298 {
4299  send_event(post, 0);
4300 }
4301 
4302 void zwp_fullscreen_shell_mode_feedback_v1_t::mode_failed(bool post)
4303 {
4304  send_event(post, 1);
4305 }
4306 
4307 void zwp_fullscreen_shell_mode_feedback_v1_t::present_cancelled(bool post)
4308 {
4309  send_event(post, 2);
4310 }
4311 
4312 int zwp_fullscreen_shell_mode_feedback_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4313 {
4314  return 0;
4315 }
4316 
4317 zwp_idle_inhibit_manager_v1_t::zwp_idle_inhibit_manager_v1_t(const client_t& client, uint32_t id, int version)
4318  : resource_t(client, &server::detail::zwp_idle_inhibit_manager_v1_interface, id, version)
4319 {
4320  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4321 }
4322 
4323 zwp_idle_inhibit_manager_v1_t::zwp_idle_inhibit_manager_v1_t(const resource_t &resource)
4324  : resource_t(resource)
4325 {
4326  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4327 }
4328 
4329 const std::string zwp_idle_inhibit_manager_v1_t::interface_name = "zwp_idle_inhibit_manager_v1";
4330 
4331 zwp_idle_inhibit_manager_v1_t::operator zwp_idle_inhibit_manager_v1*() const
4332 {
4333  return reinterpret_cast<zwp_idle_inhibit_manager_v1*> (c_ptr());
4334 }
4335 
4337 {
4338  return std::static_pointer_cast<events_t>(get_events())->destroy;
4339 }
4340 
4341 
4343 {
4344  return std::static_pointer_cast<events_t>(get_events())->create_inhibitor;
4345 }
4346 
4347 
4348 int zwp_idle_inhibit_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4349 {
4350  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4351  switch(opcode)
4352  {
4353  case 0:
4354  if(events->destroy) events->destroy();
4355  break;
4356  case 1:
4357  if(events->create_inhibitor) events->create_inhibitor(zwp_idle_inhibitor_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
4358  break;
4359  }
4360  return 0;
4361 }
4362 
4363 zwp_idle_inhibitor_v1_t::zwp_idle_inhibitor_v1_t(const client_t& client, uint32_t id, int version)
4364  : resource_t(client, &server::detail::zwp_idle_inhibitor_v1_interface, id, version)
4365 {
4366  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4367 }
4368 
4369 zwp_idle_inhibitor_v1_t::zwp_idle_inhibitor_v1_t(const resource_t &resource)
4370  : resource_t(resource)
4371 {
4372  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4373 }
4374 
4375 const std::string zwp_idle_inhibitor_v1_t::interface_name = "zwp_idle_inhibitor_v1";
4376 
4377 zwp_idle_inhibitor_v1_t::operator zwp_idle_inhibitor_v1*() const
4378 {
4379  return reinterpret_cast<zwp_idle_inhibitor_v1*> (c_ptr());
4380 }
4381 
4382 std::function<void()> &zwp_idle_inhibitor_v1_t::on_destroy()
4383 {
4384  return std::static_pointer_cast<events_t>(get_events())->destroy;
4385 }
4386 
4387 
4388 int zwp_idle_inhibitor_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4389 {
4390  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4391  switch(opcode)
4392  {
4393  case 0:
4394  if(events->destroy) events->destroy();
4395  break;
4396  }
4397  return 0;
4398 }
4399 
4400 zwp_input_method_context_v1_t::zwp_input_method_context_v1_t(const client_t& client, uint32_t id, int version)
4401  : resource_t(client, &server::detail::zwp_input_method_context_v1_interface, id, version)
4402 {
4403  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4404 }
4405 
4406 zwp_input_method_context_v1_t::zwp_input_method_context_v1_t(const resource_t &resource)
4407  : resource_t(resource)
4408 {
4409  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4410 }
4411 
4412 const std::string zwp_input_method_context_v1_t::interface_name = "zwp_input_method_context_v1";
4413 
4414 zwp_input_method_context_v1_t::operator zwp_input_method_context_v1*() const
4415 {
4416  return reinterpret_cast<zwp_input_method_context_v1*> (c_ptr());
4417 }
4418 
4419 std::function<void()> &zwp_input_method_context_v1_t::on_destroy()
4420 {
4421  return std::static_pointer_cast<events_t>(get_events())->destroy;
4422 }
4423 
4424 
4425 std::function<void(uint32_t, std::string)> &zwp_input_method_context_v1_t::on_commit_string()
4426 {
4427  return std::static_pointer_cast<events_t>(get_events())->commit_string;
4428 }
4429 
4430 
4431 std::function<void(uint32_t, std::string, std::string)> &zwp_input_method_context_v1_t::on_preedit_string()
4432 {
4433  return std::static_pointer_cast<events_t>(get_events())->preedit_string;
4434 }
4435 
4436 
4437 std::function<void(uint32_t, uint32_t, zwp_text_input_v1_preedit_style)> &zwp_input_method_context_v1_t::on_preedit_styling()
4438 {
4439  return std::static_pointer_cast<events_t>(get_events())->preedit_styling;
4440 }
4441 
4442 
4444 {
4445  return std::static_pointer_cast<events_t>(get_events())->preedit_cursor;
4446 }
4447 
4448 
4449 std::function<void(int32_t, uint32_t)> &zwp_input_method_context_v1_t::on_delete_surrounding_text()
4450 {
4451  return std::static_pointer_cast<events_t>(get_events())->delete_surrounding_text;
4452 }
4453 
4454 
4455 std::function<void(int32_t, int32_t)> &zwp_input_method_context_v1_t::on_cursor_position()
4456 {
4457  return std::static_pointer_cast<events_t>(get_events())->cursor_position;
4458 }
4459 
4460 
4462 {
4463  return std::static_pointer_cast<events_t>(get_events())->modifiers_map;
4464 }
4465 
4466 
4467 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> &zwp_input_method_context_v1_t::on_keysym()
4468 {
4469  return std::static_pointer_cast<events_t>(get_events())->keysym;
4470 }
4471 
4472 
4474 {
4475  return std::static_pointer_cast<events_t>(get_events())->grab_keyboard;
4476 }
4477 
4478 
4479 std::function<void(uint32_t, uint32_t, uint32_t, keyboard_key_state)> &zwp_input_method_context_v1_t::on_key()
4480 {
4481  return std::static_pointer_cast<events_t>(get_events())->key;
4482 }
4483 
4484 
4485 std::function<void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> &zwp_input_method_context_v1_t::on_modifiers()
4486 {
4487  return std::static_pointer_cast<events_t>(get_events())->modifiers;
4488 }
4489 
4490 
4491 std::function<void(uint32_t, std::string)> &zwp_input_method_context_v1_t::on_language()
4492 {
4493  return std::static_pointer_cast<events_t>(get_events())->language;
4494 }
4495 
4496 
4497 std::function<void(uint32_t, uint32_t)> &zwp_input_method_context_v1_t::on_text_direction()
4498 {
4499  return std::static_pointer_cast<events_t>(get_events())->text_direction;
4500 }
4501 
4502 
4503 void zwp_input_method_context_v1_t::surrounding_text(std::string const& text, uint32_t cursor, uint32_t anchor, bool post)
4504 {
4505  send_event(post, 0, text, cursor, anchor);
4506 }
4507 
4508 void zwp_input_method_context_v1_t::reset(bool post)
4509 {
4510  send_event(post, 1);
4511 }
4512 
4513 void zwp_input_method_context_v1_t::content_type(zwp_text_input_v1_content_hint const& hint, zwp_text_input_v1_content_purpose const& purpose, bool post)
4514 {
4515  send_event(post, 2, static_cast<uint32_t>(hint), static_cast<uint32_t>(purpose));
4516 }
4517 
4518 void zwp_input_method_context_v1_t::invoke_action(uint32_t button, uint32_t index, bool post)
4519 {
4520  send_event(post, 3, button, index);
4521 }
4522 
4523 void zwp_input_method_context_v1_t::commit_state(uint32_t serial, bool post)
4524 {
4525  send_event(post, 4, serial);
4526 }
4527 
4528 void zwp_input_method_context_v1_t::preferred_language(std::string const& language, bool post)
4529 {
4530  send_event(post, 5, language);
4531 }
4532 
4533 int zwp_input_method_context_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4534 {
4535  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4536  switch(opcode)
4537  {
4538  case 0:
4539  if(events->destroy) events->destroy();
4540  break;
4541  case 1:
4542  if(events->commit_string) events->commit_string(args[0].get<uint32_t>(), args[1].get<std::string>());
4543  break;
4544  case 2:
4545  if(events->preedit_string) events->preedit_string(args[0].get<uint32_t>(), args[1].get<std::string>(), args[2].get<std::string>());
4546  break;
4547  case 3:
4548  if(events->preedit_styling) events->preedit_styling(args[0].get<uint32_t>(), args[1].get<uint32_t>(), zwp_text_input_v1_preedit_style(args[2].get<uint32_t>()));
4549  break;
4550  case 4:
4551  if(events->preedit_cursor) events->preedit_cursor(args[0].get<int32_t>());
4552  break;
4553  case 5:
4554  if(events->delete_surrounding_text) events->delete_surrounding_text(args[0].get<int32_t>(), args[1].get<uint32_t>());
4555  break;
4556  case 6:
4557  if(events->cursor_position) events->cursor_position(args[0].get<int32_t>(), args[1].get<int32_t>());
4558  break;
4559  case 7:
4560  if(events->modifiers_map) events->modifiers_map(args[0].get<array_t>());
4561  break;
4562  case 8:
4563  if(events->keysym) events->keysym(args[0].get<uint32_t>(), args[1].get<uint32_t>(), args[2].get<uint32_t>(), keyboard_key_state(args[3].get<uint32_t>()), args[4].get<uint32_t>());
4564  break;
4565  case 9:
4566  if(events->grab_keyboard) events->grab_keyboard(keyboard_t(args[0].get<resource_t>()));
4567  break;
4568  case 10:
4569  if(events->key) events->key(args[0].get<uint32_t>(), args[1].get<uint32_t>(), args[2].get<uint32_t>(), keyboard_key_state(args[3].get<uint32_t>()));
4570  break;
4571  case 11:
4572  if(events->modifiers) events->modifiers(args[0].get<uint32_t>(), args[1].get<uint32_t>(), args[2].get<uint32_t>(), args[3].get<uint32_t>(), args[4].get<uint32_t>());
4573  break;
4574  case 12:
4575  if(events->language) events->language(args[0].get<uint32_t>(), args[1].get<std::string>());
4576  break;
4577  case 13:
4578  if(events->text_direction) events->text_direction(args[0].get<uint32_t>(), args[1].get<uint32_t>());
4579  break;
4580  }
4581  return 0;
4582 }
4583 
4584 zwp_input_method_v1_t::zwp_input_method_v1_t(const client_t& client, uint32_t id, int version)
4585  : resource_t(client, &server::detail::zwp_input_method_v1_interface, id, version)
4586 {
4587  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4588 }
4589 
4590 zwp_input_method_v1_t::zwp_input_method_v1_t(const resource_t &resource)
4591  : resource_t(resource)
4592 {
4593  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4594 }
4595 
4596 const std::string zwp_input_method_v1_t::interface_name = "zwp_input_method_v1";
4597 
4598 zwp_input_method_v1_t::operator zwp_input_method_v1*() const
4599 {
4600  return reinterpret_cast<zwp_input_method_v1*> (c_ptr());
4601 }
4602 
4604 {
4605  send_event(post, 0, nullptr);
4606 }
4607 
4609 {
4610  send_event(post, 1, context.proxy_has_object() ? reinterpret_cast<wl_object*>(context.c_ptr()) : nullptr);
4611 }
4612 
4613 int zwp_input_method_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4614 {
4615  return 0;
4616 }
4617 
4618 zwp_input_panel_v1_t::zwp_input_panel_v1_t(const client_t& client, uint32_t id, int version)
4619  : resource_t(client, &server::detail::zwp_input_panel_v1_interface, id, version)
4620 {
4621  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4622 }
4623 
4624 zwp_input_panel_v1_t::zwp_input_panel_v1_t(const resource_t &resource)
4625  : resource_t(resource)
4626 {
4627  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4628 }
4629 
4630 const std::string zwp_input_panel_v1_t::interface_name = "zwp_input_panel_v1";
4631 
4632 zwp_input_panel_v1_t::operator zwp_input_panel_v1*() const
4633 {
4634  return reinterpret_cast<zwp_input_panel_v1*> (c_ptr());
4635 }
4636 
4637 std::function<void(zwp_input_panel_surface_v1_t, surface_t)> &zwp_input_panel_v1_t::on_get_input_panel_surface()
4638 {
4639  return std::static_pointer_cast<events_t>(get_events())->get_input_panel_surface;
4640 }
4641 
4642 
4643 int zwp_input_panel_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4644 {
4645  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4646  switch(opcode)
4647  {
4648  case 0:
4649  if(events->get_input_panel_surface) events->get_input_panel_surface(zwp_input_panel_surface_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
4650  break;
4651  }
4652  return 0;
4653 }
4654 
4655 zwp_input_panel_surface_v1_t::zwp_input_panel_surface_v1_t(const client_t& client, uint32_t id, int version)
4656  : resource_t(client, &server::detail::zwp_input_panel_surface_v1_interface, id, version)
4657 {
4658  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4659 }
4660 
4661 zwp_input_panel_surface_v1_t::zwp_input_panel_surface_v1_t(const resource_t &resource)
4662  : resource_t(resource)
4663 {
4664  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4665 }
4666 
4667 const std::string zwp_input_panel_surface_v1_t::interface_name = "zwp_input_panel_surface_v1";
4668 
4669 zwp_input_panel_surface_v1_t::operator zwp_input_panel_surface_v1*() const
4670 {
4671  return reinterpret_cast<zwp_input_panel_surface_v1*> (c_ptr());
4672 }
4673 
4674 std::function<void(output_t, zwp_input_panel_surface_v1_position)> &zwp_input_panel_surface_v1_t::on_set_toplevel()
4675 {
4676  return std::static_pointer_cast<events_t>(get_events())->set_toplevel;
4677 }
4678 
4679 
4680 std::function<void()> &zwp_input_panel_surface_v1_t::on_set_overlay_panel()
4681 {
4682  return std::static_pointer_cast<events_t>(get_events())->set_overlay_panel;
4683 }
4684 
4685 
4686 int zwp_input_panel_surface_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4687 {
4688  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4689  switch(opcode)
4690  {
4691  case 0:
4692  if(events->set_toplevel) events->set_toplevel(output_t(args[0].get<resource_t>()), zwp_input_panel_surface_v1_position(args[1].get<uint32_t>()));
4693  break;
4694  case 1:
4695  if(events->set_overlay_panel) events->set_overlay_panel();
4696  break;
4697  }
4698  return 0;
4699 }
4700 
4701 
4702 zwp_input_timestamps_manager_v1_t::zwp_input_timestamps_manager_v1_t(const client_t& client, uint32_t id, int version)
4703  : resource_t(client, &server::detail::zwp_input_timestamps_manager_v1_interface, id, version)
4704 {
4705  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4706 }
4707 
4708 zwp_input_timestamps_manager_v1_t::zwp_input_timestamps_manager_v1_t(const resource_t &resource)
4709  : resource_t(resource)
4710 {
4711  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4712 }
4713 
4714 const std::string zwp_input_timestamps_manager_v1_t::interface_name = "zwp_input_timestamps_manager_v1";
4715 
4716 zwp_input_timestamps_manager_v1_t::operator zwp_input_timestamps_manager_v1*() const
4717 {
4718  return reinterpret_cast<zwp_input_timestamps_manager_v1*> (c_ptr());
4719 }
4720 
4722 {
4723  return std::static_pointer_cast<events_t>(get_events())->destroy;
4724 }
4725 
4726 
4728 {
4729  return std::static_pointer_cast<events_t>(get_events())->get_keyboard_timestamps;
4730 }
4731 
4732 
4734 {
4735  return std::static_pointer_cast<events_t>(get_events())->get_pointer_timestamps;
4736 }
4737 
4738 
4740 {
4741  return std::static_pointer_cast<events_t>(get_events())->get_touch_timestamps;
4742 }
4743 
4744 
4745 int zwp_input_timestamps_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4746 {
4747  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4748  switch(opcode)
4749  {
4750  case 0:
4751  if(events->destroy) events->destroy();
4752  break;
4753  case 1:
4754  if(events->get_keyboard_timestamps) events->get_keyboard_timestamps(zwp_input_timestamps_v1_t(args[0].get<resource_t>()), keyboard_t(args[1].get<resource_t>()));
4755  break;
4756  case 2:
4757  if(events->get_pointer_timestamps) events->get_pointer_timestamps(zwp_input_timestamps_v1_t(args[0].get<resource_t>()), pointer_t(args[1].get<resource_t>()));
4758  break;
4759  case 3:
4760  if(events->get_touch_timestamps) events->get_touch_timestamps(zwp_input_timestamps_v1_t(args[0].get<resource_t>()), touch_t(args[1].get<resource_t>()));
4761  break;
4762  }
4763  return 0;
4764 }
4765 
4766 zwp_input_timestamps_v1_t::zwp_input_timestamps_v1_t(const client_t& client, uint32_t id, int version)
4767  : resource_t(client, &server::detail::zwp_input_timestamps_v1_interface, id, version)
4768 {
4769  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4770 }
4771 
4772 zwp_input_timestamps_v1_t::zwp_input_timestamps_v1_t(const resource_t &resource)
4773  : resource_t(resource)
4774 {
4775  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4776 }
4777 
4778 const std::string zwp_input_timestamps_v1_t::interface_name = "zwp_input_timestamps_v1";
4779 
4780 zwp_input_timestamps_v1_t::operator zwp_input_timestamps_v1*() const
4781 {
4782  return reinterpret_cast<zwp_input_timestamps_v1*> (c_ptr());
4783 }
4784 
4786 {
4787  return std::static_pointer_cast<events_t>(get_events())->destroy;
4788 }
4789 
4790 
4791 void zwp_input_timestamps_v1_t::timestamp(uint32_t tv_sec_hi, uint32_t tv_sec_lo, uint32_t tv_nsec, bool post)
4792 {
4793  send_event(post, 0, tv_sec_hi, tv_sec_lo, tv_nsec);
4794 }
4795 
4796 int zwp_input_timestamps_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4797 {
4798  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4799  switch(opcode)
4800  {
4801  case 0:
4802  if(events->destroy) events->destroy();
4803  break;
4804  }
4805  return 0;
4806 }
4807 
4808 zwp_keyboard_shortcuts_inhibit_manager_v1_t::zwp_keyboard_shortcuts_inhibit_manager_v1_t(const client_t& client, uint32_t id, int version)
4809  : resource_t(client, &server::detail::zwp_keyboard_shortcuts_inhibit_manager_v1_interface, id, version)
4810 {
4811  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4812 }
4813 
4814 zwp_keyboard_shortcuts_inhibit_manager_v1_t::zwp_keyboard_shortcuts_inhibit_manager_v1_t(const resource_t &resource)
4815  : resource_t(resource)
4816 {
4817  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4818 }
4819 
4820 const std::string zwp_keyboard_shortcuts_inhibit_manager_v1_t::interface_name = "zwp_keyboard_shortcuts_inhibit_manager_v1";
4821 
4822 zwp_keyboard_shortcuts_inhibit_manager_v1_t::operator zwp_keyboard_shortcuts_inhibit_manager_v1*() const
4823 {
4824  return reinterpret_cast<zwp_keyboard_shortcuts_inhibit_manager_v1*> (c_ptr());
4825 }
4826 
4828 {
4829  return std::static_pointer_cast<events_t>(get_events())->destroy;
4830 }
4831 
4832 
4834 {
4835  return std::static_pointer_cast<events_t>(get_events())->inhibit_shortcuts;
4836 }
4837 
4838 
4840 {
4841  post_error(static_cast<uint32_t>(zwp_keyboard_shortcuts_inhibit_manager_v1_error::already_inhibited), msg);
4842 }
4843 
4844 int zwp_keyboard_shortcuts_inhibit_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4845 {
4846  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4847  switch(opcode)
4848  {
4849  case 0:
4850  if(events->destroy) events->destroy();
4851  break;
4852  case 1:
4853  if(events->inhibit_shortcuts) events->inhibit_shortcuts(zwp_keyboard_shortcuts_inhibitor_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()), seat_t(args[2].get<resource_t>()));
4854  break;
4855  }
4856  return 0;
4857 }
4858 
4859 
4860 zwp_keyboard_shortcuts_inhibitor_v1_t::zwp_keyboard_shortcuts_inhibitor_v1_t(const client_t& client, uint32_t id, int version)
4861  : resource_t(client, &server::detail::zwp_keyboard_shortcuts_inhibitor_v1_interface, id, version)
4862 {
4863  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4864 }
4865 
4866 zwp_keyboard_shortcuts_inhibitor_v1_t::zwp_keyboard_shortcuts_inhibitor_v1_t(const resource_t &resource)
4867  : resource_t(resource)
4868 {
4869  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4870 }
4871 
4872 const std::string zwp_keyboard_shortcuts_inhibitor_v1_t::interface_name = "zwp_keyboard_shortcuts_inhibitor_v1";
4873 
4874 zwp_keyboard_shortcuts_inhibitor_v1_t::operator zwp_keyboard_shortcuts_inhibitor_v1*() const
4875 {
4876  return reinterpret_cast<zwp_keyboard_shortcuts_inhibitor_v1*> (c_ptr());
4877 }
4878 
4880 {
4881  return std::static_pointer_cast<events_t>(get_events())->destroy;
4882 }
4883 
4884 
4886 {
4887  send_event(post, 0);
4888 }
4889 
4891 {
4892  send_event(post, 1);
4893 }
4894 
4895 int zwp_keyboard_shortcuts_inhibitor_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4896 {
4897  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4898  switch(opcode)
4899  {
4900  case 0:
4901  if(events->destroy) events->destroy();
4902  break;
4903  }
4904  return 0;
4905 }
4906 
4907 zwp_linux_dmabuf_v1_t::zwp_linux_dmabuf_v1_t(const client_t& client, uint32_t id, int version)
4908  : resource_t(client, &server::detail::zwp_linux_dmabuf_v1_interface, id, version)
4909 {
4910  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4911 }
4912 
4913 zwp_linux_dmabuf_v1_t::zwp_linux_dmabuf_v1_t(const resource_t &resource)
4914  : resource_t(resource)
4915 {
4916  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4917 }
4918 
4919 const std::string zwp_linux_dmabuf_v1_t::interface_name = "zwp_linux_dmabuf_v1";
4920 
4921 zwp_linux_dmabuf_v1_t::operator zwp_linux_dmabuf_v1*() const
4922 {
4923  return reinterpret_cast<zwp_linux_dmabuf_v1*> (c_ptr());
4924 }
4925 
4926 std::function<void()> &zwp_linux_dmabuf_v1_t::on_destroy()
4927 {
4928  return std::static_pointer_cast<events_t>(get_events())->destroy;
4929 }
4930 
4931 
4933 {
4934  return std::static_pointer_cast<events_t>(get_events())->create_params;
4935 }
4936 
4937 
4939 {
4940  return std::static_pointer_cast<events_t>(get_events())->get_default_feedback;
4941 }
4942 
4943 
4945 {
4946  return std::static_pointer_cast<events_t>(get_events())->get_surface_feedback;
4947 }
4948 
4949 
4950 void zwp_linux_dmabuf_v1_t::format(uint32_t format, bool post)
4951 {
4952  send_event(post, 0, format);
4953 }
4954 
4955 void zwp_linux_dmabuf_v1_t::modifier(uint32_t format, uint32_t modifier_hi, uint32_t modifier_lo, bool post)
4956 {
4957  send_event(post, 1, format, modifier_hi, modifier_lo);
4958 }
4959 
4961 {
4962  return (get_version() >= modifier_since_version);
4963 }
4964 
4965 int zwp_linux_dmabuf_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
4966 {
4967  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
4968  switch(opcode)
4969  {
4970  case 0:
4971  if(events->destroy) events->destroy();
4972  break;
4973  case 1:
4974  if(events->create_params) events->create_params(zwp_linux_buffer_params_v1_t(args[0].get<resource_t>()));
4975  break;
4976  case 2:
4977  if(events->get_default_feedback) events->get_default_feedback(zwp_linux_dmabuf_feedback_v1_t(args[0].get<resource_t>()));
4978  break;
4979  case 3:
4980  if(events->get_surface_feedback) events->get_surface_feedback(zwp_linux_dmabuf_feedback_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
4981  break;
4982  }
4983  return 0;
4984 }
4985 
4986 zwp_linux_buffer_params_v1_t::zwp_linux_buffer_params_v1_t(const client_t& client, uint32_t id, int version)
4987  : resource_t(client, &server::detail::zwp_linux_buffer_params_v1_interface, id, version)
4988 {
4989  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4990 }
4991 
4992 zwp_linux_buffer_params_v1_t::zwp_linux_buffer_params_v1_t(const resource_t &resource)
4993  : resource_t(resource)
4994 {
4995  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
4996 }
4997 
4998 const std::string zwp_linux_buffer_params_v1_t::interface_name = "zwp_linux_buffer_params_v1";
4999 
5000 zwp_linux_buffer_params_v1_t::operator zwp_linux_buffer_params_v1*() const
5001 {
5002  return reinterpret_cast<zwp_linux_buffer_params_v1*> (c_ptr());
5003 }
5004 
5006 {
5007  return std::static_pointer_cast<events_t>(get_events())->destroy;
5008 }
5009 
5010 
5011 std::function<void(int, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> &zwp_linux_buffer_params_v1_t::on_add()
5012 {
5013  return std::static_pointer_cast<events_t>(get_events())->add;
5014 }
5015 
5016 
5017 std::function<void(int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> &zwp_linux_buffer_params_v1_t::on_create()
5018 {
5019  return std::static_pointer_cast<events_t>(get_events())->create;
5020 }
5021 
5022 
5023 std::function<void(buffer_t, int32_t, int32_t, uint32_t, zwp_linux_buffer_params_v1_flags)> &zwp_linux_buffer_params_v1_t::on_create_immed()
5024 {
5025  return std::static_pointer_cast<events_t>(get_events())->create_immed;
5026 }
5027 
5028 
5030 {
5031  send_event(post, 0, nullptr);
5032 }
5033 
5035 {
5036  send_event(post, 1);
5037 }
5038 
5040 {
5041  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::already_used), msg);
5042 }
5043 
5045 {
5046  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::plane_idx), msg);
5047 }
5048 
5050 {
5051  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::plane_set), msg);
5052 }
5053 
5055 {
5056  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::incomplete), msg);
5057 }
5058 
5060 {
5061  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::invalid_format), msg);
5062 }
5063 
5065 {
5066  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::invalid_dimensions), msg);
5067 }
5068 
5070 {
5071  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::out_of_bounds), msg);
5072 }
5073 
5075 {
5076  post_error(static_cast<uint32_t>(zwp_linux_buffer_params_v1_error::invalid_wl_buffer), msg);
5077 }
5078 
5079 int zwp_linux_buffer_params_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5080 {
5081  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5082  switch(opcode)
5083  {
5084  case 0:
5085  if(events->destroy) events->destroy();
5086  break;
5087  case 1:
5088  if(events->add) events->add(args[0].get<int>(), args[1].get<uint32_t>(), args[2].get<uint32_t>(), args[3].get<uint32_t>(), args[4].get<uint32_t>(), args[5].get<uint32_t>());
5089  break;
5090  case 2:
5091  if(events->create) events->create(args[0].get<int32_t>(), args[1].get<int32_t>(), args[2].get<uint32_t>(), zwp_linux_buffer_params_v1_flags(args[3].get<uint32_t>()));
5092  break;
5093  case 3:
5094  if(events->create_immed) events->create_immed(buffer_t(args[0].get<resource_t>()), args[1].get<int32_t>(), args[2].get<int32_t>(), args[3].get<uint32_t>(), zwp_linux_buffer_params_v1_flags(args[4].get<uint32_t>()));
5095  break;
5096  }
5097  return 0;
5098 }
5099 
5100 const bitfield<3, 6> zwp_linux_buffer_params_v1_flags::y_invert{1};
5101 const bitfield<3, 6> zwp_linux_buffer_params_v1_flags::interlaced{2};
5102 const bitfield<3, 6> zwp_linux_buffer_params_v1_flags::bottom_first{4};
5103 
5104 
5105 zwp_linux_dmabuf_feedback_v1_t::zwp_linux_dmabuf_feedback_v1_t(const client_t& client, uint32_t id, int version)
5106  : resource_t(client, &server::detail::zwp_linux_dmabuf_feedback_v1_interface, id, version)
5107 {
5108  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5109 }
5110 
5111 zwp_linux_dmabuf_feedback_v1_t::zwp_linux_dmabuf_feedback_v1_t(const resource_t &resource)
5112  : resource_t(resource)
5113 {
5114  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5115 }
5116 
5117 const std::string zwp_linux_dmabuf_feedback_v1_t::interface_name = "zwp_linux_dmabuf_feedback_v1";
5118 
5119 zwp_linux_dmabuf_feedback_v1_t::operator zwp_linux_dmabuf_feedback_v1*() const
5120 {
5121  return reinterpret_cast<zwp_linux_dmabuf_feedback_v1*> (c_ptr());
5122 }
5123 
5125 {
5126  return std::static_pointer_cast<events_t>(get_events())->destroy;
5127 }
5128 
5129 
5131 {
5132  send_event(post, 0);
5133 }
5134 
5135 void zwp_linux_dmabuf_feedback_v1_t::format_table(int fd, uint32_t size, bool post)
5136 {
5137  send_event(post, 1, argument_t::fd(fd), size);
5138 }
5139 
5140 void zwp_linux_dmabuf_feedback_v1_t::main_device(array_t const& device, bool post)
5141 {
5142  send_event(post, 2, device);
5143 }
5144 
5146 {
5147  send_event(post, 3);
5148 }
5149 
5150 void zwp_linux_dmabuf_feedback_v1_t::tranche_target_device(array_t const& device, bool post)
5151 {
5152  send_event(post, 4, device);
5153 }
5154 
5155 void zwp_linux_dmabuf_feedback_v1_t::tranche_formats(array_t const& indices, bool post)
5156 {
5157  send_event(post, 5, indices);
5158 }
5159 
5160 void zwp_linux_dmabuf_feedback_v1_t::tranche_flags(zwp_linux_dmabuf_feedback_v1_tranche_flags const& flags, bool post)
5161 {
5162  send_event(post, 6, static_cast<uint32_t>(flags));
5163 }
5164 
5165 int zwp_linux_dmabuf_feedback_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5166 {
5167  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5168  switch(opcode)
5169  {
5170  case 0:
5171  if(events->destroy) events->destroy();
5172  break;
5173  }
5174  return 0;
5175 }
5176 const bitfield<1, 7> zwp_linux_dmabuf_feedback_v1_tranche_flags::scanout{1};
5177 
5178 
5179 zwp_linux_explicit_synchronization_v1_t::zwp_linux_explicit_synchronization_v1_t(const client_t& client, uint32_t id, int version)
5180  : resource_t(client, &server::detail::zwp_linux_explicit_synchronization_v1_interface, id, version)
5181 {
5182  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5183 }
5184 
5185 zwp_linux_explicit_synchronization_v1_t::zwp_linux_explicit_synchronization_v1_t(const resource_t &resource)
5186  : resource_t(resource)
5187 {
5188  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5189 }
5190 
5191 const std::string zwp_linux_explicit_synchronization_v1_t::interface_name = "zwp_linux_explicit_synchronization_v1";
5192 
5193 zwp_linux_explicit_synchronization_v1_t::operator zwp_linux_explicit_synchronization_v1*() const
5194 {
5195  return reinterpret_cast<zwp_linux_explicit_synchronization_v1*> (c_ptr());
5196 }
5197 
5199 {
5200  return std::static_pointer_cast<events_t>(get_events())->destroy;
5201 }
5202 
5203 
5205 {
5206  return std::static_pointer_cast<events_t>(get_events())->get_synchronization;
5207 }
5208 
5209 
5211 {
5212  post_error(static_cast<uint32_t>(zwp_linux_explicit_synchronization_v1_error::synchronization_exists), msg);
5213 }
5214 
5215 int zwp_linux_explicit_synchronization_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5216 {
5217  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5218  switch(opcode)
5219  {
5220  case 0:
5221  if(events->destroy) events->destroy();
5222  break;
5223  case 1:
5224  if(events->get_synchronization) events->get_synchronization(zwp_linux_surface_synchronization_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
5225  break;
5226  }
5227  return 0;
5228 }
5229 
5230 
5231 zwp_linux_surface_synchronization_v1_t::zwp_linux_surface_synchronization_v1_t(const client_t& client, uint32_t id, int version)
5232  : resource_t(client, &server::detail::zwp_linux_surface_synchronization_v1_interface, id, version)
5233 {
5234  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5235 }
5236 
5237 zwp_linux_surface_synchronization_v1_t::zwp_linux_surface_synchronization_v1_t(const resource_t &resource)
5238  : resource_t(resource)
5239 {
5240  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5241 }
5242 
5243 const std::string zwp_linux_surface_synchronization_v1_t::interface_name = "zwp_linux_surface_synchronization_v1";
5244 
5245 zwp_linux_surface_synchronization_v1_t::operator zwp_linux_surface_synchronization_v1*() const
5246 {
5247  return reinterpret_cast<zwp_linux_surface_synchronization_v1*> (c_ptr());
5248 }
5249 
5251 {
5252  return std::static_pointer_cast<events_t>(get_events())->destroy;
5253 }
5254 
5255 
5257 {
5258  return std::static_pointer_cast<events_t>(get_events())->set_acquire_fence;
5259 }
5260 
5261 
5263 {
5264  return std::static_pointer_cast<events_t>(get_events())->get_release;
5265 }
5266 
5267 
5269 {
5270  post_error(static_cast<uint32_t>(zwp_linux_surface_synchronization_v1_error::invalid_fence), msg);
5271 }
5272 
5274 {
5275  post_error(static_cast<uint32_t>(zwp_linux_surface_synchronization_v1_error::duplicate_fence), msg);
5276 }
5277 
5279 {
5280  post_error(static_cast<uint32_t>(zwp_linux_surface_synchronization_v1_error::duplicate_release), msg);
5281 }
5282 
5284 {
5285  post_error(static_cast<uint32_t>(zwp_linux_surface_synchronization_v1_error::no_surface), msg);
5286 }
5287 
5289 {
5290  post_error(static_cast<uint32_t>(zwp_linux_surface_synchronization_v1_error::unsupported_buffer), msg);
5291 }
5292 
5294 {
5295  post_error(static_cast<uint32_t>(zwp_linux_surface_synchronization_v1_error::no_buffer), msg);
5296 }
5297 
5298 int zwp_linux_surface_synchronization_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5299 {
5300  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5301  switch(opcode)
5302  {
5303  case 0:
5304  if(events->destroy) events->destroy();
5305  break;
5306  case 1:
5307  if(events->set_acquire_fence) events->set_acquire_fence(args[0].get<int>());
5308  break;
5309  case 2:
5310  if(events->get_release) events->get_release(zwp_linux_buffer_release_v1_t(args[0].get<resource_t>()));
5311  break;
5312  }
5313  return 0;
5314 }
5315 
5316 
5317 zwp_linux_buffer_release_v1_t::zwp_linux_buffer_release_v1_t(const client_t& client, uint32_t id, int version)
5318  : resource_t(client, &server::detail::zwp_linux_buffer_release_v1_interface, id, version)
5319 {
5320  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5321 }
5322 
5323 zwp_linux_buffer_release_v1_t::zwp_linux_buffer_release_v1_t(const resource_t &resource)
5324  : resource_t(resource)
5325 {
5326  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5327 }
5328 
5329 const std::string zwp_linux_buffer_release_v1_t::interface_name = "zwp_linux_buffer_release_v1";
5330 
5331 zwp_linux_buffer_release_v1_t::operator zwp_linux_buffer_release_v1*() const
5332 {
5333  return reinterpret_cast<zwp_linux_buffer_release_v1*> (c_ptr());
5334 }
5335 
5337 {
5338  send_event(post, 0, argument_t::fd(fence));
5339 }
5340 
5342 {
5343  send_event(post, 1);
5344 }
5345 
5346 int zwp_linux_buffer_release_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5347 {
5348  return 0;
5349 }
5350 
5351 zwp_pointer_constraints_v1_t::zwp_pointer_constraints_v1_t(const client_t& client, uint32_t id, int version)
5352  : resource_t(client, &server::detail::zwp_pointer_constraints_v1_interface, id, version)
5353 {
5354  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5355 }
5356 
5357 zwp_pointer_constraints_v1_t::zwp_pointer_constraints_v1_t(const resource_t &resource)
5358  : resource_t(resource)
5359 {
5360  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5361 }
5362 
5363 const std::string zwp_pointer_constraints_v1_t::interface_name = "zwp_pointer_constraints_v1";
5364 
5365 zwp_pointer_constraints_v1_t::operator zwp_pointer_constraints_v1*() const
5366 {
5367  return reinterpret_cast<zwp_pointer_constraints_v1*> (c_ptr());
5368 }
5369 
5371 {
5372  return std::static_pointer_cast<events_t>(get_events())->destroy;
5373 }
5374 
5375 
5376 std::function<void(zwp_locked_pointer_v1_t, surface_t, pointer_t, region_t, zwp_pointer_constraints_v1_lifetime)> &zwp_pointer_constraints_v1_t::on_lock_pointer()
5377 {
5378  return std::static_pointer_cast<events_t>(get_events())->lock_pointer;
5379 }
5380 
5381 
5382 std::function<void(zwp_confined_pointer_v1_t, surface_t, pointer_t, region_t, zwp_pointer_constraints_v1_lifetime)> &zwp_pointer_constraints_v1_t::on_confine_pointer()
5383 {
5384  return std::static_pointer_cast<events_t>(get_events())->confine_pointer;
5385 }
5386 
5387 
5389 {
5390  post_error(static_cast<uint32_t>(zwp_pointer_constraints_v1_error::already_constrained), msg);
5391 }
5392 
5393 int zwp_pointer_constraints_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5394 {
5395  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5396  switch(opcode)
5397  {
5398  case 0:
5399  if(events->destroy) events->destroy();
5400  break;
5401  case 1:
5402  if(events->lock_pointer) events->lock_pointer(zwp_locked_pointer_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()), pointer_t(args[2].get<resource_t>()), region_t(args[3].get<resource_t>()), zwp_pointer_constraints_v1_lifetime(args[4].get<uint32_t>()));
5403  break;
5404  case 2:
5405  if(events->confine_pointer) events->confine_pointer(zwp_confined_pointer_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()), pointer_t(args[2].get<resource_t>()), region_t(args[3].get<resource_t>()), zwp_pointer_constraints_v1_lifetime(args[4].get<uint32_t>()));
5406  break;
5407  }
5408  return 0;
5409 }
5410 
5411 
5412 
5413 zwp_locked_pointer_v1_t::zwp_locked_pointer_v1_t(const client_t& client, uint32_t id, int version)
5414  : resource_t(client, &server::detail::zwp_locked_pointer_v1_interface, id, version)
5415 {
5416  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5417 }
5418 
5419 zwp_locked_pointer_v1_t::zwp_locked_pointer_v1_t(const resource_t &resource)
5420  : resource_t(resource)
5421 {
5422  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5423 }
5424 
5425 const std::string zwp_locked_pointer_v1_t::interface_name = "zwp_locked_pointer_v1";
5426 
5427 zwp_locked_pointer_v1_t::operator zwp_locked_pointer_v1*() const
5428 {
5429  return reinterpret_cast<zwp_locked_pointer_v1*> (c_ptr());
5430 }
5431 
5432 std::function<void()> &zwp_locked_pointer_v1_t::on_destroy()
5433 {
5434  return std::static_pointer_cast<events_t>(get_events())->destroy;
5435 }
5436 
5437 
5438 std::function<void(double, double)> &zwp_locked_pointer_v1_t::on_set_cursor_position_hint()
5439 {
5440  return std::static_pointer_cast<events_t>(get_events())->set_cursor_position_hint;
5441 }
5442 
5443 
5445 {
5446  return std::static_pointer_cast<events_t>(get_events())->set_region;
5447 }
5448 
5449 
5451 {
5452  send_event(post, 0);
5453 }
5454 
5456 {
5457  send_event(post, 1);
5458 }
5459 
5460 int zwp_locked_pointer_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5461 {
5462  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5463  switch(opcode)
5464  {
5465  case 0:
5466  if(events->destroy) events->destroy();
5467  break;
5468  case 1:
5469  if(events->set_cursor_position_hint) events->set_cursor_position_hint(args[0].get<double>(), args[1].get<double>());
5470  break;
5471  case 2:
5472  if(events->set_region) events->set_region(region_t(args[0].get<resource_t>()));
5473  break;
5474  }
5475  return 0;
5476 }
5477 
5478 zwp_confined_pointer_v1_t::zwp_confined_pointer_v1_t(const client_t& client, uint32_t id, int version)
5479  : resource_t(client, &server::detail::zwp_confined_pointer_v1_interface, id, version)
5480 {
5481  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5482 }
5483 
5484 zwp_confined_pointer_v1_t::zwp_confined_pointer_v1_t(const resource_t &resource)
5485  : resource_t(resource)
5486 {
5487  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5488 }
5489 
5490 const std::string zwp_confined_pointer_v1_t::interface_name = "zwp_confined_pointer_v1";
5491 
5492 zwp_confined_pointer_v1_t::operator zwp_confined_pointer_v1*() const
5493 {
5494  return reinterpret_cast<zwp_confined_pointer_v1*> (c_ptr());
5495 }
5496 
5498 {
5499  return std::static_pointer_cast<events_t>(get_events())->destroy;
5500 }
5501 
5502 
5504 {
5505  return std::static_pointer_cast<events_t>(get_events())->set_region;
5506 }
5507 
5508 
5510 {
5511  send_event(post, 0);
5512 }
5513 
5515 {
5516  send_event(post, 1);
5517 }
5518 
5519 int zwp_confined_pointer_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5520 {
5521  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5522  switch(opcode)
5523  {
5524  case 0:
5525  if(events->destroy) events->destroy();
5526  break;
5527  case 1:
5528  if(events->set_region) events->set_region(region_t(args[0].get<resource_t>()));
5529  break;
5530  }
5531  return 0;
5532 }
5533 
5534 zwp_pointer_gestures_v1_t::zwp_pointer_gestures_v1_t(const client_t& client, uint32_t id, int version)
5535  : resource_t(client, &server::detail::zwp_pointer_gestures_v1_interface, id, version)
5536 {
5537  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5538 }
5539 
5540 zwp_pointer_gestures_v1_t::zwp_pointer_gestures_v1_t(const resource_t &resource)
5541  : resource_t(resource)
5542 {
5543  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5544 }
5545 
5546 const std::string zwp_pointer_gestures_v1_t::interface_name = "zwp_pointer_gestures_v1";
5547 
5548 zwp_pointer_gestures_v1_t::operator zwp_pointer_gestures_v1*() const
5549 {
5550  return reinterpret_cast<zwp_pointer_gestures_v1*> (c_ptr());
5551 }
5552 
5554 {
5555  return std::static_pointer_cast<events_t>(get_events())->get_swipe_gesture;
5556 }
5557 
5558 
5560 {
5561  return std::static_pointer_cast<events_t>(get_events())->get_pinch_gesture;
5562 }
5563 
5564 
5566 {
5567  return std::static_pointer_cast<events_t>(get_events())->release;
5568 }
5569 
5570 
5572 {
5573  return std::static_pointer_cast<events_t>(get_events())->get_hold_gesture;
5574 }
5575 
5576 
5577 int zwp_pointer_gestures_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5578 {
5579  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5580  switch(opcode)
5581  {
5582  case 0:
5583  if(events->get_swipe_gesture) events->get_swipe_gesture(zwp_pointer_gesture_swipe_v1_t(args[0].get<resource_t>()), pointer_t(args[1].get<resource_t>()));
5584  break;
5585  case 1:
5586  if(events->get_pinch_gesture) events->get_pinch_gesture(zwp_pointer_gesture_pinch_v1_t(args[0].get<resource_t>()), pointer_t(args[1].get<resource_t>()));
5587  break;
5588  case 2:
5589  if(events->release) events->release();
5590  break;
5591  case 3:
5592  if(events->get_hold_gesture) events->get_hold_gesture(zwp_pointer_gesture_hold_v1_t(args[0].get<resource_t>()), pointer_t(args[1].get<resource_t>()));
5593  break;
5594  }
5595  return 0;
5596 }
5597 
5598 zwp_pointer_gesture_swipe_v1_t::zwp_pointer_gesture_swipe_v1_t(const client_t& client, uint32_t id, int version)
5599  : resource_t(client, &server::detail::zwp_pointer_gesture_swipe_v1_interface, id, version)
5600 {
5601  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5602 }
5603 
5604 zwp_pointer_gesture_swipe_v1_t::zwp_pointer_gesture_swipe_v1_t(const resource_t &resource)
5605  : resource_t(resource)
5606 {
5607  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5608 }
5609 
5610 const std::string zwp_pointer_gesture_swipe_v1_t::interface_name = "zwp_pointer_gesture_swipe_v1";
5611 
5612 zwp_pointer_gesture_swipe_v1_t::operator zwp_pointer_gesture_swipe_v1*() const
5613 {
5614  return reinterpret_cast<zwp_pointer_gesture_swipe_v1*> (c_ptr());
5615 }
5616 
5618 {
5619  return std::static_pointer_cast<events_t>(get_events())->destroy;
5620 }
5621 
5622 
5623 void zwp_pointer_gesture_swipe_v1_t::begin(uint32_t serial, uint32_t time, surface_t const& surface, uint32_t fingers, bool post)
5624 {
5625  send_event(post, 0, serial, time, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr, fingers);
5626 }
5627 
5628 void zwp_pointer_gesture_swipe_v1_t::update(uint32_t time, double dx, double dy, bool post)
5629 {
5630  send_event(post, 1, time, dx, dy);
5631 }
5632 
5633 void zwp_pointer_gesture_swipe_v1_t::end(uint32_t serial, uint32_t time, int32_t cancelled, bool post)
5634 {
5635  send_event(post, 2, serial, time, cancelled);
5636 }
5637 
5638 int zwp_pointer_gesture_swipe_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5639 {
5640  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5641  switch(opcode)
5642  {
5643  case 0:
5644  if(events->destroy) events->destroy();
5645  break;
5646  }
5647  return 0;
5648 }
5649 
5650 zwp_pointer_gesture_pinch_v1_t::zwp_pointer_gesture_pinch_v1_t(const client_t& client, uint32_t id, int version)
5651  : resource_t(client, &server::detail::zwp_pointer_gesture_pinch_v1_interface, id, version)
5652 {
5653  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5654 }
5655 
5656 zwp_pointer_gesture_pinch_v1_t::zwp_pointer_gesture_pinch_v1_t(const resource_t &resource)
5657  : resource_t(resource)
5658 {
5659  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5660 }
5661 
5662 const std::string zwp_pointer_gesture_pinch_v1_t::interface_name = "zwp_pointer_gesture_pinch_v1";
5663 
5664 zwp_pointer_gesture_pinch_v1_t::operator zwp_pointer_gesture_pinch_v1*() const
5665 {
5666  return reinterpret_cast<zwp_pointer_gesture_pinch_v1*> (c_ptr());
5667 }
5668 
5670 {
5671  return std::static_pointer_cast<events_t>(get_events())->destroy;
5672 }
5673 
5674 
5675 void zwp_pointer_gesture_pinch_v1_t::begin(uint32_t serial, uint32_t time, surface_t const& surface, uint32_t fingers, bool post)
5676 {
5677  send_event(post, 0, serial, time, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr, fingers);
5678 }
5679 
5680 void zwp_pointer_gesture_pinch_v1_t::update(uint32_t time, double dx, double dy, double scale, double rotation, bool post)
5681 {
5682  send_event(post, 1, time, dx, dy, scale, rotation);
5683 }
5684 
5685 void zwp_pointer_gesture_pinch_v1_t::end(uint32_t serial, uint32_t time, int32_t cancelled, bool post)
5686 {
5687  send_event(post, 2, serial, time, cancelled);
5688 }
5689 
5690 int zwp_pointer_gesture_pinch_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5691 {
5692  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5693  switch(opcode)
5694  {
5695  case 0:
5696  if(events->destroy) events->destroy();
5697  break;
5698  }
5699  return 0;
5700 }
5701 
5702 zwp_pointer_gesture_hold_v1_t::zwp_pointer_gesture_hold_v1_t(const client_t& client, uint32_t id, int version)
5703  : resource_t(client, &server::detail::zwp_pointer_gesture_hold_v1_interface, id, version)
5704 {
5705  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5706 }
5707 
5708 zwp_pointer_gesture_hold_v1_t::zwp_pointer_gesture_hold_v1_t(const resource_t &resource)
5709  : resource_t(resource)
5710 {
5711  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5712 }
5713 
5714 const std::string zwp_pointer_gesture_hold_v1_t::interface_name = "zwp_pointer_gesture_hold_v1";
5715 
5716 zwp_pointer_gesture_hold_v1_t::operator zwp_pointer_gesture_hold_v1*() const
5717 {
5718  return reinterpret_cast<zwp_pointer_gesture_hold_v1*> (c_ptr());
5719 }
5720 
5722 {
5723  return std::static_pointer_cast<events_t>(get_events())->destroy;
5724 }
5725 
5726 
5727 void zwp_pointer_gesture_hold_v1_t::begin(uint32_t serial, uint32_t time, surface_t const& surface, uint32_t fingers, bool post)
5728 {
5729  send_event(post, 0, serial, time, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr, fingers);
5730 }
5731 
5733 {
5734  return (get_version() >= begin_since_version);
5735 }
5736 
5737 void zwp_pointer_gesture_hold_v1_t::end(uint32_t serial, uint32_t time, int32_t cancelled, bool post)
5738 {
5739  send_event(post, 1, serial, time, cancelled);
5740 }
5741 
5743 {
5744  return (get_version() >= end_since_version);
5745 }
5746 
5747 int zwp_pointer_gesture_hold_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5748 {
5749  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5750  switch(opcode)
5751  {
5752  case 0:
5753  if(events->destroy) events->destroy();
5754  break;
5755  }
5756  return 0;
5757 }
5758 
5759 zwp_primary_selection_device_manager_v1_t::zwp_primary_selection_device_manager_v1_t(const client_t& client, uint32_t id, int version)
5760  : resource_t(client, &server::detail::zwp_primary_selection_device_manager_v1_interface, id, version)
5761 {
5762  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5763 }
5764 
5765 zwp_primary_selection_device_manager_v1_t::zwp_primary_selection_device_manager_v1_t(const resource_t &resource)
5766  : resource_t(resource)
5767 {
5768  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5769 }
5770 
5771 const std::string zwp_primary_selection_device_manager_v1_t::interface_name = "zwp_primary_selection_device_manager_v1";
5772 
5773 zwp_primary_selection_device_manager_v1_t::operator zwp_primary_selection_device_manager_v1*() const
5774 {
5775  return reinterpret_cast<zwp_primary_selection_device_manager_v1*> (c_ptr());
5776 }
5777 
5779 {
5780  return std::static_pointer_cast<events_t>(get_events())->create_source;
5781 }
5782 
5783 
5784 std::function<void(zwp_primary_selection_device_v1_t, seat_t)> &zwp_primary_selection_device_manager_v1_t::on_get_device()
5785 {
5786  return std::static_pointer_cast<events_t>(get_events())->get_device;
5787 }
5788 
5789 
5791 {
5792  return std::static_pointer_cast<events_t>(get_events())->destroy;
5793 }
5794 
5795 
5796 int zwp_primary_selection_device_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5797 {
5798  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5799  switch(opcode)
5800  {
5801  case 0:
5802  if(events->create_source) events->create_source(zwp_primary_selection_source_v1_t(args[0].get<resource_t>()));
5803  break;
5804  case 1:
5805  if(events->get_device) events->get_device(zwp_primary_selection_device_v1_t(args[0].get<resource_t>()), seat_t(args[1].get<resource_t>()));
5806  break;
5807  case 2:
5808  if(events->destroy) events->destroy();
5809  break;
5810  }
5811  return 0;
5812 }
5813 
5814 zwp_primary_selection_device_v1_t::zwp_primary_selection_device_v1_t(const client_t& client, uint32_t id, int version)
5815  : resource_t(client, &server::detail::zwp_primary_selection_device_v1_interface, id, version)
5816 {
5817  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5818 }
5819 
5820 zwp_primary_selection_device_v1_t::zwp_primary_selection_device_v1_t(const resource_t &resource)
5821  : resource_t(resource)
5822 {
5823  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5824 }
5825 
5826 const std::string zwp_primary_selection_device_v1_t::interface_name = "zwp_primary_selection_device_v1";
5827 
5828 zwp_primary_selection_device_v1_t::operator zwp_primary_selection_device_v1*() const
5829 {
5830  return reinterpret_cast<zwp_primary_selection_device_v1*> (c_ptr());
5831 }
5832 
5833 std::function<void(zwp_primary_selection_source_v1_t, uint32_t)> &zwp_primary_selection_device_v1_t::on_set_selection()
5834 {
5835  return std::static_pointer_cast<events_t>(get_events())->set_selection;
5836 }
5837 
5838 
5839 std::function<void()> &zwp_primary_selection_device_v1_t::on_destroy()
5840 {
5841  return std::static_pointer_cast<events_t>(get_events())->destroy;
5842 }
5843 
5844 
5845 void zwp_primary_selection_device_v1_t::data_offer(bool post)
5846 {
5847  send_event(post, 0, nullptr);
5848 }
5849 
5850 void zwp_primary_selection_device_v1_t::selection(zwp_primary_selection_offer_v1_t const& id, bool post)
5851 {
5852  send_event(post, 1, id.proxy_has_object() ? reinterpret_cast<wl_object*>(id.c_ptr()) : nullptr);
5853 }
5854 
5855 int zwp_primary_selection_device_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5856 {
5857  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5858  switch(opcode)
5859  {
5860  case 0:
5861  if(events->set_selection) events->set_selection(zwp_primary_selection_source_v1_t(args[0].get<resource_t>()), args[1].get<uint32_t>());
5862  break;
5863  case 1:
5864  if(events->destroy) events->destroy();
5865  break;
5866  }
5867  return 0;
5868 }
5869 
5870 zwp_primary_selection_offer_v1_t::zwp_primary_selection_offer_v1_t(const client_t& client, uint32_t id, int version)
5871  : resource_t(client, &server::detail::zwp_primary_selection_offer_v1_interface, id, version)
5872 {
5873  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5874 }
5875 
5876 zwp_primary_selection_offer_v1_t::zwp_primary_selection_offer_v1_t(const resource_t &resource)
5877  : resource_t(resource)
5878 {
5879  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5880 }
5881 
5882 const std::string zwp_primary_selection_offer_v1_t::interface_name = "zwp_primary_selection_offer_v1";
5883 
5884 zwp_primary_selection_offer_v1_t::operator zwp_primary_selection_offer_v1*() const
5885 {
5886  return reinterpret_cast<zwp_primary_selection_offer_v1*> (c_ptr());
5887 }
5888 
5889 std::function<void(std::string, int)> &zwp_primary_selection_offer_v1_t::on_receive()
5890 {
5891  return std::static_pointer_cast<events_t>(get_events())->receive;
5892 }
5893 
5894 
5896 {
5897  return std::static_pointer_cast<events_t>(get_events())->destroy;
5898 }
5899 
5900 
5901 void zwp_primary_selection_offer_v1_t::offer(std::string const& mime_type, bool post)
5902 {
5903  send_event(post, 0, mime_type);
5904 }
5905 
5906 int zwp_primary_selection_offer_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5907 {
5908  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5909  switch(opcode)
5910  {
5911  case 0:
5912  if(events->receive) events->receive(args[0].get<std::string>(), args[1].get<int>());
5913  break;
5914  case 1:
5915  if(events->destroy) events->destroy();
5916  break;
5917  }
5918  return 0;
5919 }
5920 
5921 zwp_primary_selection_source_v1_t::zwp_primary_selection_source_v1_t(const client_t& client, uint32_t id, int version)
5922  : resource_t(client, &server::detail::zwp_primary_selection_source_v1_interface, id, version)
5923 {
5924  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5925 }
5926 
5927 zwp_primary_selection_source_v1_t::zwp_primary_selection_source_v1_t(const resource_t &resource)
5928  : resource_t(resource)
5929 {
5930  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5931 }
5932 
5933 const std::string zwp_primary_selection_source_v1_t::interface_name = "zwp_primary_selection_source_v1";
5934 
5935 zwp_primary_selection_source_v1_t::operator zwp_primary_selection_source_v1*() const
5936 {
5937  return reinterpret_cast<zwp_primary_selection_source_v1*> (c_ptr());
5938 }
5939 
5940 std::function<void(std::string)> &zwp_primary_selection_source_v1_t::on_offer()
5941 {
5942  return std::static_pointer_cast<events_t>(get_events())->offer;
5943 }
5944 
5945 
5947 {
5948  return std::static_pointer_cast<events_t>(get_events())->destroy;
5949 }
5950 
5951 
5952 void zwp_primary_selection_source_v1_t::send(std::string const& mime_type, int fd, bool post)
5953 {
5954  send_event(post, 0, mime_type, argument_t::fd(fd));
5955 }
5956 
5958 {
5959  send_event(post, 1);
5960 }
5961 
5962 int zwp_primary_selection_source_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
5963 {
5964  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
5965  switch(opcode)
5966  {
5967  case 0:
5968  if(events->offer) events->offer(args[0].get<std::string>());
5969  break;
5970  case 1:
5971  if(events->destroy) events->destroy();
5972  break;
5973  }
5974  return 0;
5975 }
5976 
5977 zwp_relative_pointer_manager_v1_t::zwp_relative_pointer_manager_v1_t(const client_t& client, uint32_t id, int version)
5978  : resource_t(client, &server::detail::zwp_relative_pointer_manager_v1_interface, id, version)
5979 {
5980  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5981 }
5982 
5983 zwp_relative_pointer_manager_v1_t::zwp_relative_pointer_manager_v1_t(const resource_t &resource)
5984  : resource_t(resource)
5985 {
5986  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
5987 }
5988 
5989 const std::string zwp_relative_pointer_manager_v1_t::interface_name = "zwp_relative_pointer_manager_v1";
5990 
5991 zwp_relative_pointer_manager_v1_t::operator zwp_relative_pointer_manager_v1*() const
5992 {
5993  return reinterpret_cast<zwp_relative_pointer_manager_v1*> (c_ptr());
5994 }
5995 
5997 {
5998  return std::static_pointer_cast<events_t>(get_events())->destroy;
5999 }
6000 
6001 
6003 {
6004  return std::static_pointer_cast<events_t>(get_events())->get_relative_pointer;
6005 }
6006 
6007 
6008 int zwp_relative_pointer_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6009 {
6010  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6011  switch(opcode)
6012  {
6013  case 0:
6014  if(events->destroy) events->destroy();
6015  break;
6016  case 1:
6017  if(events->get_relative_pointer) events->get_relative_pointer(zwp_relative_pointer_v1_t(args[0].get<resource_t>()), pointer_t(args[1].get<resource_t>()));
6018  break;
6019  }
6020  return 0;
6021 }
6022 
6023 zwp_relative_pointer_v1_t::zwp_relative_pointer_v1_t(const client_t& client, uint32_t id, int version)
6024  : resource_t(client, &server::detail::zwp_relative_pointer_v1_interface, id, version)
6025 {
6026  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6027 }
6028 
6029 zwp_relative_pointer_v1_t::zwp_relative_pointer_v1_t(const resource_t &resource)
6030  : resource_t(resource)
6031 {
6032  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6033 }
6034 
6035 const std::string zwp_relative_pointer_v1_t::interface_name = "zwp_relative_pointer_v1";
6036 
6037 zwp_relative_pointer_v1_t::operator zwp_relative_pointer_v1*() const
6038 {
6039  return reinterpret_cast<zwp_relative_pointer_v1*> (c_ptr());
6040 }
6041 
6043 {
6044  return std::static_pointer_cast<events_t>(get_events())->destroy;
6045 }
6046 
6047 
6048 void zwp_relative_pointer_v1_t::relative_motion(uint32_t utime_hi, uint32_t utime_lo, double dx, double dy, double dx_unaccel, double dy_unaccel, bool post)
6049 {
6050  send_event(post, 0, utime_hi, utime_lo, dx, dy, dx_unaccel, dy_unaccel);
6051 }
6052 
6053 int zwp_relative_pointer_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6054 {
6055  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6056  switch(opcode)
6057  {
6058  case 0:
6059  if(events->destroy) events->destroy();
6060  break;
6061  }
6062  return 0;
6063 }
6064 
6065 zwp_tablet_manager_v1_t::zwp_tablet_manager_v1_t(const client_t& client, uint32_t id, int version)
6066  : resource_t(client, &server::detail::zwp_tablet_manager_v1_interface, id, version)
6067 {
6068  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6069 }
6070 
6071 zwp_tablet_manager_v1_t::zwp_tablet_manager_v1_t(const resource_t &resource)
6072  : resource_t(resource)
6073 {
6074  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6075 }
6076 
6077 const std::string zwp_tablet_manager_v1_t::interface_name = "zwp_tablet_manager_v1";
6078 
6079 zwp_tablet_manager_v1_t::operator zwp_tablet_manager_v1*() const
6080 {
6081  return reinterpret_cast<zwp_tablet_manager_v1*> (c_ptr());
6082 }
6083 
6085 {
6086  return std::static_pointer_cast<events_t>(get_events())->get_tablet_seat;
6087 }
6088 
6089 
6090 std::function<void()> &zwp_tablet_manager_v1_t::on_destroy()
6091 {
6092  return std::static_pointer_cast<events_t>(get_events())->destroy;
6093 }
6094 
6095 
6096 int zwp_tablet_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6097 {
6098  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6099  switch(opcode)
6100  {
6101  case 0:
6102  if(events->get_tablet_seat) events->get_tablet_seat(zwp_tablet_seat_v1_t(args[0].get<resource_t>()), seat_t(args[1].get<resource_t>()));
6103  break;
6104  case 1:
6105  if(events->destroy) events->destroy();
6106  break;
6107  }
6108  return 0;
6109 }
6110 
6111 zwp_tablet_seat_v1_t::zwp_tablet_seat_v1_t(const client_t& client, uint32_t id, int version)
6112  : resource_t(client, &server::detail::zwp_tablet_seat_v1_interface, id, version)
6113 {
6114  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6115 }
6116 
6117 zwp_tablet_seat_v1_t::zwp_tablet_seat_v1_t(const resource_t &resource)
6118  : resource_t(resource)
6119 {
6120  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6121 }
6122 
6123 const std::string zwp_tablet_seat_v1_t::interface_name = "zwp_tablet_seat_v1";
6124 
6125 zwp_tablet_seat_v1_t::operator zwp_tablet_seat_v1*() const
6126 {
6127  return reinterpret_cast<zwp_tablet_seat_v1*> (c_ptr());
6128 }
6129 
6130 std::function<void()> &zwp_tablet_seat_v1_t::on_destroy()
6131 {
6132  return std::static_pointer_cast<events_t>(get_events())->destroy;
6133 }
6134 
6135 
6137 {
6138  send_event(post, 0, nullptr);
6139 }
6140 
6142 {
6143  send_event(post, 1, nullptr);
6144 }
6145 
6146 int zwp_tablet_seat_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6147 {
6148  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6149  switch(opcode)
6150  {
6151  case 0:
6152  if(events->destroy) events->destroy();
6153  break;
6154  }
6155  return 0;
6156 }
6157 
6158 zwp_tablet_tool_v1_t::zwp_tablet_tool_v1_t(const client_t& client, uint32_t id, int version)
6159  : resource_t(client, &server::detail::zwp_tablet_tool_v1_interface, id, version)
6160 {
6161  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6162 }
6163 
6164 zwp_tablet_tool_v1_t::zwp_tablet_tool_v1_t(const resource_t &resource)
6165  : resource_t(resource)
6166 {
6167  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6168 }
6169 
6170 const std::string zwp_tablet_tool_v1_t::interface_name = "zwp_tablet_tool_v1";
6171 
6172 zwp_tablet_tool_v1_t::operator zwp_tablet_tool_v1*() const
6173 {
6174  return reinterpret_cast<zwp_tablet_tool_v1*> (c_ptr());
6175 }
6176 
6177 std::function<void(uint32_t, surface_t, int32_t, int32_t)> &zwp_tablet_tool_v1_t::on_set_cursor()
6178 {
6179  return std::static_pointer_cast<events_t>(get_events())->set_cursor;
6180 }
6181 
6182 
6183 std::function<void()> &zwp_tablet_tool_v1_t::on_destroy()
6184 {
6185  return std::static_pointer_cast<events_t>(get_events())->destroy;
6186 }
6187 
6188 
6189 void zwp_tablet_tool_v1_t::type(zwp_tablet_tool_v1_type const& tool_type, bool post)
6190 {
6191  send_event(post, 0, static_cast<uint32_t>(tool_type));
6192 }
6193 
6194 void zwp_tablet_tool_v1_t::hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo, bool post)
6195 {
6196  send_event(post, 1, hardware_serial_hi, hardware_serial_lo);
6197 }
6198 
6199 void zwp_tablet_tool_v1_t::hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo, bool post)
6200 {
6201  send_event(post, 2, hardware_id_hi, hardware_id_lo);
6202 }
6203 
6204 void zwp_tablet_tool_v1_t::capability(zwp_tablet_tool_v1_capability const& capability, bool post)
6205 {
6206  send_event(post, 3, static_cast<uint32_t>(capability));
6207 }
6208 
6210 {
6211  send_event(post, 4);
6212 }
6213 
6215 {
6216  send_event(post, 5);
6217 }
6218 
6219 void zwp_tablet_tool_v1_t::proximity_in(uint32_t serial, zwp_tablet_v1_t const& tablet, surface_t const& surface, bool post)
6220 {
6221  send_event(post, 6, serial, tablet.proxy_has_object() ? reinterpret_cast<wl_object*>(tablet.c_ptr()) : nullptr, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
6222 }
6223 
6225 {
6226  send_event(post, 7);
6227 }
6228 
6229 void zwp_tablet_tool_v1_t::down(uint32_t serial, bool post)
6230 {
6231  send_event(post, 8, serial);
6232 }
6233 
6235 {
6236  send_event(post, 9);
6237 }
6238 
6239 void zwp_tablet_tool_v1_t::motion(double x, double y, bool post)
6240 {
6241  send_event(post, 10, x, y);
6242 }
6243 
6244 void zwp_tablet_tool_v1_t::pressure(uint32_t pressure, bool post)
6245 {
6246  send_event(post, 11, pressure);
6247 }
6248 
6249 void zwp_tablet_tool_v1_t::distance(uint32_t distance, bool post)
6250 {
6251  send_event(post, 12, distance);
6252 }
6253 
6254 void zwp_tablet_tool_v1_t::tilt(int32_t tilt_x, int32_t tilt_y, bool post)
6255 {
6256  send_event(post, 13, tilt_x, tilt_y);
6257 }
6258 
6259 void zwp_tablet_tool_v1_t::rotation(int32_t degrees, bool post)
6260 {
6261  send_event(post, 14, degrees);
6262 }
6263 
6264 void zwp_tablet_tool_v1_t::slider(int32_t position, bool post)
6265 {
6266  send_event(post, 15, position);
6267 }
6268 
6269 void zwp_tablet_tool_v1_t::wheel(int32_t degrees, int32_t clicks, bool post)
6270 {
6271  send_event(post, 16, degrees, clicks);
6272 }
6273 
6274 void zwp_tablet_tool_v1_t::button(uint32_t serial, uint32_t button, zwp_tablet_tool_v1_button_state const& state, bool post)
6275 {
6276  send_event(post, 17, serial, button, static_cast<uint32_t>(state));
6277 }
6278 
6279 void zwp_tablet_tool_v1_t::frame(uint32_t time, bool post)
6280 {
6281  send_event(post, 18, time);
6282 }
6283 
6284 void zwp_tablet_tool_v1_t::post_role(std::string const& msg)
6285 {
6286  post_error(static_cast<uint32_t>(zwp_tablet_tool_v1_error::role), msg);
6287 }
6288 
6289 int zwp_tablet_tool_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6290 {
6291  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6292  switch(opcode)
6293  {
6294  case 0:
6295  if(events->set_cursor) events->set_cursor(args[0].get<uint32_t>(), surface_t(args[1].get<resource_t>()), args[2].get<int32_t>(), args[3].get<int32_t>());
6296  break;
6297  case 1:
6298  if(events->destroy) events->destroy();
6299  break;
6300  }
6301  return 0;
6302 }
6303 
6304 
6305 
6306 
6307 
6308 zwp_tablet_v1_t::zwp_tablet_v1_t(const client_t& client, uint32_t id, int version)
6309  : resource_t(client, &server::detail::zwp_tablet_v1_interface, id, version)
6310 {
6311  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6312 }
6313 
6314 zwp_tablet_v1_t::zwp_tablet_v1_t(const resource_t &resource)
6315  : resource_t(resource)
6316 {
6317  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6318 }
6319 
6320 const std::string zwp_tablet_v1_t::interface_name = "zwp_tablet_v1";
6321 
6322 zwp_tablet_v1_t::operator zwp_tablet_v1*() const
6323 {
6324  return reinterpret_cast<zwp_tablet_v1*> (c_ptr());
6325 }
6326 
6327 std::function<void()> &zwp_tablet_v1_t::on_destroy()
6328 {
6329  return std::static_pointer_cast<events_t>(get_events())->destroy;
6330 }
6331 
6332 
6333 void zwp_tablet_v1_t::name(std::string const& name, bool post)
6334 {
6335  send_event(post, 0, name);
6336 }
6337 
6338 void zwp_tablet_v1_t::id(uint32_t vid, uint32_t pid, bool post)
6339 {
6340  send_event(post, 1, vid, pid);
6341 }
6342 
6343 void zwp_tablet_v1_t::path(std::string const& path, bool post)
6344 {
6345  send_event(post, 2, path);
6346 }
6347 
6348 void zwp_tablet_v1_t::done(bool post)
6349 {
6350  send_event(post, 3);
6351 }
6352 
6354 {
6355  send_event(post, 4);
6356 }
6357 
6358 int zwp_tablet_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6359 {
6360  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6361  switch(opcode)
6362  {
6363  case 0:
6364  if(events->destroy) events->destroy();
6365  break;
6366  }
6367  return 0;
6368 }
6369 
6370 zwp_tablet_manager_v2_t::zwp_tablet_manager_v2_t(const client_t& client, uint32_t id, int version)
6371  : resource_t(client, &server::detail::zwp_tablet_manager_v2_interface, id, version)
6372 {
6373  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6374 }
6375 
6376 zwp_tablet_manager_v2_t::zwp_tablet_manager_v2_t(const resource_t &resource)
6377  : resource_t(resource)
6378 {
6379  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6380 }
6381 
6382 const std::string zwp_tablet_manager_v2_t::interface_name = "zwp_tablet_manager_v2";
6383 
6384 zwp_tablet_manager_v2_t::operator zwp_tablet_manager_v2*() const
6385 {
6386  return reinterpret_cast<zwp_tablet_manager_v2*> (c_ptr());
6387 }
6388 
6390 {
6391  return std::static_pointer_cast<events_t>(get_events())->get_tablet_seat;
6392 }
6393 
6394 
6395 std::function<void()> &zwp_tablet_manager_v2_t::on_destroy()
6396 {
6397  return std::static_pointer_cast<events_t>(get_events())->destroy;
6398 }
6399 
6400 
6401 int zwp_tablet_manager_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6402 {
6403  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6404  switch(opcode)
6405  {
6406  case 0:
6407  if(events->get_tablet_seat) events->get_tablet_seat(zwp_tablet_seat_v2_t(args[0].get<resource_t>()), seat_t(args[1].get<resource_t>()));
6408  break;
6409  case 1:
6410  if(events->destroy) events->destroy();
6411  break;
6412  }
6413  return 0;
6414 }
6415 
6416 zwp_tablet_seat_v2_t::zwp_tablet_seat_v2_t(const client_t& client, uint32_t id, int version)
6417  : resource_t(client, &server::detail::zwp_tablet_seat_v2_interface, id, version)
6418 {
6419  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6420 }
6421 
6422 zwp_tablet_seat_v2_t::zwp_tablet_seat_v2_t(const resource_t &resource)
6423  : resource_t(resource)
6424 {
6425  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6426 }
6427 
6428 const std::string zwp_tablet_seat_v2_t::interface_name = "zwp_tablet_seat_v2";
6429 
6430 zwp_tablet_seat_v2_t::operator zwp_tablet_seat_v2*() const
6431 {
6432  return reinterpret_cast<zwp_tablet_seat_v2*> (c_ptr());
6433 }
6434 
6435 std::function<void()> &zwp_tablet_seat_v2_t::on_destroy()
6436 {
6437  return std::static_pointer_cast<events_t>(get_events())->destroy;
6438 }
6439 
6440 
6442 {
6443  send_event(post, 0, nullptr);
6444 }
6445 
6447 {
6448  send_event(post, 1, nullptr);
6449 }
6450 
6452 {
6453  send_event(post, 2, nullptr);
6454 }
6455 
6456 int zwp_tablet_seat_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6457 {
6458  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6459  switch(opcode)
6460  {
6461  case 0:
6462  if(events->destroy) events->destroy();
6463  break;
6464  }
6465  return 0;
6466 }
6467 
6468 zwp_tablet_tool_v2_t::zwp_tablet_tool_v2_t(const client_t& client, uint32_t id, int version)
6469  : resource_t(client, &server::detail::zwp_tablet_tool_v2_interface, id, version)
6470 {
6471  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6472 }
6473 
6474 zwp_tablet_tool_v2_t::zwp_tablet_tool_v2_t(const resource_t &resource)
6475  : resource_t(resource)
6476 {
6477  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6478 }
6479 
6480 const std::string zwp_tablet_tool_v2_t::interface_name = "zwp_tablet_tool_v2";
6481 
6482 zwp_tablet_tool_v2_t::operator zwp_tablet_tool_v2*() const
6483 {
6484  return reinterpret_cast<zwp_tablet_tool_v2*> (c_ptr());
6485 }
6486 
6487 std::function<void(uint32_t, surface_t, int32_t, int32_t)> &zwp_tablet_tool_v2_t::on_set_cursor()
6488 {
6489  return std::static_pointer_cast<events_t>(get_events())->set_cursor;
6490 }
6491 
6492 
6493 std::function<void()> &zwp_tablet_tool_v2_t::on_destroy()
6494 {
6495  return std::static_pointer_cast<events_t>(get_events())->destroy;
6496 }
6497 
6498 
6499 void zwp_tablet_tool_v2_t::type(zwp_tablet_tool_v2_type const& tool_type, bool post)
6500 {
6501  send_event(post, 0, static_cast<uint32_t>(tool_type));
6502 }
6503 
6504 void zwp_tablet_tool_v2_t::hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo, bool post)
6505 {
6506  send_event(post, 1, hardware_serial_hi, hardware_serial_lo);
6507 }
6508 
6509 void zwp_tablet_tool_v2_t::hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo, bool post)
6510 {
6511  send_event(post, 2, hardware_id_hi, hardware_id_lo);
6512 }
6513 
6514 void zwp_tablet_tool_v2_t::capability(zwp_tablet_tool_v2_capability const& capability, bool post)
6515 {
6516  send_event(post, 3, static_cast<uint32_t>(capability));
6517 }
6518 
6520 {
6521  send_event(post, 4);
6522 }
6523 
6525 {
6526  send_event(post, 5);
6527 }
6528 
6529 void zwp_tablet_tool_v2_t::proximity_in(uint32_t serial, zwp_tablet_v2_t const& tablet, surface_t const& surface, bool post)
6530 {
6531  send_event(post, 6, serial, tablet.proxy_has_object() ? reinterpret_cast<wl_object*>(tablet.c_ptr()) : nullptr, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
6532 }
6533 
6535 {
6536  send_event(post, 7);
6537 }
6538 
6539 void zwp_tablet_tool_v2_t::down(uint32_t serial, bool post)
6540 {
6541  send_event(post, 8, serial);
6542 }
6543 
6545 {
6546  send_event(post, 9);
6547 }
6548 
6549 void zwp_tablet_tool_v2_t::motion(double x, double y, bool post)
6550 {
6551  send_event(post, 10, x, y);
6552 }
6553 
6554 void zwp_tablet_tool_v2_t::pressure(uint32_t pressure, bool post)
6555 {
6556  send_event(post, 11, pressure);
6557 }
6558 
6559 void zwp_tablet_tool_v2_t::distance(uint32_t distance, bool post)
6560 {
6561  send_event(post, 12, distance);
6562 }
6563 
6564 void zwp_tablet_tool_v2_t::tilt(double tilt_x, double tilt_y, bool post)
6565 {
6566  send_event(post, 13, tilt_x, tilt_y);
6567 }
6568 
6569 void zwp_tablet_tool_v2_t::rotation(double degrees, bool post)
6570 {
6571  send_event(post, 14, degrees);
6572 }
6573 
6574 void zwp_tablet_tool_v2_t::slider(int32_t position, bool post)
6575 {
6576  send_event(post, 15, position);
6577 }
6578 
6579 void zwp_tablet_tool_v2_t::wheel(double degrees, int32_t clicks, bool post)
6580 {
6581  send_event(post, 16, degrees, clicks);
6582 }
6583 
6584 void zwp_tablet_tool_v2_t::button(uint32_t serial, uint32_t button, zwp_tablet_tool_v2_button_state const& state, bool post)
6585 {
6586  send_event(post, 17, serial, button, static_cast<uint32_t>(state));
6587 }
6588 
6589 void zwp_tablet_tool_v2_t::frame(uint32_t time, bool post)
6590 {
6591  send_event(post, 18, time);
6592 }
6593 
6594 void zwp_tablet_tool_v2_t::post_role(std::string const& msg)
6595 {
6596  post_error(static_cast<uint32_t>(zwp_tablet_tool_v2_error::role), msg);
6597 }
6598 
6599 int zwp_tablet_tool_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6600 {
6601  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6602  switch(opcode)
6603  {
6604  case 0:
6605  if(events->set_cursor) events->set_cursor(args[0].get<uint32_t>(), surface_t(args[1].get<resource_t>()), args[2].get<int32_t>(), args[3].get<int32_t>());
6606  break;
6607  case 1:
6608  if(events->destroy) events->destroy();
6609  break;
6610  }
6611  return 0;
6612 }
6613 
6614 
6615 
6616 
6617 
6618 zwp_tablet_v2_t::zwp_tablet_v2_t(const client_t& client, uint32_t id, int version)
6619  : resource_t(client, &server::detail::zwp_tablet_v2_interface, id, version)
6620 {
6621  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6622 }
6623 
6624 zwp_tablet_v2_t::zwp_tablet_v2_t(const resource_t &resource)
6625  : resource_t(resource)
6626 {
6627  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6628 }
6629 
6630 const std::string zwp_tablet_v2_t::interface_name = "zwp_tablet_v2";
6631 
6632 zwp_tablet_v2_t::operator zwp_tablet_v2*() const
6633 {
6634  return reinterpret_cast<zwp_tablet_v2*> (c_ptr());
6635 }
6636 
6637 std::function<void()> &zwp_tablet_v2_t::on_destroy()
6638 {
6639  return std::static_pointer_cast<events_t>(get_events())->destroy;
6640 }
6641 
6642 
6643 void zwp_tablet_v2_t::name(std::string const& name, bool post)
6644 {
6645  send_event(post, 0, name);
6646 }
6647 
6648 void zwp_tablet_v2_t::id(uint32_t vid, uint32_t pid, bool post)
6649 {
6650  send_event(post, 1, vid, pid);
6651 }
6652 
6653 void zwp_tablet_v2_t::path(std::string const& path, bool post)
6654 {
6655  send_event(post, 2, path);
6656 }
6657 
6658 void zwp_tablet_v2_t::done(bool post)
6659 {
6660  send_event(post, 3);
6661 }
6662 
6664 {
6665  send_event(post, 4);
6666 }
6667 
6668 int zwp_tablet_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6669 {
6670  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6671  switch(opcode)
6672  {
6673  case 0:
6674  if(events->destroy) events->destroy();
6675  break;
6676  }
6677  return 0;
6678 }
6679 
6680 zwp_tablet_pad_ring_v2_t::zwp_tablet_pad_ring_v2_t(const client_t& client, uint32_t id, int version)
6681  : resource_t(client, &server::detail::zwp_tablet_pad_ring_v2_interface, id, version)
6682 {
6683  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6684 }
6685 
6686 zwp_tablet_pad_ring_v2_t::zwp_tablet_pad_ring_v2_t(const resource_t &resource)
6687  : resource_t(resource)
6688 {
6689  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6690 }
6691 
6692 const std::string zwp_tablet_pad_ring_v2_t::interface_name = "zwp_tablet_pad_ring_v2";
6693 
6694 zwp_tablet_pad_ring_v2_t::operator zwp_tablet_pad_ring_v2*() const
6695 {
6696  return reinterpret_cast<zwp_tablet_pad_ring_v2*> (c_ptr());
6697 }
6698 
6699 std::function<void(std::string, uint32_t)> &zwp_tablet_pad_ring_v2_t::on_set_feedback()
6700 {
6701  return std::static_pointer_cast<events_t>(get_events())->set_feedback;
6702 }
6703 
6704 
6706 {
6707  return std::static_pointer_cast<events_t>(get_events())->destroy;
6708 }
6709 
6710 
6711 void zwp_tablet_pad_ring_v2_t::source(zwp_tablet_pad_ring_v2_source const& source, bool post)
6712 {
6713  send_event(post, 0, static_cast<uint32_t>(source));
6714 }
6715 
6716 void zwp_tablet_pad_ring_v2_t::angle(double degrees, bool post)
6717 {
6718  send_event(post, 1, degrees);
6719 }
6720 
6722 {
6723  send_event(post, 2);
6724 }
6725 
6726 void zwp_tablet_pad_ring_v2_t::frame(uint32_t time, bool post)
6727 {
6728  send_event(post, 3, time);
6729 }
6730 
6731 int zwp_tablet_pad_ring_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6732 {
6733  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6734  switch(opcode)
6735  {
6736  case 0:
6737  if(events->set_feedback) events->set_feedback(args[0].get<std::string>(), args[1].get<uint32_t>());
6738  break;
6739  case 1:
6740  if(events->destroy) events->destroy();
6741  break;
6742  }
6743  return 0;
6744 }
6745 
6746 
6747 zwp_tablet_pad_strip_v2_t::zwp_tablet_pad_strip_v2_t(const client_t& client, uint32_t id, int version)
6748  : resource_t(client, &server::detail::zwp_tablet_pad_strip_v2_interface, id, version)
6749 {
6750  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6751 }
6752 
6753 zwp_tablet_pad_strip_v2_t::zwp_tablet_pad_strip_v2_t(const resource_t &resource)
6754  : resource_t(resource)
6755 {
6756  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6757 }
6758 
6759 const std::string zwp_tablet_pad_strip_v2_t::interface_name = "zwp_tablet_pad_strip_v2";
6760 
6761 zwp_tablet_pad_strip_v2_t::operator zwp_tablet_pad_strip_v2*() const
6762 {
6763  return reinterpret_cast<zwp_tablet_pad_strip_v2*> (c_ptr());
6764 }
6765 
6766 std::function<void(std::string, uint32_t)> &zwp_tablet_pad_strip_v2_t::on_set_feedback()
6767 {
6768  return std::static_pointer_cast<events_t>(get_events())->set_feedback;
6769 }
6770 
6771 
6773 {
6774  return std::static_pointer_cast<events_t>(get_events())->destroy;
6775 }
6776 
6777 
6778 void zwp_tablet_pad_strip_v2_t::source(zwp_tablet_pad_strip_v2_source const& source, bool post)
6779 {
6780  send_event(post, 0, static_cast<uint32_t>(source));
6781 }
6782 
6783 void zwp_tablet_pad_strip_v2_t::position(uint32_t position, bool post)
6784 {
6785  send_event(post, 1, position);
6786 }
6787 
6789 {
6790  send_event(post, 2);
6791 }
6792 
6793 void zwp_tablet_pad_strip_v2_t::frame(uint32_t time, bool post)
6794 {
6795  send_event(post, 3, time);
6796 }
6797 
6798 int zwp_tablet_pad_strip_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6799 {
6800  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6801  switch(opcode)
6802  {
6803  case 0:
6804  if(events->set_feedback) events->set_feedback(args[0].get<std::string>(), args[1].get<uint32_t>());
6805  break;
6806  case 1:
6807  if(events->destroy) events->destroy();
6808  break;
6809  }
6810  return 0;
6811 }
6812 
6813 
6814 zwp_tablet_pad_group_v2_t::zwp_tablet_pad_group_v2_t(const client_t& client, uint32_t id, int version)
6815  : resource_t(client, &server::detail::zwp_tablet_pad_group_v2_interface, id, version)
6816 {
6817  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6818 }
6819 
6820 zwp_tablet_pad_group_v2_t::zwp_tablet_pad_group_v2_t(const resource_t &resource)
6821  : resource_t(resource)
6822 {
6823  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6824 }
6825 
6826 const std::string zwp_tablet_pad_group_v2_t::interface_name = "zwp_tablet_pad_group_v2";
6827 
6828 zwp_tablet_pad_group_v2_t::operator zwp_tablet_pad_group_v2*() const
6829 {
6830  return reinterpret_cast<zwp_tablet_pad_group_v2*> (c_ptr());
6831 }
6832 
6834 {
6835  return std::static_pointer_cast<events_t>(get_events())->destroy;
6836 }
6837 
6838 
6839 void zwp_tablet_pad_group_v2_t::buttons(array_t const& buttons, bool post)
6840 {
6841  send_event(post, 0, buttons);
6842 }
6843 
6845 {
6846  send_event(post, 1, nullptr);
6847 }
6848 
6850 {
6851  send_event(post, 2, nullptr);
6852 }
6853 
6854 void zwp_tablet_pad_group_v2_t::modes(uint32_t modes, bool post)
6855 {
6856  send_event(post, 3, modes);
6857 }
6858 
6860 {
6861  send_event(post, 4);
6862 }
6863 
6864 void zwp_tablet_pad_group_v2_t::mode_switch(uint32_t time, uint32_t serial, uint32_t mode, bool post)
6865 {
6866  send_event(post, 5, time, serial, mode);
6867 }
6868 
6869 int zwp_tablet_pad_group_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6870 {
6871  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6872  switch(opcode)
6873  {
6874  case 0:
6875  if(events->destroy) events->destroy();
6876  break;
6877  }
6878  return 0;
6879 }
6880 
6881 zwp_tablet_pad_v2_t::zwp_tablet_pad_v2_t(const client_t& client, uint32_t id, int version)
6882  : resource_t(client, &server::detail::zwp_tablet_pad_v2_interface, id, version)
6883 {
6884  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6885 }
6886 
6887 zwp_tablet_pad_v2_t::zwp_tablet_pad_v2_t(const resource_t &resource)
6888  : resource_t(resource)
6889 {
6890  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6891 }
6892 
6893 const std::string zwp_tablet_pad_v2_t::interface_name = "zwp_tablet_pad_v2";
6894 
6895 zwp_tablet_pad_v2_t::operator zwp_tablet_pad_v2*() const
6896 {
6897  return reinterpret_cast<zwp_tablet_pad_v2*> (c_ptr());
6898 }
6899 
6900 std::function<void(uint32_t, std::string, uint32_t)> &zwp_tablet_pad_v2_t::on_set_feedback()
6901 {
6902  return std::static_pointer_cast<events_t>(get_events())->set_feedback;
6903 }
6904 
6905 
6906 std::function<void()> &zwp_tablet_pad_v2_t::on_destroy()
6907 {
6908  return std::static_pointer_cast<events_t>(get_events())->destroy;
6909 }
6910 
6911 
6913 {
6914  send_event(post, 0, nullptr);
6915 }
6916 
6917 void zwp_tablet_pad_v2_t::path(std::string const& path, bool post)
6918 {
6919  send_event(post, 1, path);
6920 }
6921 
6922 void zwp_tablet_pad_v2_t::buttons(uint32_t buttons, bool post)
6923 {
6924  send_event(post, 2, buttons);
6925 }
6926 
6928 {
6929  send_event(post, 3);
6930 }
6931 
6932 void zwp_tablet_pad_v2_t::button(uint32_t time, uint32_t button, zwp_tablet_pad_v2_button_state const& state, bool post)
6933 {
6934  send_event(post, 4, time, button, static_cast<uint32_t>(state));
6935 }
6936 
6937 void zwp_tablet_pad_v2_t::enter(uint32_t serial, zwp_tablet_v2_t const& tablet, surface_t const& surface, bool post)
6938 {
6939  send_event(post, 5, serial, tablet.proxy_has_object() ? reinterpret_cast<wl_object*>(tablet.c_ptr()) : nullptr, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
6940 }
6941 
6942 void zwp_tablet_pad_v2_t::leave(uint32_t serial, surface_t const& surface, bool post)
6943 {
6944  send_event(post, 6, serial, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
6945 }
6946 
6948 {
6949  send_event(post, 7);
6950 }
6951 
6952 int zwp_tablet_pad_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
6953 {
6954  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
6955  switch(opcode)
6956  {
6957  case 0:
6958  if(events->set_feedback) events->set_feedback(args[0].get<uint32_t>(), args[1].get<std::string>(), args[2].get<uint32_t>());
6959  break;
6960  case 1:
6961  if(events->destroy) events->destroy();
6962  break;
6963  }
6964  return 0;
6965 }
6966 
6967 
6968 zwp_text_input_v1_t::zwp_text_input_v1_t(const client_t& client, uint32_t id, int version)
6969  : resource_t(client, &server::detail::zwp_text_input_v1_interface, id, version)
6970 {
6971  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6972 }
6973 
6974 zwp_text_input_v1_t::zwp_text_input_v1_t(const resource_t &resource)
6975  : resource_t(resource)
6976 {
6977  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
6978 }
6979 
6980 const std::string zwp_text_input_v1_t::interface_name = "zwp_text_input_v1";
6981 
6982 zwp_text_input_v1_t::operator zwp_text_input_v1*() const
6983 {
6984  return reinterpret_cast<zwp_text_input_v1*> (c_ptr());
6985 }
6986 
6988 {
6989  return std::static_pointer_cast<events_t>(get_events())->activate;
6990 }
6991 
6992 
6994 {
6995  return std::static_pointer_cast<events_t>(get_events())->deactivate;
6996 }
6997 
6998 
7000 {
7001  return std::static_pointer_cast<events_t>(get_events())->show_input_panel;
7002 }
7003 
7004 
7006 {
7007  return std::static_pointer_cast<events_t>(get_events())->hide_input_panel;
7008 }
7009 
7010 
7011 std::function<void()> &zwp_text_input_v1_t::on_reset()
7012 {
7013  return std::static_pointer_cast<events_t>(get_events())->reset;
7014 }
7015 
7016 
7017 std::function<void(std::string, uint32_t, uint32_t)> &zwp_text_input_v1_t::on_set_surrounding_text()
7018 {
7019  return std::static_pointer_cast<events_t>(get_events())->set_surrounding_text;
7020 }
7021 
7022 
7023 std::function<void(zwp_text_input_v1_content_hint, zwp_text_input_v1_content_purpose)> &zwp_text_input_v1_t::on_set_content_type()
7024 {
7025  return std::static_pointer_cast<events_t>(get_events())->set_content_type;
7026 }
7027 
7028 
7029 std::function<void(int32_t, int32_t, int32_t, int32_t)> &zwp_text_input_v1_t::on_set_cursor_rectangle()
7030 {
7031  return std::static_pointer_cast<events_t>(get_events())->set_cursor_rectangle;
7032 }
7033 
7034 
7035 std::function<void(std::string)> &zwp_text_input_v1_t::on_set_preferred_language()
7036 {
7037  return std::static_pointer_cast<events_t>(get_events())->set_preferred_language;
7038 }
7039 
7040 
7041 std::function<void(uint32_t)> &zwp_text_input_v1_t::on_commit_state()
7042 {
7043  return std::static_pointer_cast<events_t>(get_events())->commit_state;
7044 }
7045 
7046 
7047 std::function<void(uint32_t, uint32_t)> &zwp_text_input_v1_t::on_invoke_action()
7048 {
7049  return std::static_pointer_cast<events_t>(get_events())->invoke_action;
7050 }
7051 
7052 
7053 void zwp_text_input_v1_t::enter(surface_t const& surface, bool post)
7054 {
7055  send_event(post, 0, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
7056 }
7057 
7059 {
7060  send_event(post, 1);
7061 }
7062 
7063 void zwp_text_input_v1_t::modifiers_map(array_t const& map, bool post)
7064 {
7065  send_event(post, 2, map);
7066 }
7067 
7068 void zwp_text_input_v1_t::input_panel_state(uint32_t state, bool post)
7069 {
7070  send_event(post, 3, state);
7071 }
7072 
7073 void zwp_text_input_v1_t::preedit_string(uint32_t serial, std::string const& text, std::string const& commit, bool post)
7074 {
7075  send_event(post, 4, serial, text, commit);
7076 }
7077 
7078 void zwp_text_input_v1_t::preedit_styling(uint32_t index, uint32_t length, zwp_text_input_v1_preedit_style const& style, bool post)
7079 {
7080  send_event(post, 5, index, length, static_cast<uint32_t>(style));
7081 }
7082 
7083 void zwp_text_input_v1_t::preedit_cursor(int32_t index, bool post)
7084 {
7085  send_event(post, 6, index);
7086 }
7087 
7088 void zwp_text_input_v1_t::commit_string(uint32_t serial, std::string const& text, bool post)
7089 {
7090  send_event(post, 7, serial, text);
7091 }
7092 
7093 void zwp_text_input_v1_t::cursor_position(int32_t index, int32_t anchor, bool post)
7094 {
7095  send_event(post, 8, index, anchor);
7096 }
7097 
7098 void zwp_text_input_v1_t::delete_surrounding_text(int32_t index, uint32_t length, bool post)
7099 {
7100  send_event(post, 9, index, length);
7101 }
7102 
7103 void zwp_text_input_v1_t::keysym(uint32_t serial, uint32_t time, uint32_t sym, keyboard_key_state const& state, uint32_t modifiers, bool post)
7104 {
7105  send_event(post, 10, serial, time, sym, static_cast<uint32_t>(state), modifiers);
7106 }
7107 
7108 void zwp_text_input_v1_t::language(uint32_t serial, std::string const& language, bool post)
7109 {
7110  send_event(post, 11, serial, language);
7111 }
7112 
7113 void zwp_text_input_v1_t::text_direction(uint32_t serial, zwp_text_input_v1_text_direction const& direction, bool post)
7114 {
7115  send_event(post, 12, serial, static_cast<uint32_t>(direction));
7116 }
7117 
7118 int zwp_text_input_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7119 {
7120  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7121  switch(opcode)
7122  {
7123  case 0:
7124  if(events->activate) events->activate(seat_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
7125  break;
7126  case 1:
7127  if(events->deactivate) events->deactivate(seat_t(args[0].get<resource_t>()));
7128  break;
7129  case 2:
7130  if(events->show_input_panel) events->show_input_panel();
7131  break;
7132  case 3:
7133  if(events->hide_input_panel) events->hide_input_panel();
7134  break;
7135  case 4:
7136  if(events->reset) events->reset();
7137  break;
7138  case 5:
7139  if(events->set_surrounding_text) events->set_surrounding_text(args[0].get<std::string>(), args[1].get<uint32_t>(), args[2].get<uint32_t>());
7140  break;
7141  case 6:
7142  if(events->set_content_type) events->set_content_type(zwp_text_input_v1_content_hint(args[0].get<uint32_t>()), zwp_text_input_v1_content_purpose(args[1].get<uint32_t>()));
7143  break;
7144  case 7:
7145  if(events->set_cursor_rectangle) events->set_cursor_rectangle(args[0].get<int32_t>(), args[1].get<int32_t>(), args[2].get<int32_t>(), args[3].get<int32_t>());
7146  break;
7147  case 8:
7148  if(events->set_preferred_language) events->set_preferred_language(args[0].get<std::string>());
7149  break;
7150  case 9:
7151  if(events->commit_state) events->commit_state(args[0].get<uint32_t>());
7152  break;
7153  case 10:
7154  if(events->invoke_action) events->invoke_action(args[0].get<uint32_t>(), args[1].get<uint32_t>());
7155  break;
7156  }
7157  return 0;
7158 }
7159 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::none{0x0};
7160 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::_default{0x7};
7161 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::password{0xc0};
7162 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::auto_completion{0x1};
7163 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::auto_correction{0x2};
7164 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::auto_capitalization{0x4};
7165 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::lowercase{0x8};
7166 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::uppercase{0x10};
7167 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::titlecase{0x20};
7168 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::hidden_text{0x40};
7169 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::sensitive_data{0x80};
7170 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::latin{0x100};
7171 const bitfield<2147483649, 23> zwp_text_input_v1_content_hint::multiline{0x200};
7172 
7173 
7174 
7175 
7176 
7177 zwp_text_input_manager_v1_t::zwp_text_input_manager_v1_t(const client_t& client, uint32_t id, int version)
7178  : resource_t(client, &server::detail::zwp_text_input_manager_v1_interface, id, version)
7179 {
7180  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7181 }
7182 
7183 zwp_text_input_manager_v1_t::zwp_text_input_manager_v1_t(const resource_t &resource)
7184  : resource_t(resource)
7185 {
7186  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7187 }
7188 
7189 const std::string zwp_text_input_manager_v1_t::interface_name = "zwp_text_input_manager_v1";
7190 
7191 zwp_text_input_manager_v1_t::operator zwp_text_input_manager_v1*() const
7192 {
7193  return reinterpret_cast<zwp_text_input_manager_v1*> (c_ptr());
7194 }
7195 
7197 {
7198  return std::static_pointer_cast<events_t>(get_events())->create_text_input;
7199 }
7200 
7201 
7202 int zwp_text_input_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7203 {
7204  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7205  switch(opcode)
7206  {
7207  case 0:
7208  if(events->create_text_input) events->create_text_input(zwp_text_input_v1_t(args[0].get<resource_t>()));
7209  break;
7210  }
7211  return 0;
7212 }
7213 
7214 zwp_text_input_v3_t::zwp_text_input_v3_t(const client_t& client, uint32_t id, int version)
7215  : resource_t(client, &server::detail::zwp_text_input_v3_interface, id, version)
7216 {
7217  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7218 }
7219 
7220 zwp_text_input_v3_t::zwp_text_input_v3_t(const resource_t &resource)
7221  : resource_t(resource)
7222 {
7223  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7224 }
7225 
7226 const std::string zwp_text_input_v3_t::interface_name = "zwp_text_input_v3";
7227 
7228 zwp_text_input_v3_t::operator zwp_text_input_v3*() const
7229 {
7230  return reinterpret_cast<zwp_text_input_v3*> (c_ptr());
7231 }
7232 
7233 std::function<void()> &zwp_text_input_v3_t::on_destroy()
7234 {
7235  return std::static_pointer_cast<events_t>(get_events())->destroy;
7236 }
7237 
7238 
7239 std::function<void()> &zwp_text_input_v3_t::on_enable()
7240 {
7241  return std::static_pointer_cast<events_t>(get_events())->enable;
7242 }
7243 
7244 
7245 std::function<void()> &zwp_text_input_v3_t::on_disable()
7246 {
7247  return std::static_pointer_cast<events_t>(get_events())->disable;
7248 }
7249 
7250 
7251 std::function<void(std::string, int32_t, int32_t)> &zwp_text_input_v3_t::on_set_surrounding_text()
7252 {
7253  return std::static_pointer_cast<events_t>(get_events())->set_surrounding_text;
7254 }
7255 
7256 
7257 std::function<void(zwp_text_input_v3_change_cause)> &zwp_text_input_v3_t::on_set_text_change_cause()
7258 {
7259  return std::static_pointer_cast<events_t>(get_events())->set_text_change_cause;
7260 }
7261 
7262 
7263 std::function<void(zwp_text_input_v3_content_hint, zwp_text_input_v3_content_purpose)> &zwp_text_input_v3_t::on_set_content_type()
7264 {
7265  return std::static_pointer_cast<events_t>(get_events())->set_content_type;
7266 }
7267 
7268 
7269 std::function<void(int32_t, int32_t, int32_t, int32_t)> &zwp_text_input_v3_t::on_set_cursor_rectangle()
7270 {
7271  return std::static_pointer_cast<events_t>(get_events())->set_cursor_rectangle;
7272 }
7273 
7274 
7275 std::function<void()> &zwp_text_input_v3_t::on_commit()
7276 {
7277  return std::static_pointer_cast<events_t>(get_events())->commit;
7278 }
7279 
7280 
7281 void zwp_text_input_v3_t::enter(surface_t const& surface, bool post)
7282 {
7283  send_event(post, 0, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
7284 }
7285 
7286 void zwp_text_input_v3_t::leave(surface_t const& surface, bool post)
7287 {
7288  send_event(post, 1, surface.proxy_has_object() ? reinterpret_cast<wl_object*>(surface.c_ptr()) : nullptr);
7289 }
7290 
7291 void zwp_text_input_v3_t::preedit_string(std::string const& text, int32_t cursor_begin, int32_t cursor_end, bool post)
7292 {
7293  send_event(post, 2, text, cursor_begin, cursor_end);
7294 }
7295 
7296 void zwp_text_input_v3_t::commit_string(std::string const& text, bool post)
7297 {
7298  send_event(post, 3, text);
7299 }
7300 
7301 void zwp_text_input_v3_t::delete_surrounding_text(uint32_t before_length, uint32_t after_length, bool post)
7302 {
7303  send_event(post, 4, before_length, after_length);
7304 }
7305 
7306 void zwp_text_input_v3_t::done(uint32_t serial, bool post)
7307 {
7308  send_event(post, 5, serial);
7309 }
7310 
7311 int zwp_text_input_v3_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7312 {
7313  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7314  switch(opcode)
7315  {
7316  case 0:
7317  if(events->destroy) events->destroy();
7318  break;
7319  case 1:
7320  if(events->enable) events->enable();
7321  break;
7322  case 2:
7323  if(events->disable) events->disable();
7324  break;
7325  case 3:
7326  if(events->set_surrounding_text) events->set_surrounding_text(args[0].get<std::string>(), args[1].get<int32_t>(), args[2].get<int32_t>());
7327  break;
7328  case 4:
7329  if(events->set_text_change_cause) events->set_text_change_cause(zwp_text_input_v3_change_cause(args[0].get<uint32_t>()));
7330  break;
7331  case 5:
7332  if(events->set_content_type) events->set_content_type(zwp_text_input_v3_content_hint(args[0].get<uint32_t>()), zwp_text_input_v3_content_purpose(args[1].get<uint32_t>()));
7333  break;
7334  case 6:
7335  if(events->set_cursor_rectangle) events->set_cursor_rectangle(args[0].get<int32_t>(), args[1].get<int32_t>(), args[2].get<int32_t>(), args[3].get<int32_t>());
7336  break;
7337  case 7:
7338  if(events->commit) events->commit();
7339  break;
7340  }
7341  return 0;
7342 }
7343 
7344 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::none{0x0};
7345 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::completion{0x1};
7346 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::spellcheck{0x2};
7347 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::auto_capitalization{0x4};
7348 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::lowercase{0x8};
7349 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::uppercase{0x10};
7350 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::titlecase{0x20};
7351 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::hidden_text{0x40};
7352 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::sensitive_data{0x80};
7353 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::latin{0x100};
7354 const bitfield<2147483649, 28> zwp_text_input_v3_content_hint::multiline{0x200};
7355 
7356 
7357 
7358 zwp_text_input_manager_v3_t::zwp_text_input_manager_v3_t(const client_t& client, uint32_t id, int version)
7359  : resource_t(client, &server::detail::zwp_text_input_manager_v3_interface, id, version)
7360 {
7361  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7362 }
7363 
7364 zwp_text_input_manager_v3_t::zwp_text_input_manager_v3_t(const resource_t &resource)
7365  : resource_t(resource)
7366 {
7367  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7368 }
7369 
7370 const std::string zwp_text_input_manager_v3_t::interface_name = "zwp_text_input_manager_v3";
7371 
7372 zwp_text_input_manager_v3_t::operator zwp_text_input_manager_v3*() const
7373 {
7374  return reinterpret_cast<zwp_text_input_manager_v3*> (c_ptr());
7375 }
7376 
7378 {
7379  return std::static_pointer_cast<events_t>(get_events())->destroy;
7380 }
7381 
7382 
7384 {
7385  return std::static_pointer_cast<events_t>(get_events())->get_text_input;
7386 }
7387 
7388 
7389 int zwp_text_input_manager_v3_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7390 {
7391  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7392  switch(opcode)
7393  {
7394  case 0:
7395  if(events->destroy) events->destroy();
7396  break;
7397  case 1:
7398  if(events->get_text_input) events->get_text_input(zwp_text_input_v3_t(args[0].get<resource_t>()), seat_t(args[1].get<resource_t>()));
7399  break;
7400  }
7401  return 0;
7402 }
7403 
7404 xdg_activation_v1_t::xdg_activation_v1_t(const client_t& client, uint32_t id, int version)
7405  : resource_t(client, &server::detail::xdg_activation_v1_interface, id, version)
7406 {
7407  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7408 }
7409 
7410 xdg_activation_v1_t::xdg_activation_v1_t(const resource_t &resource)
7411  : resource_t(resource)
7412 {
7413  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7414 }
7415 
7416 const std::string xdg_activation_v1_t::interface_name = "xdg_activation_v1";
7417 
7418 xdg_activation_v1_t::operator xdg_activation_v1*() const
7419 {
7420  return reinterpret_cast<xdg_activation_v1*> (c_ptr());
7421 }
7422 
7423 std::function<void()> &xdg_activation_v1_t::on_destroy()
7424 {
7425  return std::static_pointer_cast<events_t>(get_events())->destroy;
7426 }
7427 
7428 
7430 {
7431  return std::static_pointer_cast<events_t>(get_events())->get_activation_token;
7432 }
7433 
7434 
7435 std::function<void(std::string, surface_t)> &xdg_activation_v1_t::on_activate()
7436 {
7437  return std::static_pointer_cast<events_t>(get_events())->activate;
7438 }
7439 
7440 
7441 int xdg_activation_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7442 {
7443  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7444  switch(opcode)
7445  {
7446  case 0:
7447  if(events->destroy) events->destroy();
7448  break;
7449  case 1:
7450  if(events->get_activation_token) events->get_activation_token(xdg_activation_token_v1_t(args[0].get<resource_t>()));
7451  break;
7452  case 2:
7453  if(events->activate) events->activate(args[0].get<std::string>(), surface_t(args[1].get<resource_t>()));
7454  break;
7455  }
7456  return 0;
7457 }
7458 
7459 xdg_activation_token_v1_t::xdg_activation_token_v1_t(const client_t& client, uint32_t id, int version)
7460  : resource_t(client, &server::detail::xdg_activation_token_v1_interface, id, version)
7461 {
7462  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7463 }
7464 
7465 xdg_activation_token_v1_t::xdg_activation_token_v1_t(const resource_t &resource)
7466  : resource_t(resource)
7467 {
7468  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7469 }
7470 
7471 const std::string xdg_activation_token_v1_t::interface_name = "xdg_activation_token_v1";
7472 
7473 xdg_activation_token_v1_t::operator xdg_activation_token_v1*() const
7474 {
7475  return reinterpret_cast<xdg_activation_token_v1*> (c_ptr());
7476 }
7477 
7478 std::function<void(uint32_t, seat_t)> &xdg_activation_token_v1_t::on_set_serial()
7479 {
7480  return std::static_pointer_cast<events_t>(get_events())->set_serial;
7481 }
7482 
7483 
7484 std::function<void(std::string)> &xdg_activation_token_v1_t::on_set_app_id()
7485 {
7486  return std::static_pointer_cast<events_t>(get_events())->set_app_id;
7487 }
7488 
7489 
7491 {
7492  return std::static_pointer_cast<events_t>(get_events())->set_surface;
7493 }
7494 
7495 
7497 {
7498  return std::static_pointer_cast<events_t>(get_events())->commit;
7499 }
7500 
7501 
7503 {
7504  return std::static_pointer_cast<events_t>(get_events())->destroy;
7505 }
7506 
7507 
7508 void xdg_activation_token_v1_t::done(std::string const& token, bool post)
7509 {
7510  send_event(post, 0, token);
7511 }
7512 
7514 {
7515  post_error(static_cast<uint32_t>(xdg_activation_token_v1_error::already_used), msg);
7516 }
7517 
7518 int xdg_activation_token_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7519 {
7520  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7521  switch(opcode)
7522  {
7523  case 0:
7524  if(events->set_serial) events->set_serial(args[0].get<uint32_t>(), seat_t(args[1].get<resource_t>()));
7525  break;
7526  case 1:
7527  if(events->set_app_id) events->set_app_id(args[0].get<std::string>());
7528  break;
7529  case 2:
7530  if(events->set_surface) events->set_surface(surface_t(args[0].get<resource_t>()));
7531  break;
7532  case 3:
7533  if(events->commit) events->commit();
7534  break;
7535  case 4:
7536  if(events->destroy) events->destroy();
7537  break;
7538  }
7539  return 0;
7540 }
7541 
7542 
7543 zxdg_decoration_manager_v1_t::zxdg_decoration_manager_v1_t(const client_t& client, uint32_t id, int version)
7544  : resource_t(client, &server::detail::zxdg_decoration_manager_v1_interface, id, version)
7545 {
7546  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7547 }
7548 
7549 zxdg_decoration_manager_v1_t::zxdg_decoration_manager_v1_t(const resource_t &resource)
7550  : resource_t(resource)
7551 {
7552  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7553 }
7554 
7555 const std::string zxdg_decoration_manager_v1_t::interface_name = "zxdg_decoration_manager_v1";
7556 
7557 zxdg_decoration_manager_v1_t::operator zxdg_decoration_manager_v1*() const
7558 {
7559  return reinterpret_cast<zxdg_decoration_manager_v1*> (c_ptr());
7560 }
7561 
7563 {
7564  return std::static_pointer_cast<events_t>(get_events())->destroy;
7565 }
7566 
7567 
7569 {
7570  return std::static_pointer_cast<events_t>(get_events())->get_toplevel_decoration;
7571 }
7572 
7573 
7574 int zxdg_decoration_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7575 {
7576  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7577  switch(opcode)
7578  {
7579  case 0:
7580  if(events->destroy) events->destroy();
7581  break;
7582  case 1:
7583  if(events->get_toplevel_decoration) events->get_toplevel_decoration(zxdg_toplevel_decoration_v1_t(args[0].get<resource_t>()), xdg_toplevel_t(args[1].get<resource_t>()));
7584  break;
7585  }
7586  return 0;
7587 }
7588 
7589 zxdg_toplevel_decoration_v1_t::zxdg_toplevel_decoration_v1_t(const client_t& client, uint32_t id, int version)
7590  : resource_t(client, &server::detail::zxdg_toplevel_decoration_v1_interface, id, version)
7591 {
7592  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7593 }
7594 
7595 zxdg_toplevel_decoration_v1_t::zxdg_toplevel_decoration_v1_t(const resource_t &resource)
7596  : resource_t(resource)
7597 {
7598  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7599 }
7600 
7601 const std::string zxdg_toplevel_decoration_v1_t::interface_name = "zxdg_toplevel_decoration_v1";
7602 
7603 zxdg_toplevel_decoration_v1_t::operator zxdg_toplevel_decoration_v1*() const
7604 {
7605  return reinterpret_cast<zxdg_toplevel_decoration_v1*> (c_ptr());
7606 }
7607 
7609 {
7610  return std::static_pointer_cast<events_t>(get_events())->destroy;
7611 }
7612 
7613 
7614 std::function<void(zxdg_toplevel_decoration_v1_mode)> &zxdg_toplevel_decoration_v1_t::on_set_mode()
7615 {
7616  return std::static_pointer_cast<events_t>(get_events())->set_mode;
7617 }
7618 
7619 
7621 {
7622  return std::static_pointer_cast<events_t>(get_events())->unset_mode;
7623 }
7624 
7625 
7626 void zxdg_toplevel_decoration_v1_t::configure(zxdg_toplevel_decoration_v1_mode const& mode, bool post)
7627 {
7628  send_event(post, 0, static_cast<uint32_t>(mode));
7629 }
7630 
7632 {
7633  post_error(static_cast<uint32_t>(zxdg_toplevel_decoration_v1_error::unconfigured_buffer), msg);
7634 }
7635 
7637 {
7638  post_error(static_cast<uint32_t>(zxdg_toplevel_decoration_v1_error::already_constructed), msg);
7639 }
7640 
7642 {
7643  post_error(static_cast<uint32_t>(zxdg_toplevel_decoration_v1_error::orphaned), msg);
7644 }
7645 
7646 int zxdg_toplevel_decoration_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7647 {
7648  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7649  switch(opcode)
7650  {
7651  case 0:
7652  if(events->destroy) events->destroy();
7653  break;
7654  case 1:
7655  if(events->set_mode) events->set_mode(zxdg_toplevel_decoration_v1_mode(args[0].get<uint32_t>()));
7656  break;
7657  case 2:
7658  if(events->unset_mode) events->unset_mode();
7659  break;
7660  }
7661  return 0;
7662 }
7663 
7664 
7665 
7666 zxdg_exporter_v1_t::zxdg_exporter_v1_t(const client_t& client, uint32_t id, int version)
7667  : resource_t(client, &server::detail::zxdg_exporter_v1_interface, id, version)
7668 {
7669  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7670 }
7671 
7672 zxdg_exporter_v1_t::zxdg_exporter_v1_t(const resource_t &resource)
7673  : resource_t(resource)
7674 {
7675  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7676 }
7677 
7678 const std::string zxdg_exporter_v1_t::interface_name = "zxdg_exporter_v1";
7679 
7680 zxdg_exporter_v1_t::operator zxdg_exporter_v1*() const
7681 {
7682  return reinterpret_cast<zxdg_exporter_v1*> (c_ptr());
7683 }
7684 
7685 std::function<void()> &zxdg_exporter_v1_t::on_destroy()
7686 {
7687  return std::static_pointer_cast<events_t>(get_events())->destroy;
7688 }
7689 
7690 
7692 {
7693  return std::static_pointer_cast<events_t>(get_events())->_export;
7694 }
7695 
7696 
7697 int zxdg_exporter_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7698 {
7699  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7700  switch(opcode)
7701  {
7702  case 0:
7703  if(events->destroy) events->destroy();
7704  break;
7705  case 1:
7706  if(events->_export) events->_export(zxdg_exported_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
7707  break;
7708  }
7709  return 0;
7710 }
7711 
7712 zxdg_importer_v1_t::zxdg_importer_v1_t(const client_t& client, uint32_t id, int version)
7713  : resource_t(client, &server::detail::zxdg_importer_v1_interface, id, version)
7714 {
7715  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7716 }
7717 
7718 zxdg_importer_v1_t::zxdg_importer_v1_t(const resource_t &resource)
7719  : resource_t(resource)
7720 {
7721  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7722 }
7723 
7724 const std::string zxdg_importer_v1_t::interface_name = "zxdg_importer_v1";
7725 
7726 zxdg_importer_v1_t::operator zxdg_importer_v1*() const
7727 {
7728  return reinterpret_cast<zxdg_importer_v1*> (c_ptr());
7729 }
7730 
7731 std::function<void()> &zxdg_importer_v1_t::on_destroy()
7732 {
7733  return std::static_pointer_cast<events_t>(get_events())->destroy;
7734 }
7735 
7736 
7737 std::function<void(zxdg_imported_v1_t, std::string)> &zxdg_importer_v1_t::on_import()
7738 {
7739  return std::static_pointer_cast<events_t>(get_events())->import;
7740 }
7741 
7742 
7743 int zxdg_importer_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7744 {
7745  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7746  switch(opcode)
7747  {
7748  case 0:
7749  if(events->destroy) events->destroy();
7750  break;
7751  case 1:
7752  if(events->import) events->import(zxdg_imported_v1_t(args[0].get<resource_t>()), args[1].get<std::string>());
7753  break;
7754  }
7755  return 0;
7756 }
7757 
7758 zxdg_exported_v1_t::zxdg_exported_v1_t(const client_t& client, uint32_t id, int version)
7759  : resource_t(client, &server::detail::zxdg_exported_v1_interface, id, version)
7760 {
7761  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7762 }
7763 
7764 zxdg_exported_v1_t::zxdg_exported_v1_t(const resource_t &resource)
7765  : resource_t(resource)
7766 {
7767  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7768 }
7769 
7770 const std::string zxdg_exported_v1_t::interface_name = "zxdg_exported_v1";
7771 
7772 zxdg_exported_v1_t::operator zxdg_exported_v1*() const
7773 {
7774  return reinterpret_cast<zxdg_exported_v1*> (c_ptr());
7775 }
7776 
7777 std::function<void()> &zxdg_exported_v1_t::on_destroy()
7778 {
7779  return std::static_pointer_cast<events_t>(get_events())->destroy;
7780 }
7781 
7782 
7783 void zxdg_exported_v1_t::handle(std::string const& handle, bool post)
7784 {
7785  send_event(post, 0, handle);
7786 }
7787 
7788 int zxdg_exported_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7789 {
7790  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7791  switch(opcode)
7792  {
7793  case 0:
7794  if(events->destroy) events->destroy();
7795  break;
7796  }
7797  return 0;
7798 }
7799 
7800 zxdg_imported_v1_t::zxdg_imported_v1_t(const client_t& client, uint32_t id, int version)
7801  : resource_t(client, &server::detail::zxdg_imported_v1_interface, id, version)
7802 {
7803  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7804 }
7805 
7806 zxdg_imported_v1_t::zxdg_imported_v1_t(const resource_t &resource)
7807  : resource_t(resource)
7808 {
7809  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7810 }
7811 
7812 const std::string zxdg_imported_v1_t::interface_name = "zxdg_imported_v1";
7813 
7814 zxdg_imported_v1_t::operator zxdg_imported_v1*() const
7815 {
7816  return reinterpret_cast<zxdg_imported_v1*> (c_ptr());
7817 }
7818 
7819 std::function<void()> &zxdg_imported_v1_t::on_destroy()
7820 {
7821  return std::static_pointer_cast<events_t>(get_events())->destroy;
7822 }
7823 
7824 
7826 {
7827  return std::static_pointer_cast<events_t>(get_events())->set_parent_of;
7828 }
7829 
7830 
7832 {
7833  send_event(post, 0);
7834 }
7835 
7836 int zxdg_imported_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7837 {
7838  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7839  switch(opcode)
7840  {
7841  case 0:
7842  if(events->destroy) events->destroy();
7843  break;
7844  case 1:
7845  if(events->set_parent_of) events->set_parent_of(surface_t(args[0].get<resource_t>()));
7846  break;
7847  }
7848  return 0;
7849 }
7850 
7851 zxdg_exporter_v2_t::zxdg_exporter_v2_t(const client_t& client, uint32_t id, int version)
7852  : resource_t(client, &server::detail::zxdg_exporter_v2_interface, id, version)
7853 {
7854  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7855 }
7856 
7857 zxdg_exporter_v2_t::zxdg_exporter_v2_t(const resource_t &resource)
7858  : resource_t(resource)
7859 {
7860  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7861 }
7862 
7863 const std::string zxdg_exporter_v2_t::interface_name = "zxdg_exporter_v2";
7864 
7865 zxdg_exporter_v2_t::operator zxdg_exporter_v2*() const
7866 {
7867  return reinterpret_cast<zxdg_exporter_v2*> (c_ptr());
7868 }
7869 
7870 std::function<void()> &zxdg_exporter_v2_t::on_destroy()
7871 {
7872  return std::static_pointer_cast<events_t>(get_events())->destroy;
7873 }
7874 
7875 
7877 {
7878  return std::static_pointer_cast<events_t>(get_events())->export_toplevel;
7879 }
7880 
7881 
7882 void zxdg_exporter_v2_t::post_invalid_surface(std::string const& msg)
7883 {
7884  post_error(static_cast<uint32_t>(zxdg_exporter_v2_error::invalid_surface), msg);
7885 }
7886 
7887 int zxdg_exporter_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7888 {
7889  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7890  switch(opcode)
7891  {
7892  case 0:
7893  if(events->destroy) events->destroy();
7894  break;
7895  case 1:
7896  if(events->export_toplevel) events->export_toplevel(zxdg_exported_v2_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
7897  break;
7898  }
7899  return 0;
7900 }
7901 
7902 
7903 zxdg_importer_v2_t::zxdg_importer_v2_t(const client_t& client, uint32_t id, int version)
7904  : resource_t(client, &server::detail::zxdg_importer_v2_interface, id, version)
7905 {
7906  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7907 }
7908 
7909 zxdg_importer_v2_t::zxdg_importer_v2_t(const resource_t &resource)
7910  : resource_t(resource)
7911 {
7912  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7913 }
7914 
7915 const std::string zxdg_importer_v2_t::interface_name = "zxdg_importer_v2";
7916 
7917 zxdg_importer_v2_t::operator zxdg_importer_v2*() const
7918 {
7919  return reinterpret_cast<zxdg_importer_v2*> (c_ptr());
7920 }
7921 
7922 std::function<void()> &zxdg_importer_v2_t::on_destroy()
7923 {
7924  return std::static_pointer_cast<events_t>(get_events())->destroy;
7925 }
7926 
7927 
7929 {
7930  return std::static_pointer_cast<events_t>(get_events())->import_toplevel;
7931 }
7932 
7933 
7934 int zxdg_importer_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7935 {
7936  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7937  switch(opcode)
7938  {
7939  case 0:
7940  if(events->destroy) events->destroy();
7941  break;
7942  case 1:
7943  if(events->import_toplevel) events->import_toplevel(zxdg_imported_v2_t(args[0].get<resource_t>()), args[1].get<std::string>());
7944  break;
7945  }
7946  return 0;
7947 }
7948 
7949 zxdg_exported_v2_t::zxdg_exported_v2_t(const client_t& client, uint32_t id, int version)
7950  : resource_t(client, &server::detail::zxdg_exported_v2_interface, id, version)
7951 {
7952  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7953 }
7954 
7955 zxdg_exported_v2_t::zxdg_exported_v2_t(const resource_t &resource)
7956  : resource_t(resource)
7957 {
7958  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7959 }
7960 
7961 const std::string zxdg_exported_v2_t::interface_name = "zxdg_exported_v2";
7962 
7963 zxdg_exported_v2_t::operator zxdg_exported_v2*() const
7964 {
7965  return reinterpret_cast<zxdg_exported_v2*> (c_ptr());
7966 }
7967 
7968 std::function<void()> &zxdg_exported_v2_t::on_destroy()
7969 {
7970  return std::static_pointer_cast<events_t>(get_events())->destroy;
7971 }
7972 
7973 
7974 void zxdg_exported_v2_t::handle(std::string const& handle, bool post)
7975 {
7976  send_event(post, 0, handle);
7977 }
7978 
7979 int zxdg_exported_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
7980 {
7981  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
7982  switch(opcode)
7983  {
7984  case 0:
7985  if(events->destroy) events->destroy();
7986  break;
7987  }
7988  return 0;
7989 }
7990 
7991 zxdg_imported_v2_t::zxdg_imported_v2_t(const client_t& client, uint32_t id, int version)
7992  : resource_t(client, &server::detail::zxdg_imported_v2_interface, id, version)
7993 {
7994  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
7995 }
7996 
7997 zxdg_imported_v2_t::zxdg_imported_v2_t(const resource_t &resource)
7998  : resource_t(resource)
7999 {
8000  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8001 }
8002 
8003 const std::string zxdg_imported_v2_t::interface_name = "zxdg_imported_v2";
8004 
8005 zxdg_imported_v2_t::operator zxdg_imported_v2*() const
8006 {
8007  return reinterpret_cast<zxdg_imported_v2*> (c_ptr());
8008 }
8009 
8010 std::function<void()> &zxdg_imported_v2_t::on_destroy()
8011 {
8012  return std::static_pointer_cast<events_t>(get_events())->destroy;
8013 }
8014 
8015 
8017 {
8018  return std::static_pointer_cast<events_t>(get_events())->set_parent_of;
8019 }
8020 
8021 
8023 {
8024  send_event(post, 0);
8025 }
8026 
8027 void zxdg_imported_v2_t::post_invalid_surface(std::string const& msg)
8028 {
8029  post_error(static_cast<uint32_t>(zxdg_imported_v2_error::invalid_surface), msg);
8030 }
8031 
8032 int zxdg_imported_v2_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8033 {
8034  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8035  switch(opcode)
8036  {
8037  case 0:
8038  if(events->destroy) events->destroy();
8039  break;
8040  case 1:
8041  if(events->set_parent_of) events->set_parent_of(surface_t(args[0].get<resource_t>()));
8042  break;
8043  }
8044  return 0;
8045 }
8046 
8047 
8048 zxdg_output_manager_v1_t::zxdg_output_manager_v1_t(const client_t& client, uint32_t id, int version)
8049  : resource_t(client, &server::detail::zxdg_output_manager_v1_interface, id, version)
8050 {
8051  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8052 }
8053 
8054 zxdg_output_manager_v1_t::zxdg_output_manager_v1_t(const resource_t &resource)
8055  : resource_t(resource)
8056 {
8057  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8058 }
8059 
8060 const std::string zxdg_output_manager_v1_t::interface_name = "zxdg_output_manager_v1";
8061 
8062 zxdg_output_manager_v1_t::operator zxdg_output_manager_v1*() const
8063 {
8064  return reinterpret_cast<zxdg_output_manager_v1*> (c_ptr());
8065 }
8066 
8068 {
8069  return std::static_pointer_cast<events_t>(get_events())->destroy;
8070 }
8071 
8072 
8074 {
8075  return std::static_pointer_cast<events_t>(get_events())->get_xdg_output;
8076 }
8077 
8078 
8079 int zxdg_output_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8080 {
8081  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8082  switch(opcode)
8083  {
8084  case 0:
8085  if(events->destroy) events->destroy();
8086  break;
8087  case 1:
8088  if(events->get_xdg_output) events->get_xdg_output(zxdg_output_v1_t(args[0].get<resource_t>()), output_t(args[1].get<resource_t>()));
8089  break;
8090  }
8091  return 0;
8092 }
8093 
8094 zxdg_output_v1_t::zxdg_output_v1_t(const client_t& client, uint32_t id, int version)
8095  : resource_t(client, &server::detail::zxdg_output_v1_interface, id, version)
8096 {
8097  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8098 }
8099 
8100 zxdg_output_v1_t::zxdg_output_v1_t(const resource_t &resource)
8101  : resource_t(resource)
8102 {
8103  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8104 }
8105 
8106 const std::string zxdg_output_v1_t::interface_name = "zxdg_output_v1";
8107 
8108 zxdg_output_v1_t::operator zxdg_output_v1*() const
8109 {
8110  return reinterpret_cast<zxdg_output_v1*> (c_ptr());
8111 }
8112 
8113 std::function<void()> &zxdg_output_v1_t::on_destroy()
8114 {
8115  return std::static_pointer_cast<events_t>(get_events())->destroy;
8116 }
8117 
8118 
8119 void zxdg_output_v1_t::logical_position(int32_t x, int32_t y, bool post)
8120 {
8121  send_event(post, 0, x, y);
8122 }
8123 
8124 void zxdg_output_v1_t::logical_size(int32_t width, int32_t height, bool post)
8125 {
8126  send_event(post, 1, width, height);
8127 }
8128 
8129 void zxdg_output_v1_t::done(bool post)
8130 {
8131  send_event(post, 2);
8132 }
8133 
8134 void zxdg_output_v1_t::name(std::string const& name, bool post)
8135 {
8136  send_event(post, 3, name);
8137 }
8138 
8140 {
8141  return (get_version() >= name_since_version);
8142 }
8143 
8144 void zxdg_output_v1_t::description(std::string const& description, bool post)
8145 {
8146  send_event(post, 4, description);
8147 }
8148 
8150 {
8151  return (get_version() >= description_since_version);
8152 }
8153 
8154 int zxdg_output_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8155 {
8156  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8157  switch(opcode)
8158  {
8159  case 0:
8160  if(events->destroy) events->destroy();
8161  break;
8162  }
8163  return 0;
8164 }
8165 
8166 zxdg_shell_v6_t::zxdg_shell_v6_t(const client_t& client, uint32_t id, int version)
8167  : resource_t(client, &server::detail::zxdg_shell_v6_interface, id, version)
8168 {
8169  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8170 }
8171 
8172 zxdg_shell_v6_t::zxdg_shell_v6_t(const resource_t &resource)
8173  : resource_t(resource)
8174 {
8175  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8176 }
8177 
8178 const std::string zxdg_shell_v6_t::interface_name = "zxdg_shell_v6";
8179 
8180 zxdg_shell_v6_t::operator zxdg_shell_v6*() const
8181 {
8182  return reinterpret_cast<zxdg_shell_v6*> (c_ptr());
8183 }
8184 
8185 std::function<void()> &zxdg_shell_v6_t::on_destroy()
8186 {
8187  return std::static_pointer_cast<events_t>(get_events())->destroy;
8188 }
8189 
8190 
8192 {
8193  return std::static_pointer_cast<events_t>(get_events())->create_positioner;
8194 }
8195 
8196 
8198 {
8199  return std::static_pointer_cast<events_t>(get_events())->get_xdg_surface;
8200 }
8201 
8202 
8203 std::function<void(uint32_t)> &zxdg_shell_v6_t::on_pong()
8204 {
8205  return std::static_pointer_cast<events_t>(get_events())->pong;
8206 }
8207 
8208 
8209 void zxdg_shell_v6_t::ping(uint32_t serial, bool post)
8210 {
8211  send_event(post, 0, serial);
8212 }
8213 
8214 void zxdg_shell_v6_t::post_role(std::string const& msg)
8215 {
8216  post_error(static_cast<uint32_t>(zxdg_shell_v6_error::role), msg);
8217 }
8218 
8219 void zxdg_shell_v6_t::post_defunct_surfaces(std::string const& msg)
8220 {
8221  post_error(static_cast<uint32_t>(zxdg_shell_v6_error::defunct_surfaces), msg);
8222 }
8223 
8225 {
8226  post_error(static_cast<uint32_t>(zxdg_shell_v6_error::not_the_topmost_popup), msg);
8227 }
8228 
8230 {
8231  post_error(static_cast<uint32_t>(zxdg_shell_v6_error::invalid_popup_parent), msg);
8232 }
8233 
8235 {
8236  post_error(static_cast<uint32_t>(zxdg_shell_v6_error::invalid_surface_state), msg);
8237 }
8238 
8239 void zxdg_shell_v6_t::post_invalid_positioner(std::string const& msg)
8240 {
8241  post_error(static_cast<uint32_t>(zxdg_shell_v6_error::invalid_positioner), msg);
8242 }
8243 
8244 int zxdg_shell_v6_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8245 {
8246  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8247  switch(opcode)
8248  {
8249  case 0:
8250  if(events->destroy) events->destroy();
8251  break;
8252  case 1:
8253  if(events->create_positioner) events->create_positioner(zxdg_positioner_v6_t(args[0].get<resource_t>()));
8254  break;
8255  case 2:
8256  if(events->get_xdg_surface) events->get_xdg_surface(zxdg_surface_v6_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()));
8257  break;
8258  case 3:
8259  if(events->pong) events->pong(args[0].get<uint32_t>());
8260  break;
8261  }
8262  return 0;
8263 }
8264 
8265 
8266 zxdg_positioner_v6_t::zxdg_positioner_v6_t(const client_t& client, uint32_t id, int version)
8267  : resource_t(client, &server::detail::zxdg_positioner_v6_interface, id, version)
8268 {
8269  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8270 }
8271 
8272 zxdg_positioner_v6_t::zxdg_positioner_v6_t(const resource_t &resource)
8273  : resource_t(resource)
8274 {
8275  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8276 }
8277 
8278 const std::string zxdg_positioner_v6_t::interface_name = "zxdg_positioner_v6";
8279 
8280 zxdg_positioner_v6_t::operator zxdg_positioner_v6*() const
8281 {
8282  return reinterpret_cast<zxdg_positioner_v6*> (c_ptr());
8283 }
8284 
8285 std::function<void()> &zxdg_positioner_v6_t::on_destroy()
8286 {
8287  return std::static_pointer_cast<events_t>(get_events())->destroy;
8288 }
8289 
8290 
8291 std::function<void(int32_t, int32_t)> &zxdg_positioner_v6_t::on_set_size()
8292 {
8293  return std::static_pointer_cast<events_t>(get_events())->set_size;
8294 }
8295 
8296 
8297 std::function<void(int32_t, int32_t, int32_t, int32_t)> &zxdg_positioner_v6_t::on_set_anchor_rect()
8298 {
8299  return std::static_pointer_cast<events_t>(get_events())->set_anchor_rect;
8300 }
8301 
8302 
8303 std::function<void(zxdg_positioner_v6_anchor)> &zxdg_positioner_v6_t::on_set_anchor()
8304 {
8305  return std::static_pointer_cast<events_t>(get_events())->set_anchor;
8306 }
8307 
8308 
8309 std::function<void(zxdg_positioner_v6_gravity)> &zxdg_positioner_v6_t::on_set_gravity()
8310 {
8311  return std::static_pointer_cast<events_t>(get_events())->set_gravity;
8312 }
8313 
8314 
8316 {
8317  return std::static_pointer_cast<events_t>(get_events())->set_constraint_adjustment;
8318 }
8319 
8320 
8321 std::function<void(int32_t, int32_t)> &zxdg_positioner_v6_t::on_set_offset()
8322 {
8323  return std::static_pointer_cast<events_t>(get_events())->set_offset;
8324 }
8325 
8326 
8327 void zxdg_positioner_v6_t::post_invalid_input(std::string const& msg)
8328 {
8329  post_error(static_cast<uint32_t>(zxdg_positioner_v6_error::invalid_input), msg);
8330 }
8331 
8332 int zxdg_positioner_v6_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8333 {
8334  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8335  switch(opcode)
8336  {
8337  case 0:
8338  if(events->destroy) events->destroy();
8339  break;
8340  case 1:
8341  if(events->set_size) events->set_size(args[0].get<int32_t>(), args[1].get<int32_t>());
8342  break;
8343  case 2:
8344  if(events->set_anchor_rect) events->set_anchor_rect(args[0].get<int32_t>(), args[1].get<int32_t>(), args[2].get<int32_t>(), args[3].get<int32_t>());
8345  break;
8346  case 3:
8347  if(events->set_anchor) events->set_anchor(zxdg_positioner_v6_anchor(args[0].get<uint32_t>()));
8348  break;
8349  case 4:
8350  if(events->set_gravity) events->set_gravity(zxdg_positioner_v6_gravity(args[0].get<uint32_t>()));
8351  break;
8352  case 5:
8353  if(events->set_constraint_adjustment) events->set_constraint_adjustment(zxdg_positioner_v6_constraint_adjustment(args[0].get<uint32_t>()));
8354  break;
8355  case 6:
8356  if(events->set_offset) events->set_offset(args[0].get<int32_t>(), args[1].get<int32_t>());
8357  break;
8358  }
8359  return 0;
8360 }
8361 
8362 const bitfield<2147483649, 37> zxdg_positioner_v6_anchor::none{0};
8363 const bitfield<2147483649, 37> zxdg_positioner_v6_anchor::top{1};
8364 const bitfield<2147483649, 37> zxdg_positioner_v6_anchor::bottom{2};
8365 const bitfield<2147483649, 37> zxdg_positioner_v6_anchor::left{4};
8366 const bitfield<2147483649, 37> zxdg_positioner_v6_anchor::right{8};
8367 
8368 const bitfield<2147483649, 38> zxdg_positioner_v6_gravity::none{0};
8369 const bitfield<2147483649, 38> zxdg_positioner_v6_gravity::top{1};
8370 const bitfield<2147483649, 38> zxdg_positioner_v6_gravity::bottom{2};
8371 const bitfield<2147483649, 38> zxdg_positioner_v6_gravity::left{4};
8372 const bitfield<2147483649, 38> zxdg_positioner_v6_gravity::right{8};
8373 
8374 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::none{0};
8375 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::slide_x{1};
8376 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::slide_y{2};
8377 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::flip_x{4};
8378 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::flip_y{8};
8379 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::resize_x{16};
8380 const bitfield<2147483649, 39> zxdg_positioner_v6_constraint_adjustment::resize_y{32};
8381 
8382 
8383 zxdg_surface_v6_t::zxdg_surface_v6_t(const client_t& client, uint32_t id, int version)
8384  : resource_t(client, &server::detail::zxdg_surface_v6_interface, id, version)
8385 {
8386  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8387 }
8388 
8389 zxdg_surface_v6_t::zxdg_surface_v6_t(const resource_t &resource)
8390  : resource_t(resource)
8391 {
8392  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8393 }
8394 
8395 const std::string zxdg_surface_v6_t::interface_name = "zxdg_surface_v6";
8396 
8397 zxdg_surface_v6_t::operator zxdg_surface_v6*() const
8398 {
8399  return reinterpret_cast<zxdg_surface_v6*> (c_ptr());
8400 }
8401 
8402 std::function<void()> &zxdg_surface_v6_t::on_destroy()
8403 {
8404  return std::static_pointer_cast<events_t>(get_events())->destroy;
8405 }
8406 
8407 
8409 {
8410  return std::static_pointer_cast<events_t>(get_events())->get_toplevel;
8411 }
8412 
8413 
8415 {
8416  return std::static_pointer_cast<events_t>(get_events())->get_popup;
8417 }
8418 
8419 
8420 std::function<void(int32_t, int32_t, int32_t, int32_t)> &zxdg_surface_v6_t::on_set_window_geometry()
8421 {
8422  return std::static_pointer_cast<events_t>(get_events())->set_window_geometry;
8423 }
8424 
8425 
8426 std::function<void(uint32_t)> &zxdg_surface_v6_t::on_ack_configure()
8427 {
8428  return std::static_pointer_cast<events_t>(get_events())->ack_configure;
8429 }
8430 
8431 
8432 void zxdg_surface_v6_t::configure(uint32_t serial, bool post)
8433 {
8434  send_event(post, 0, serial);
8435 }
8436 
8437 void zxdg_surface_v6_t::post_not_constructed(std::string const& msg)
8438 {
8439  post_error(static_cast<uint32_t>(zxdg_surface_v6_error::not_constructed), msg);
8440 }
8441 
8443 {
8444  post_error(static_cast<uint32_t>(zxdg_surface_v6_error::already_constructed), msg);
8445 }
8446 
8448 {
8449  post_error(static_cast<uint32_t>(zxdg_surface_v6_error::unconfigured_buffer), msg);
8450 }
8451 
8452 int zxdg_surface_v6_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8453 {
8454  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8455  switch(opcode)
8456  {
8457  case 0:
8458  if(events->destroy) events->destroy();
8459  break;
8460  case 1:
8461  if(events->get_toplevel) events->get_toplevel(zxdg_toplevel_v6_t(args[0].get<resource_t>()));
8462  break;
8463  case 2:
8464  if(events->get_popup) events->get_popup(zxdg_popup_v6_t(args[0].get<resource_t>()), zxdg_surface_v6_t(args[1].get<resource_t>()), zxdg_positioner_v6_t(args[2].get<resource_t>()));
8465  break;
8466  case 3:
8467  if(events->set_window_geometry) events->set_window_geometry(args[0].get<int32_t>(), args[1].get<int32_t>(), args[2].get<int32_t>(), args[3].get<int32_t>());
8468  break;
8469  case 4:
8470  if(events->ack_configure) events->ack_configure(args[0].get<uint32_t>());
8471  break;
8472  }
8473  return 0;
8474 }
8475 
8476 
8477 zxdg_toplevel_v6_t::zxdg_toplevel_v6_t(const client_t& client, uint32_t id, int version)
8478  : resource_t(client, &server::detail::zxdg_toplevel_v6_interface, id, version)
8479 {
8480  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8481 }
8482 
8483 zxdg_toplevel_v6_t::zxdg_toplevel_v6_t(const resource_t &resource)
8484  : resource_t(resource)
8485 {
8486  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8487 }
8488 
8489 const std::string zxdg_toplevel_v6_t::interface_name = "zxdg_toplevel_v6";
8490 
8491 zxdg_toplevel_v6_t::operator zxdg_toplevel_v6*() const
8492 {
8493  return reinterpret_cast<zxdg_toplevel_v6*> (c_ptr());
8494 }
8495 
8496 std::function<void()> &zxdg_toplevel_v6_t::on_destroy()
8497 {
8498  return std::static_pointer_cast<events_t>(get_events())->destroy;
8499 }
8500 
8501 
8503 {
8504  return std::static_pointer_cast<events_t>(get_events())->set_parent;
8505 }
8506 
8507 
8508 std::function<void(std::string)> &zxdg_toplevel_v6_t::on_set_title()
8509 {
8510  return std::static_pointer_cast<events_t>(get_events())->set_title;
8511 }
8512 
8513 
8514 std::function<void(std::string)> &zxdg_toplevel_v6_t::on_set_app_id()
8515 {
8516  return std::static_pointer_cast<events_t>(get_events())->set_app_id;
8517 }
8518 
8519 
8520 std::function<void(seat_t, uint32_t, int32_t, int32_t)> &zxdg_toplevel_v6_t::on_show_window_menu()
8521 {
8522  return std::static_pointer_cast<events_t>(get_events())->show_window_menu;
8523 }
8524 
8525 
8526 std::function<void(seat_t, uint32_t)> &zxdg_toplevel_v6_t::on_move()
8527 {
8528  return std::static_pointer_cast<events_t>(get_events())->move;
8529 }
8530 
8531 
8533 {
8534  return std::static_pointer_cast<events_t>(get_events())->resize;
8535 }
8536 
8537 
8538 std::function<void(int32_t, int32_t)> &zxdg_toplevel_v6_t::on_set_max_size()
8539 {
8540  return std::static_pointer_cast<events_t>(get_events())->set_max_size;
8541 }
8542 
8543 
8544 std::function<void(int32_t, int32_t)> &zxdg_toplevel_v6_t::on_set_min_size()
8545 {
8546  return std::static_pointer_cast<events_t>(get_events())->set_min_size;
8547 }
8548 
8549 
8551 {
8552  return std::static_pointer_cast<events_t>(get_events())->set_maximized;
8553 }
8554 
8555 
8557 {
8558  return std::static_pointer_cast<events_t>(get_events())->unset_maximized;
8559 }
8560 
8561 
8563 {
8564  return std::static_pointer_cast<events_t>(get_events())->set_fullscreen;
8565 }
8566 
8567 
8568 std::function<void()> &zxdg_toplevel_v6_t::on_unset_fullscreen()
8569 {
8570  return std::static_pointer_cast<events_t>(get_events())->unset_fullscreen;
8571 }
8572 
8573 
8575 {
8576  return std::static_pointer_cast<events_t>(get_events())->set_minimized;
8577 }
8578 
8579 
8580 void zxdg_toplevel_v6_t::configure(int32_t width, int32_t height, array_t const& states, bool post)
8581 {
8582  send_event(post, 0, width, height, states);
8583 }
8584 
8586 {
8587  send_event(post, 1);
8588 }
8589 
8590 int zxdg_toplevel_v6_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8591 {
8592  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8593  switch(opcode)
8594  {
8595  case 0:
8596  if(events->destroy) events->destroy();
8597  break;
8598  case 1:
8599  if(events->set_parent) events->set_parent(zxdg_toplevel_v6_t(args[0].get<resource_t>()));
8600  break;
8601  case 2:
8602  if(events->set_title) events->set_title(args[0].get<std::string>());
8603  break;
8604  case 3:
8605  if(events->set_app_id) events->set_app_id(args[0].get<std::string>());
8606  break;
8607  case 4:
8608  if(events->show_window_menu) events->show_window_menu(seat_t(args[0].get<resource_t>()), args[1].get<uint32_t>(), args[2].get<int32_t>(), args[3].get<int32_t>());
8609  break;
8610  case 5:
8611  if(events->move) events->move(seat_t(args[0].get<resource_t>()), args[1].get<uint32_t>());
8612  break;
8613  case 6:
8614  if(events->resize) events->resize(seat_t(args[0].get<resource_t>()), args[1].get<uint32_t>(), zxdg_toplevel_v6_resize_edge(args[2].get<uint32_t>()));
8615  break;
8616  case 7:
8617  if(events->set_max_size) events->set_max_size(args[0].get<int32_t>(), args[1].get<int32_t>());
8618  break;
8619  case 8:
8620  if(events->set_min_size) events->set_min_size(args[0].get<int32_t>(), args[1].get<int32_t>());
8621  break;
8622  case 9:
8623  if(events->set_maximized) events->set_maximized();
8624  break;
8625  case 10:
8626  if(events->unset_maximized) events->unset_maximized();
8627  break;
8628  case 11:
8629  if(events->set_fullscreen) events->set_fullscreen(output_t(args[0].get<resource_t>()));
8630  break;
8631  case 12:
8632  if(events->unset_fullscreen) events->unset_fullscreen();
8633  break;
8634  case 13:
8635  if(events->set_minimized) events->set_minimized();
8636  break;
8637  }
8638  return 0;
8639 }
8640 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::none{0};
8641 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::top{1};
8642 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::bottom{2};
8643 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::left{4};
8644 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::top_left{5};
8645 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::bottom_left{6};
8646 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::right{8};
8647 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::top_right{9};
8648 const bitfield<2147483649, 41> zxdg_toplevel_v6_resize_edge::bottom_right{10};
8649 
8650 
8651 
8652 zxdg_popup_v6_t::zxdg_popup_v6_t(const client_t& client, uint32_t id, int version)
8653  : resource_t(client, &server::detail::zxdg_popup_v6_interface, id, version)
8654 {
8655  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8656 }
8657 
8658 zxdg_popup_v6_t::zxdg_popup_v6_t(const resource_t &resource)
8659  : resource_t(resource)
8660 {
8661  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8662 }
8663 
8664 const std::string zxdg_popup_v6_t::interface_name = "zxdg_popup_v6";
8665 
8666 zxdg_popup_v6_t::operator zxdg_popup_v6*() const
8667 {
8668  return reinterpret_cast<zxdg_popup_v6*> (c_ptr());
8669 }
8670 
8671 std::function<void()> &zxdg_popup_v6_t::on_destroy()
8672 {
8673  return std::static_pointer_cast<events_t>(get_events())->destroy;
8674 }
8675 
8676 
8677 std::function<void(seat_t, uint32_t)> &zxdg_popup_v6_t::on_grab()
8678 {
8679  return std::static_pointer_cast<events_t>(get_events())->grab;
8680 }
8681 
8682 
8683 void zxdg_popup_v6_t::configure(int32_t x, int32_t y, int32_t width, int32_t height, bool post)
8684 {
8685  send_event(post, 0, x, y, width, height);
8686 }
8687 
8689 {
8690  send_event(post, 1);
8691 }
8692 
8693 void zxdg_popup_v6_t::post_invalid_grab(std::string const& msg)
8694 {
8695  post_error(static_cast<uint32_t>(zxdg_popup_v6_error::invalid_grab), msg);
8696 }
8697 
8698 int zxdg_popup_v6_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8699 {
8700  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8701  switch(opcode)
8702  {
8703  case 0:
8704  if(events->destroy) events->destroy();
8705  break;
8706  case 1:
8707  if(events->grab) events->grab(seat_t(args[0].get<resource_t>()), args[1].get<uint32_t>());
8708  break;
8709  }
8710  return 0;
8711 }
8712 
8713 
8714 zwp_xwayland_keyboard_grab_manager_v1_t::zwp_xwayland_keyboard_grab_manager_v1_t(const client_t& client, uint32_t id, int version)
8715  : resource_t(client, &server::detail::zwp_xwayland_keyboard_grab_manager_v1_interface, id, version)
8716 {
8717  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8718 }
8719 
8720 zwp_xwayland_keyboard_grab_manager_v1_t::zwp_xwayland_keyboard_grab_manager_v1_t(const resource_t &resource)
8721  : resource_t(resource)
8722 {
8723  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8724 }
8725 
8726 const std::string zwp_xwayland_keyboard_grab_manager_v1_t::interface_name = "zwp_xwayland_keyboard_grab_manager_v1";
8727 
8728 zwp_xwayland_keyboard_grab_manager_v1_t::operator zwp_xwayland_keyboard_grab_manager_v1*() const
8729 {
8730  return reinterpret_cast<zwp_xwayland_keyboard_grab_manager_v1*> (c_ptr());
8731 }
8732 
8734 {
8735  return std::static_pointer_cast<events_t>(get_events())->destroy;
8736 }
8737 
8738 
8740 {
8741  return std::static_pointer_cast<events_t>(get_events())->grab_keyboard;
8742 }
8743 
8744 
8745 int zwp_xwayland_keyboard_grab_manager_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8746 {
8747  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8748  switch(opcode)
8749  {
8750  case 0:
8751  if(events->destroy) events->destroy();
8752  break;
8753  case 1:
8754  if(events->grab_keyboard) events->grab_keyboard(zwp_xwayland_keyboard_grab_v1_t(args[0].get<resource_t>()), surface_t(args[1].get<resource_t>()), seat_t(args[2].get<resource_t>()));
8755  break;
8756  }
8757  return 0;
8758 }
8759 
8760 zwp_xwayland_keyboard_grab_v1_t::zwp_xwayland_keyboard_grab_v1_t(const client_t& client, uint32_t id, int version)
8761  : resource_t(client, &server::detail::zwp_xwayland_keyboard_grab_v1_interface, id, version)
8762 {
8763  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8764 }
8765 
8766 zwp_xwayland_keyboard_grab_v1_t::zwp_xwayland_keyboard_grab_v1_t(const resource_t &resource)
8767  : resource_t(resource)
8768 {
8769  set_events(std::shared_ptr<resource_t::events_base_t>(new events_t), dispatcher);
8770 }
8771 
8772 const std::string zwp_xwayland_keyboard_grab_v1_t::interface_name = "zwp_xwayland_keyboard_grab_v1";
8773 
8774 zwp_xwayland_keyboard_grab_v1_t::operator zwp_xwayland_keyboard_grab_v1*() const
8775 {
8776  return reinterpret_cast<zwp_xwayland_keyboard_grab_v1*> (c_ptr());
8777 }
8778 
8780 {
8781  return std::static_pointer_cast<events_t>(get_events())->destroy;
8782 }
8783 
8784 
8785 int zwp_xwayland_keyboard_grab_v1_t::dispatcher(int opcode, const std::vector<any>& args, const std::shared_ptr<resource_t::events_base_t>& e)
8786 {
8787  std::shared_ptr<events_t> events = std::static_pointer_cast<events_t>(e);
8788  switch(opcode)
8789  {
8790  case 0:
8791  if(events->destroy) events->destroy();
8792  break;
8793  }
8794  return 0;
8795 }
8796 
8797 
compositor output region
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
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
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
std::function< void()> & on_destroy()
destroy the confined pointer object
std::function< void(region_t)> & on_set_region()
set a new confine region
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
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
std::function< void(uint32_t, uint32_t, uint32_t, keyboard_key_state, uint32_t)> & on_keysym()
keysym
std::function< void(int32_t)> & on_preedit_cursor()
pre-edit cursor
std::function< void(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t)> & on_modifiers()
forward modifiers event
std::function< void(int32_t, int32_t)> & on_cursor_position()
set cursor to a new position
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
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
void deactivate(zwp_input_method_context_v1_t const &context, bool post=true)
deactivate event
std::function< void(zwp_input_panel_surface_v1_t, surface_t)> & on_get_input_panel_surface()
std::function< void(zwp_input_timestamps_v1_t, keyboard_t)> & on_get_keyboard_timestamps()
subscribe to high-resolution keyboard timestamp events
std::function< void(zwp_input_timestamps_v1_t, touch_t)> & on_get_touch_timestamps()
subscribe to high-resolution touch timestamp events
std::function< void(zwp_input_timestamps_v1_t, pointer_t)> & on_get_pointer_timestamps()
subscribe to high-resolution pointer timestamp events
std::function< void()> & on_destroy()
destroy the input timestamps manager object
std::function< void()> & on_destroy()
destroy the input timestamps object
void timestamp(uint32_t tv_sec_hi, uint32_t tv_sec_lo, uint32_t tv_nsec, bool post=true)
high-resolution timestamp event
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
std::function< void()> & on_destroy()
destroy the keyboard shortcuts inhibitor object
parameters for creating a dmabuf-based wl_buffer
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
void immediate_release(bool post=true)
release buffer immediately
void fenced_release(int fence, bool post=true)
release buffer with fence
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
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
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
std::function< void(zwp_linux_dmabuf_feedback_v1_t, surface_t)> & on_get_surface_feedback()
get feedback for a surface
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
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.
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.
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
void unlocked(bool post=true)
lock deactivation event
void locked(bool post=true)
lock activation event
std::function< void(region_t)> & on_set_region()
set a new lock region
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.
std::function< void()> & on_destroy()
destroy the pinch gesture object
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
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
void begin(uint32_t serial, uint32_t time, surface_t const &surface, uint32_t fingers, bool post=true)
multi-finger swipe begin
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
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
void offer(std::string const &mime_type, bool post=true)
advertise offered mime type
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
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
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
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
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
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
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
void modes(uint32_t modes, bool post=true)
mode-switch ability announced
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 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
std::function< void()> & on_destroy()
destroy the strip object
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
std::function< void(uint32_t, std::string, uint32_t)> & on_set_feedback()
set compositor feedback
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 done(bool post=true)
pad description event sequence complete
void buttons(uint32_t buttons, bool post=true)
buttons announced
void enter(uint32_t serial, zwp_tablet_v2_t const &tablet, surface_t const &surface, bool post=true)
enter event
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
std::function< void()> & on_destroy()
release the memory for the tablet seat object
controller object for graphic tablet devices of a seat
std::function< void()> & on_destroy()
release the memory for the tablet seat object
void tablet_added(bool post=true)
new device notification
void pad_added(bool post=true)
new pad notification
void tool_added(bool post=true)
a new tool has been used with a tablet
void slider(int32_t position, bool post=true)
Slider position change event.
void post_role(std::string const &msg)
Post error: given wl_surface has another role.
void hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo, bool post=true)
hardware id notification in Wacom's format
void done(bool post=true)
tool description events sequence complete
void button(uint32_t serial, uint32_t button, zwp_tablet_tool_v1_button_state const &state, bool post=true)
button event
void up(bool post=true)
tablet tool is no longer making contact
void rotation(int32_t degrees, bool post=true)
z-rotation change event
std::function< void()> & on_destroy()
destroy the tool object
std::function< void(uint32_t, surface_t, int32_t, int32_t)> & on_set_cursor()
set the tablet tool's surface
void down(uint32_t serial, bool post=true)
tablet tool is making contact
void distance(uint32_t distance, bool post=true)
distance change event
void frame(uint32_t time, bool post=true)
frame event
void tilt(int32_t tilt_x, int32_t tilt_y, bool post=true)
tilt change event
void proximity_out(bool post=true)
proximity out event
void wheel(int32_t degrees, int32_t clicks, bool post=true)
Wheel delta event.
void pressure(uint32_t pressure, bool post=true)
pressure change event
void type(zwp_tablet_tool_v1_type const &tool_type, bool post=true)
tool type
void hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo, bool post=true)
unique hardware serial number of the tool
void motion(double x, double y, bool post=true)
motion event
void proximity_in(uint32_t serial, zwp_tablet_v1_t const &tablet, surface_t const &surface, bool post=true)
proximity in event
void capability(zwp_tablet_tool_v1_capability const &capability, bool post=true)
tool capability notification
void tilt(double tilt_x, double tilt_y, bool post=true)
tilt change event
void type(zwp_tablet_tool_v2_type const &tool_type, bool post=true)
tool type
void done(bool post=true)
tool description events sequence complete
void proximity_out(bool post=true)
proximity out event
void wheel(double degrees, int32_t clicks, bool post=true)
Wheel delta event.
void rotation(double degrees, bool post=true)
z-rotation change event
void capability(zwp_tablet_tool_v2_capability const &capability, bool post=true)
tool capability notification
void hardware_serial(uint32_t hardware_serial_hi, uint32_t hardware_serial_lo, bool post=true)
unique hardware serial number of the tool
void frame(uint32_t time, bool post=true)
frame event
std::function< void(uint32_t, surface_t, int32_t, int32_t)> & on_set_cursor()
set the tablet tool's surface
void hardware_id_wacom(uint32_t hardware_id_hi, uint32_t hardware_id_lo, bool post=true)
hardware id notification in Wacom's format
void button(uint32_t serial, uint32_t button, zwp_tablet_tool_v2_button_state const &state, bool post=true)
button event
std::function< void()> & on_destroy()
destroy the tool object
void motion(double x, double y, bool post=true)
motion event
void post_role(std::string const &msg)
Post error: given wl_surface has another role.
void pressure(uint32_t pressure, bool post=true)
pressure change event
void up(bool post=true)
tablet tool is no longer making contact
void distance(uint32_t distance, bool post=true)
distance change event
void down(uint32_t serial, bool post=true)
tablet tool is making contact
void slider(int32_t position, bool post=true)
Slider position change event.
void proximity_in(uint32_t serial, zwp_tablet_v2_t const &tablet, surface_t const &surface, bool post=true)
proximity in event
void path(std::string const &path, bool post=true)
path to the device
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
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
void path(std::string const &path, bool post=true)
path to the device
void done(bool post=true)
tablet description events sequence complete
void name(std::string const &name, bool post=true)
tablet device name
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
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
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
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
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
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
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
std::function< void(zwp_text_input_v3_content_hint, zwp_text_input_v3_content_purpose)> & on_set_content_type()
set content purpose and hint
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
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
std::function< void()> & on_destroy()
destroy the grabbed keyboard object
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
void handle(std::string const &handle, bool post=true)
the exported surface handle
std::function< void()> & on_destroy()
unexport the exported surface
std::function< void()> & on_destroy()
unexport the exported surface
void handle(std::string const &handle, bool post=true)
the exported surface handle
std::function< void(zxdg_exported_v1_t, surface_t)> & on_export()
export a surface
std::function< void()> & on_destroy()
destroy the xdg_exporter object
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
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
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
std::function< void(zxdg_imported_v1_t, std::string)> & on_import()
import a surface
std::function< void()> & on_destroy()
destroy the xdg_importer object
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
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
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 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
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
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
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.
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
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:
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.
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
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< 2147483649, 23 > auto_capitalization
switch to uppercase letters at the start of a sentence
static const wayland::detail::bitfield< 2147483649, 23 > auto_correction
suggest word corrections
static const wayland::detail::bitfield< 2147483649, 23 > _default
auto completion, correction and capitalization
static const wayland::detail::bitfield< 2147483649, 23 > none
no special behaviour
static const wayland::detail::bitfield< 2147483649, 23 > multiline
the text input is multiline
static const wayland::detail::bitfield< 2147483649, 23 > sensitive_data
typed text should not be stored
static const wayland::detail::bitfield< 2147483649, 23 > password
hidden and sensitive text
static const wayland::detail::bitfield< 2147483649, 23 > titlecase
prefer casing for titles and headings (can be language dependent)
static const wayland::detail::bitfield< 2147483649, 23 > lowercase
prefer lowercase letters
static const wayland::detail::bitfield< 2147483649, 23 > uppercase
prefer uppercase letters
static const wayland::detail::bitfield< 2147483649, 23 > auto_completion
suggest word completions
static const wayland::detail::bitfield< 2147483649, 23 > latin
just latin characters should be entered
static const wayland::detail::bitfield< 2147483649, 23 > hidden_text
characters should be hidden
static const wayland::detail::bitfield< 2147483649, 28 > hidden_text
characters should be hidden
static const wayland::detail::bitfield< 2147483649, 28 > auto_capitalization
switch to uppercase letters at the start of a sentence
static const wayland::detail::bitfield< 2147483649, 28 > completion
suggest word completions
static const wayland::detail::bitfield< 2147483649, 28 > titlecase
prefer casing for titles and headings (can be language dependent)
static const wayland::detail::bitfield< 2147483649, 28 > latin
just Latin characters should be entered
static const wayland::detail::bitfield< 2147483649, 28 > sensitive_data
typed text should not be stored
static const wayland::detail::bitfield< 2147483649, 28 > multiline
the text input is multiline
static const wayland::detail::bitfield< 2147483649, 28 > spellcheck
suggest word corrections
static const wayland::detail::bitfield< 2147483649, 28 > lowercase
prefer lowercase letters
static const wayland::detail::bitfield< 2147483649, 28 > uppercase
prefer uppercase letters
static const wayland::detail::bitfield< 2147483649, 28 > none
no special behavior