| ofs | hex dump | ascii |
|---|
| 0000 | 56 69 6d 9f 55 6e 44 6f e5 00 03 38 e0 9b 1c be 09 bc 31 ff 06 c7 3a 10 48 0b b0 87 ea 78 6f 43 | Vim.UnDo...8......1...:.H....xoC |
| 0020 | 5d ca c3 e1 d0 d9 47 e3 6a e0 40 00 00 01 2f 00 00 00 44 20 20 20 20 20 20 20 20 73 74 72 75 63 | ].....G.j.@.../...D........struc |
| 0040 | 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 20 2a 77 6d 5f 62 61 73 65 20 3d 20 77 6c 5f 72 65 67 69 | t.xdg_wm_base.*wm_base.=.wl_regi |
| 0060 | 73 74 72 79 5f 62 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d 00 00 00 cf 00 00 00 44 00 | stry_bind(registry,.nam.......D. |
| 0080 | 00 00 01 00 00 00 08 00 00 00 00 00 00 00 08 00 00 00 08 00 00 00 08 00 00 00 00 6a 63 49 9b 04 | ...........................jcI.. |
| 00a0 | 01 00 00 00 04 00 5f d0 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 | ......_......................... |
| 00c0 | 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 00e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0220 | 00 00 00 00 00 00 00 00 00 00 6a 63 46 d0 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 02 00 | ..........jcF................... |
| 0240 | 00 00 00 00 00 01 45 00 00 00 15 23 69 6e 63 6c 75 64 65 20 22 70 6c 61 74 66 6f 72 6d 2e 68 22 | ......E....#include."platform.h" |
| 0260 | 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 63 6c 69 65 6e 74 2e 68 3e 00 | ....#include.<wayland-client.h>. |
| 0280 | 00 00 18 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 65 67 6c 2e 68 3e 00 00 00 14 23 | ...#include.<wayland-egl.h>....# |
| 02a0 | 69 6e 63 6c 75 64 65 20 3c 45 47 4c 2f 65 67 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 | include.<EGL/egl.h>....#include. |
| 02c0 | 3c 47 4c 2f 67 6c 2e 68 3e 00 00 00 20 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e | <GL/gl.h>....#include.<xkbcommon |
| 02e0 | 2f 78 6b 62 63 6f 6d 6d 6f 6e 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f | /xkbcommon.h>...(#include.<xkbco |
| 0300 | 6d 6d 6f 6e 2f 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 15 23 69 6e | mmon/xkbcommon-keysyms.h>....#in |
| 0320 | 63 6c 75 64 65 20 3c 73 79 73 2f 6d 6d 61 6e 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c | clude.<sys/mman.h>....#include.< |
| 0340 | 75 6e 69 73 74 64 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e | unistd.h>....#include.<stdlib.h> |
| 0360 | 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 2e 68 3e 00 00 00 26 23 69 6e 63 6c | ....#include.<string.h>...&#incl |
| 0380 | 75 64 65 20 22 78 64 67 2d 73 68 65 6c 6c 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 | ude."xdg-shell-client-protocol.h |
| 03a0 | 22 00 00 00 39 23 69 6e 63 6c 75 64 65 20 22 72 65 6c 61 74 69 76 65 2d 70 6f 69 6e 74 65 72 2d | "...9#include."relative-pointer- |
| 03c0 | 75 6e 73 74 61 62 6c 65 2d 76 31 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 | unstable-v1-client-protocol.h".. |
| 03e0 | 00 3c 23 69 6e 63 6c 75 64 65 20 22 70 6f 69 6e 74 65 72 2d 63 6f 6e 73 74 72 61 69 6e 74 73 2d | .<#include."pointer-constraints- |
| 0400 | 75 6e 73 74 61 62 6c 65 2d 76 31 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 | unstable-v1-client-protocol.h".. |
| 0420 | 00 00 00 00 00 10 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 7b 00 00 00 1f 20 20 20 20 73 74 | ......typedef.struct.{........st |
| 0440 | 72 75 63 74 20 77 6c 5f 64 69 73 70 6c 61 79 20 2a 64 69 73 70 6c 61 79 3b 00 00 00 21 20 20 20 | ruct.wl_display.*display;...!... |
| 0460 | 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 65 67 69 73 74 72 79 3b 00 00 | .struct.wl_registry.*registry;.. |
| 0480 | 00 25 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 20 2a 63 6f 6d 70 | .%....struct.wl_compositor.*comp |
| 04a0 | 6f 73 69 74 6f 72 3b 00 00 00 19 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 20 2a 73 | ositor;........struct.wl_seat.*s |
| 04c0 | 65 61 74 3b 00 00 00 20 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 20 2a | eat;........struct.xdg_wm_base.* |
| 04e0 | 77 6d 5f 62 61 73 65 3b 00 00 00 38 20 20 20 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 | wm_base;...8....struct.zwp_relat |
| 0500 | 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 20 2a 72 65 6c 5f 70 74 72 5f | ive_pointer_manager_v1.*rel_ptr_ |
| 0520 | 6d 67 72 3b 00 00 00 37 20 20 20 20 73 74 72 75 63 74 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 | mgr;...7....struct.zwp_pointer_c |
| 0540 | 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 20 2a 70 74 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 3b 00 | onstraints_v1.*ptr_constraints;. |
| 0560 | 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 | .......struct.wl_surface.*surfac |
| 0580 | 65 3b 00 00 00 24 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 20 2a 78 64 | e;...$....struct.xdg_surface.*xd |
| 05a0 | 67 5f 73 75 72 66 61 63 65 3b 00 00 00 26 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 | g_surface;...&....struct.xdg_top |
| 05c0 | 6c 65 76 65 6c 20 2a 78 64 67 5f 74 6f 70 6c 65 76 65 6c 3b 00 00 00 1f 20 20 20 20 73 74 72 75 | level.*xdg_toplevel;........stru |
| 05e0 | 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 3b 00 00 00 21 20 20 20 20 73 | ct.wl_pointer.*pointer;...!....s |
| 0600 | 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 3b 00 00 00 30 | truct.wl_keyboard.*keyboard;...0 |
| 0620 | 20 20 20 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f | ....struct.zwp_relative_pointer_ |
| 0640 | 76 31 20 2a 72 65 6c 5f 70 6f 69 6e 74 65 72 3b 00 00 00 31 20 20 20 20 73 74 72 75 63 74 20 7a | v1.*rel_pointer;...1....struct.z |
| 0660 | 77 70 5f 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a 6c 6f 63 6b 65 64 5f 70 6f 69 | wp_locked_pointer_v1.*locked_poi |
| 0680 | 6e 74 65 72 3b 00 00 00 25 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f | nter;...%....struct.wl_egl_windo |
| 06a0 | 77 20 2a 65 67 6c 5f 77 69 6e 64 6f 77 3b 00 00 00 1b 20 20 20 20 45 47 4c 44 69 73 70 6c 61 79 | w.*egl_window;........EGLDisplay |
| 06c0 | 20 65 67 6c 5f 64 69 73 70 6c 61 79 3b 00 00 00 1b 20 20 20 20 45 47 4c 43 6f 6e 74 65 78 74 20 | .egl_display;........EGLContext. |
| 06e0 | 65 67 6c 5f 63 6f 6e 74 65 78 74 3b 00 00 00 1b 20 20 20 20 45 47 4c 53 75 72 66 61 63 65 20 65 | egl_context;........EGLSurface.e |
| 0700 | 67 6c 5f 73 75 72 66 61 63 65 3b 00 00 00 20 20 20 20 20 73 74 72 75 63 74 20 78 6b 62 5f 63 6f | gl_surface;........struct.xkb_co |
| 0720 | 6e 74 65 78 74 20 2a 78 6b 62 5f 63 74 78 3b 00 00 00 22 20 20 20 20 73 74 72 75 63 74 20 78 6b | ntext.*xkb_ctx;..."....struct.xk |
| 0740 | 62 5f 6b 65 79 6d 61 70 20 2a 78 6b 62 5f 6b 65 79 6d 61 70 3b 00 00 00 20 20 20 20 20 73 74 72 | b_keymap.*xkb_keymap;........str |
| 0760 | 75 63 74 20 78 6b 62 5f 73 74 61 74 65 20 2a 78 6b 62 5f 73 74 61 74 65 3b 00 00 00 13 20 20 20 | uct.xkb_state.*xkb_state;....... |
| 0780 | 20 69 6e 74 20 63 6f 6e 66 69 67 75 72 65 64 3b 00 00 00 13 20 20 20 20 50 6c 61 74 66 6f 72 6d | .int.configured;........Platform |
| 07a0 | 20 2a 70 6c 61 74 3b 00 00 00 0c 7d 20 57 6c 42 61 63 6b 65 6e 64 3b 00 00 00 00 00 00 00 2b 73 | .*plat;....}.WlBackend;.......+s |
| 07c0 | 74 61 74 69 63 20 69 6e 74 20 6b 65 79 73 79 6d 5f 74 6f 5f 6b 65 79 28 78 6b 62 5f 6b 65 79 73 | tatic.int.keysym_to_key(xkb_keys |
| 07e0 | 79 6d 5f 74 20 6b 73 29 20 7b 00 00 00 11 20 20 20 20 73 77 69 74 63 68 20 28 6b 73 29 20 7b 00 | ym_t.ks).{........switch.(ks).{. |
| 0800 | 00 00 35 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 77 3a 20 63 61 73 65 20 | ..5........case.XKB_KEY_w:.case. |
| 0820 | 58 4b 42 5f 4b 45 59 5f 57 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 57 3b 00 00 00 35 20 20 20 20 | XKB_KEY_W:.return.KEY_W;...5.... |
| 0840 | 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 61 3a 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 | ....case.XKB_KEY_a:.case.XKB_KEY |
| 0860 | 5f 41 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 41 3b 00 00 00 35 20 20 20 20 20 20 20 20 63 61 73 | _A:.return.KEY_A;...5........cas |
| 0880 | 65 20 58 4b 42 5f 4b 45 59 5f 73 3a 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 53 3a 20 72 65 74 | e.XKB_KEY_s:.case.XKB_KEY_S:.ret |
| 08a0 | 75 72 6e 20 4b 45 59 5f 53 3b 00 00 00 35 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b | urn.KEY_S;...5........case.XKB_K |
| 08c0 | 45 59 5f 64 3a 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 44 3a 20 72 65 74 75 72 6e 20 4b 45 59 | EY_d:.case.XKB_KEY_D:.return.KEY |
| 08e0 | 5f 44 3b 00 00 00 2d 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 73 70 61 63 | _D;...-........case.XKB_KEY_spac |
| 0900 | 65 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 53 50 41 43 45 3b 00 00 00 2c 20 20 20 20 20 20 20 20 | e:.return.KEY_SPACE;...,........ |
| 0920 | 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 45 73 63 61 70 65 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f | case.XKB_KEY_Escape:.return.KEY_ |
| 0940 | 45 53 43 3b 00 00 00 25 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 31 3a 20 | ESC;...%........case.XKB_KEY_1:. |
| 0960 | 72 65 74 75 72 6e 20 4b 45 59 5f 31 3b 00 00 00 25 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b | return.KEY_1;...%........case.XK |
| 0980 | 42 5f 4b 45 59 5f 32 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 32 3b 00 00 00 25 20 20 20 20 20 20 | B_KEY_2:.return.KEY_2;...%...... |
| 09a0 | 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 33 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 33 3b 00 | ..case.XKB_KEY_3:.return.KEY_3;. |
| 09c0 | 00 00 1b 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 3a 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 | ...........default:.return.-1;.. |
| 09e0 | 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 54 73 74 61 74 69 63 20 76 6f 69 64 20 | ......}....}.......Tstatic.void. |
| 0a00 | 77 6d 5f 62 61 73 65 5f 70 69 6e 67 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 | wm_base_ping(void.*data,.struct. |
| 0a20 | 78 64 67 5f 77 6d 5f 62 61 73 65 20 2a 77 6d 5f 62 61 73 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 | xdg_wm_base.*wm_base,.uint32_t.s |
| 0a40 | 65 72 69 61 6c 29 20 7b 00 00 00 0f 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 26 20 | erial).{........(void)data;...&. |
| 0a60 | 20 20 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 70 6f 6e 67 28 77 6d 5f 62 61 73 65 2c 20 73 65 72 | ...xdg_wm_base_pong(wm_base,.ser |
| 0a80 | 69 61 6c 29 3b 00 00 00 01 7d 00 00 00 4d 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 | ial);....}...Mstatic.const.struc |
| 0aa0 | 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 6c 69 73 74 65 6e 65 72 20 77 6d 5f 62 61 73 65 5f 6c | t.xdg_wm_base_listener.wm_base_l |
| 0ac0 | 69 73 74 65 6e 65 72 20 3d 20 7b 20 77 6d 5f 62 61 73 65 5f 70 69 6e 67 20 7d 3b 00 00 00 00 00 | istener.=.{.wm_base_ping.};..... |
| 0ae0 | 00 00 58 73 74 61 74 69 63 20 76 6f 69 64 20 78 64 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 | ..Xstatic.void.xdg_surface_confi |
| 0b00 | 67 75 72 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 | gure(void.*data,.struct.xdg_surf |
| 0b20 | 61 63 65 20 2a 78 73 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 29 20 7b 00 00 00 18 20 | ace.*xs,.uint32_t.serial).{..... |
| 0b40 | 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 2a 20 20 20 20 78 | ...WlBackend.*b.=.data;...*....x |
| 0b60 | 64 67 5f 73 75 72 66 61 63 65 5f 61 63 6b 5f 63 6f 6e 66 69 67 75 72 65 28 78 73 2c 20 73 65 72 | dg_surface_ack_configure(xs,.ser |
| 0b80 | 69 61 6c 29 3b 00 00 00 16 20 20 20 20 62 2d 3e 63 6f 6e 66 69 67 75 72 65 64 20 3d 20 31 3b 00 | ial);........b->configured.=.1;. |
| 0ba0 | 00 00 01 7d 00 00 00 5b 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 67 5f | ...}...[static.const.struct.xdg_ |
| 0bc0 | 73 75 72 66 61 63 65 5f 6c 69 73 74 65 6e 65 72 20 78 64 67 5f 73 75 72 66 61 63 65 5f 6c 69 73 | surface_listener.xdg_surface_lis |
| 0be0 | 74 65 6e 65 72 5f 20 3d 20 7b 20 78 64 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 67 75 72 65 | tener_.=.{.xdg_surface_configure |
| 0c00 | 20 7d 3b 00 00 00 00 00 00 00 43 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f | .};.......Cstatic.void.toplevel_ |
| 0c20 | 63 6f 6e 66 69 67 75 72 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 | configure(void.*data,.struct.xdg |
| 0c40 | 5f 74 6f 70 6c 65 76 65 6c 20 2a 74 6c 2c 00 00 00 59 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | _toplevel.*tl,...Y.............. |
| 0c60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 33 32 5f 74 20 77 69 64 74 68 2c | ..................int32_t.width, |
| 0c80 | 20 69 6e 74 33 32 5f 74 20 68 65 69 67 68 74 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 72 72 61 79 | .int32_t.height,.struct.wl_array |
| 0ca0 | 20 2a 73 74 61 74 65 73 29 20 7b 00 00 00 1b 20 20 20 20 28 76 6f 69 64 29 74 6c 3b 20 28 76 6f | .*states).{........(void)tl;.(vo |
| 0cc0 | 69 64 29 73 74 61 74 65 73 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d | id)states;........WlBackend.*b.= |
| 0ce0 | 20 64 61 74 61 3b 00 00 00 22 20 20 20 20 69 66 20 28 77 69 64 74 68 20 3e 20 30 20 26 26 20 68 | .data;..."....if.(width.>.0.&&.h |
| 0d00 | 65 69 67 68 74 20 3e 20 30 29 20 7b 00 00 00 25 20 20 20 20 20 20 20 20 62 2d 3e 70 6c 61 74 2d | eight.>.0).{...%........b->plat- |
| 0d20 | 3e 73 74 61 74 65 2e 77 69 64 74 68 20 3d 20 77 69 64 74 68 3b 00 00 00 27 20 20 20 20 20 20 20 | >state.width.=.width;...'....... |
| 0d40 | 20 62 2d 3e 70 6c 61 74 2d 3e 73 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 65 69 67 68 74 3b | .b->plat->state.height.=.height; |
| 0d60 | 00 00 00 54 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 20 77 | ...T........if.(b->egl_window).w |
| 0d80 | 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 72 65 73 69 7a 65 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f | l_egl_window_resize(b->egl_windo |
| 0da0 | 77 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 30 2c 20 30 29 3b 00 00 00 05 20 20 20 20 | w,.width,.height,.0,.0);........ |
| 0dc0 | 7d 00 00 00 01 7d 00 00 00 41 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f 63 | }....}...Astatic.void.toplevel_c |
| 0de0 | 6c 6f 73 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c | lose(void.*data,.struct.xdg_topl |
| 0e00 | 65 76 65 6c 20 2a 74 6c 29 20 7b 00 00 00 0d 20 20 20 20 28 76 6f 69 64 29 74 6c 3b 00 00 00 18 | evel.*tl).{........(void)tl;.... |
| 0e20 | 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 24 20 20 20 20 | ....WlBackend.*b.=.data;...$.... |
| 0e40 | 62 2d 3e 70 6c 61 74 2d 3e 73 74 61 74 65 2e 73 68 6f 75 6c 64 5f 63 6c 6f 73 65 20 3d 20 31 3b | b->plat->state.should_close.=.1; |
| 0e60 | 00 00 00 01 7d 00 00 00 65 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 67 | ....}...estatic.const.struct.xdg |
| 0e80 | 5f 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 6e 65 72 20 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 | _toplevel_listener.toplevel_list |
| 0ea0 | 65 6e 65 72 20 3d 20 7b 20 74 6f 70 6c 65 76 65 6c 5f 63 6f 6e 66 69 67 75 72 65 2c 20 74 6f 70 | ener.=.{.toplevel_configure,.top |
| 0ec0 | 6c 65 76 65 6c 5f 63 6c 6f 73 65 20 7d 3b 00 00 00 00 00 00 00 4e 73 74 61 74 69 63 20 76 6f 69 | level_close.};.......Nstatic.voi |
| 0ee0 | 64 20 70 6f 69 6e 74 65 72 5f 65 6e 74 65 72 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 | d.pointer_enter(void.*data,.stru |
| 0f00 | 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 74 72 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 | ct.wl_pointer.*ptr,.uint32_t.ser |
| 0f20 | 69 61 6c 2c 00 00 00 51 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ial,...Q........................ |
| 0f40 | 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 2c 20 77 6c 5f 66 | ...struct.wl_surface.*surf,.wl_f |
| 0f60 | 69 78 65 64 5f 74 20 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 79 29 20 7b 00 00 00 2d 20 20 20 | ixed_t.x,.wl_fixed_t.y).{...-... |
| 0f80 | 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 73 75 72 66 3b 20 28 76 6f 69 64 29 78 | .(void)data;.(void)surf;.(void)x |
| 0fa0 | 3b 20 28 76 6f 69 64 29 79 3b 00 00 00 33 20 20 20 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 73 65 74 | ;.(void)y;...3....wl_pointer_set |
| 0fc0 | 5f 63 75 72 73 6f 72 28 70 74 72 2c 20 73 65 72 69 61 6c 2c 20 4e 55 4c 4c 2c 20 30 2c 20 30 29 | _cursor(ptr,.serial,.NULL,.0,.0) |
| 0fe0 | 3b 00 00 00 01 7d 00 00 00 5f 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6c 65 | ;....}..._static.void.pointer_le |
| 1000 | 61 76 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a | ave(void.*d,.struct.wl_pointer.* |
| 1020 | 70 2c 20 75 69 6e 74 33 32 5f 74 20 73 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 | p,.uint32_t.s,.struct.wl_surface |
| 1040 | 20 2a 73 75 72 66 29 20 7b 00 00 00 2a 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 | .*surf).{...*....(void)d;.(void) |
| 1060 | 70 3b 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 64 29 73 75 72 66 3b 00 00 00 01 7d 00 00 00 63 | p;.(void)s;.(void)surf;....}...c |
| 1080 | 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 20 | static.void.pointer_motion(void. |
| 10a0 | 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 32 | *d,.struct.wl_pointer.*p,.uint32 |
| 10c0 | 5f 74 20 74 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 79 | _t.t,.wl_fixed_t.x,.wl_fixed_t.y |
| 10e0 | 29 20 7b 00 00 00 30 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 6f | ).{...0....(void)d;.(void)p;.(vo |
| 1100 | 69 64 29 74 3b 20 28 76 6f 69 64 29 78 3b 20 28 76 6f 69 64 29 79 3b 00 00 00 01 7d 00 00 00 5e | id)t;.(void)x;.(void)y;....}...^ |
| 1120 | 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 28 76 6f 69 64 20 | static.void.pointer_button(void. |
| 1140 | 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 74 72 2c 20 75 | *data,.struct.wl_pointer.*ptr,.u |
| 1160 | 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 00 00 | int32_t.serial,.uint32_t.time,.. |
| 1180 | 00 3e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 | .>............................ui |
| 11a0 | 6e 74 33 32 5f 74 20 62 75 74 74 6f 6e 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b | nt32_t.button,.uint32_t.state).{ |
| 11c0 | 00 00 00 28 20 20 20 20 28 76 6f 69 64 29 70 74 72 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b | ...(....(void)ptr;.(void)serial; |
| 11e0 | 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 | .(void)time;........WlBackend.*b |
| 1200 | 20 3d 20 64 61 74 61 3b 00 00 00 3d 20 20 20 20 69 6e 74 20 70 72 65 73 73 65 64 20 3d 20 28 73 | .=.data;...=....int.pressed.=.(s |
| 1220 | 74 61 74 65 20 3d 3d 20 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f | tate.==.WL_POINTER_BUTTON_STATE_ |
| 1240 | 50 52 45 53 53 45 44 29 3b 00 00 00 3d 20 20 20 20 69 66 20 28 62 75 74 74 6f 6e 20 3d 3d 20 30 | PRESSED);...=....if.(button.==.0 |
| 1260 | 78 31 31 30 29 20 62 2d 3e 70 6c 61 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 6c 65 66 74 20 | x110).b->plat->state.mouse_left. |
| 1280 | 3d 20 70 72 65 73 73 65 64 3b 00 00 00 3e 20 20 20 20 69 66 20 28 62 75 74 74 6f 6e 20 3d 3d 20 | =.pressed;...>....if.(button.==. |
| 12a0 | 30 78 31 31 31 29 20 62 2d 3e 70 6c 61 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 72 69 67 68 | 0x111).b->plat->state.mouse_righ |
| 12c0 | 74 20 3d 20 70 72 65 73 73 65 64 3b 00 00 00 01 7d 00 00 00 5f 73 74 61 74 69 63 20 76 6f 69 64 | t.=.pressed;....}..._static.void |
| 12e0 | 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c | .pointer_axis(void.*d,.struct.wl |
| 1300 | 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 74 2c 20 75 69 6e 74 33 32 5f | _pointer.*p,.uint32_t.t,.uint32_ |
| 1320 | 74 20 61 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 76 29 20 7b 00 00 00 30 20 20 20 20 28 76 6f 69 | t.a,.wl_fixed_t.v).{...0....(voi |
| 1340 | 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 6f 69 64 29 74 3b 20 28 76 6f 69 64 29 61 3b 20 | d)d;.(void)p;.(void)t;.(void)a;. |
| 1360 | 28 76 6f 69 64 29 76 3b 00 00 00 01 7d 00 00 00 4e 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 | (void)v;....}...Nstatic.void.poi |
| 1380 | 6e 74 65 72 5f 66 72 61 6d 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f | nter_frame(void.*d,.struct.wl_po |
| 13a0 | 69 6e 74 65 72 20 2a 70 29 20 7b 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 7d 00 | inter.*p).{.(void)d;.(void)p;.}. |
| 13c0 | 00 00 69 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 73 6f 75 72 | ..istatic.void.pointer_axis_sour |
| 13e0 | 63 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 | ce(void.*d,.struct.wl_pointer.*p |
| 1400 | 2c 20 75 69 6e 74 33 32 5f 74 20 73 29 20 7b 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 | ,.uint32_t.s).{.(void)d;.(void)p |
| 1420 | 3b 20 28 76 6f 69 64 29 73 3b 20 7d 00 00 00 56 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e | ;.(void)s;.}...Vstatic.void.poin |
| 1440 | 74 65 72 5f 61 78 69 73 5f 73 74 6f 70 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c | ter_axis_stop(void.*d,.struct.wl |
| 1460 | 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 74 2c 20 75 69 6e 74 33 32 5f | _pointer.*p,.uint32_t.t,.uint32_ |
| 1480 | 74 20 61 29 20 7b 00 00 00 27 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 | t.a).{...'....(void)d;.(void)p;. |
| 14a0 | 28 76 6f 69 64 29 74 3b 20 28 76 6f 69 64 29 61 3b 00 00 00 01 7d 00 00 00 5c 73 74 61 74 69 63 | (void)t;.(void)a;....}...\static |
| 14c0 | 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 64 69 73 63 72 65 74 65 28 76 6f 69 64 | .void.pointer_axis_discrete(void |
| 14e0 | 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 | .*d,.struct.wl_pointer.*p,.uint3 |
| 1500 | 32 5f 74 20 61 2c 20 69 6e 74 33 32 5f 74 20 64 69 73 63 29 20 7b 00 00 00 2a 20 20 20 20 28 76 | 2_t.a,.int32_t.disc).{...*....(v |
| 1520 | 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 6f 69 64 29 61 3b 20 28 76 6f 69 64 29 64 | oid)d;.(void)p;.(void)a;.(void)d |
| 1540 | 69 73 63 3b 00 00 00 01 7d 00 00 00 3c 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 | isc;....}...<static.const.struct |
| 1560 | 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 70 6f 69 6e 74 65 72 5f 6c 69 73 | .wl_pointer_listener.pointer_lis |
| 1580 | 74 65 6e 65 72 20 3d 20 7b 00 00 00 4f 20 20 20 20 70 6f 69 6e 74 65 72 5f 65 6e 74 65 72 2c 20 | tener.=.{...O....pointer_enter,. |
| 15a0 | 70 6f 69 6e 74 65 72 5f 6c 65 61 76 65 2c 20 70 6f 69 6e 74 65 72 5f 6d 6f 74 69 6f 6e 2c 20 70 | pointer_leave,.pointer_motion,.p |
| 15c0 | 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 2c 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 2c 00 00 00 50 | ointer_button,.pointer_axis,...P |
| 15e0 | 20 20 20 20 70 6f 69 6e 74 65 72 5f 66 72 61 6d 65 2c 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f | ....pointer_frame,.pointer_axis_ |
| 1600 | 73 6f 75 72 63 65 2c 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 73 74 6f 70 2c 20 70 6f 69 6e 74 | source,.pointer_axis_stop,.point |
| 1620 | 65 72 5f 61 78 69 73 5f 64 69 73 63 72 65 74 65 00 00 00 02 7d 3b 00 00 00 00 00 00 00 4b 73 74 | er_axis_discrete....};.......Kst |
| 1640 | 61 74 69 63 20 76 6f 69 64 20 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 20 2a | atic.void.relative_motion(void.* |
| 1660 | 64 61 74 61 2c 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 | data,.struct.zwp_relative_pointe |
| 1680 | 72 5f 76 31 20 2a 72 70 2c 00 00 00 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | r_v1.*rp,...T................... |
| 16a0 | 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 68 69 2c 20 75 69 6e 74 33 32 5f 74 20 | ..........uint32_t.hi,.uint32_t. |
| 16c0 | 6c 6f 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 79 | lo,.wl_fixed_t.dx,.wl_fixed_t.dy |
| 16e0 | 2c 00 00 00 40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ,...@........................... |
| 1700 | 20 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 5f 75 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 79 | ..wl_fixed_t.dx_u,.wl_fixed_t.dy |
| 1720 | 5f 75 29 20 7b 00 00 00 35 20 20 20 20 28 76 6f 69 64 29 72 70 3b 20 28 76 6f 69 64 29 68 69 3b | _u).{...5....(void)rp;.(void)hi; |
| 1740 | 20 28 76 6f 69 64 29 6c 6f 3b 20 28 76 6f 69 64 29 64 78 3b 20 28 76 6f 69 64 29 64 79 3b 00 00 | .(void)lo;.(void)dx;.(void)dy;.. |
| 1760 | 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 38 20 20 | ......WlBackend.*b.=.data;...8.. |
| 1780 | 20 20 62 2d 3e 70 6c 61 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 78 20 2b 3d 20 77 6c 5f | ..b->plat->state.mouse_dx.+=.wl_ |
| 17a0 | 66 69 78 65 64 5f 74 6f 5f 64 6f 75 62 6c 65 28 64 78 5f 75 29 3b 00 00 00 38 20 20 20 20 62 2d | fixed_to_double(dx_u);...8....b- |
| 17c0 | 3e 70 6c 61 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 79 20 2b 3d 20 77 6c 5f 66 69 78 65 | >plat->state.mouse_dy.+=.wl_fixe |
| 17e0 | 64 5f 74 6f 5f 64 6f 75 62 6c 65 28 64 79 5f 75 29 3b 00 00 00 01 7d 00 00 00 60 73 74 61 74 69 | d_to_double(dy_u);....}...`stati |
| 1800 | 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e | c.const.struct.zwp_relative_poin |
| 1820 | 74 65 72 5f 76 31 5f 6c 69 73 74 65 6e 65 72 20 72 65 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 | ter_v1_listener.rel_pointer_list |
| 1840 | 65 6e 65 72 20 3d 20 7b 20 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 20 7d 3b 00 00 00 00 00 | ener.=.{.relative_motion.};..... |
| 1860 | 00 00 50 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 28 76 | ..Pstatic.void.keyboard_keymap(v |
| 1880 | 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b | oid.*data,.struct.wl_keyboard.*k |
| 18a0 | 62 2c 20 75 69 6e 74 33 32 5f 74 20 66 6f 72 6d 61 74 2c 00 00 00 39 20 20 20 20 20 20 20 20 20 | b,.uint32_t.format,...9......... |
| 18c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 33 32 5f 74 20 66 64 2c 20 | ....................int32_t.fd,. |
| 18e0 | 75 69 6e 74 33 32 5f 74 20 73 69 7a 65 29 20 7b 00 00 00 0d 20 20 20 20 28 76 6f 69 64 29 6b 62 | uint32_t.size).{........(void)kb |
| 1900 | 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 | ;........WlBackend.*b.=.data;... |
| 1920 | 4a 20 20 20 20 69 66 20 28 66 6f 72 6d 61 74 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b | J....if.(format.!=.WL_KEYBOARD_K |
| 1940 | 45 59 4d 41 50 5f 46 4f 52 4d 41 54 5f 58 4b 42 5f 56 31 29 20 7b 20 63 6c 6f 73 65 28 66 64 29 | EYMAP_FORMAT_XKB_V1).{.close(fd) |
| 1960 | 3b 20 72 65 74 75 72 6e 3b 20 7d 00 00 00 44 20 20 20 20 63 68 61 72 20 2a 6d 61 70 5f 73 74 72 | ;.return;.}...D....char.*map_str |
| 1980 | 20 3d 20 6d 6d 61 70 28 4e 55 4c 4c 2c 20 73 69 7a 65 2c 20 50 52 4f 54 5f 52 45 41 44 2c 20 4d | .=.mmap(NULL,.size,.PROT_READ,.M |
| 19a0 | 41 50 5f 50 52 49 56 41 54 45 2c 20 66 64 2c 20 30 29 3b 00 00 00 20 20 20 20 20 69 66 20 28 6d | AP_PRIVATE,.fd,.0);........if.(m |
| 19c0 | 61 70 5f 73 74 72 20 21 3d 20 4d 41 50 5f 46 41 49 4c 45 44 29 20 7b 00 00 00 3f 20 20 20 20 20 | ap_str.!=.MAP_FAILED).{...?..... |
| 19e0 | 20 20 20 73 74 72 75 63 74 20 78 6b 62 5f 6b 65 79 6d 61 70 20 2a 6b 65 79 6d 61 70 20 3d 20 78 | ...struct.xkb_keymap.*keymap.=.x |
| 1a00 | 6b 62 5f 6b 65 79 6d 61 70 5f 6e 65 77 5f 66 72 6f 6d 5f 73 74 72 69 6e 67 28 00 00 00 59 20 20 | kb_keymap_new_from_string(...Y.. |
| 1a20 | 20 20 20 20 20 20 20 20 20 20 62 2d 3e 78 6b 62 5f 63 74 78 2c 20 6d 61 70 5f 73 74 72 2c 20 58 | ..........b->xkb_ctx,.map_str,.X |
| 1a40 | 4b 42 5f 4b 45 59 4d 41 50 5f 46 4f 52 4d 41 54 5f 54 45 58 54 5f 56 31 2c 20 58 4b 42 5f 4b 45 | KB_KEYMAP_FORMAT_TEXT_V1,.XKB_KE |
| 1a60 | 59 4d 41 50 5f 43 4f 4d 50 49 4c 45 5f 4e 4f 5f 46 4c 41 47 53 29 3b 00 00 00 1e 20 20 20 20 20 | YMAP_COMPILE_NO_FLAGS);......... |
| 1a80 | 20 20 20 6d 75 6e 6d 61 70 28 6d 61 70 5f 73 74 72 2c 20 73 69 7a 65 29 3b 00 00 00 15 20 20 20 | ...munmap(map_str,.size);....... |
| 1aa0 | 20 20 20 20 20 69 66 20 28 6b 65 79 6d 61 70 29 20 7b 00 00 00 3c 20 20 20 20 20 20 20 20 20 20 | .....if.(keymap).{...<.......... |
| 1ac0 | 20 20 69 66 20 28 62 2d 3e 78 6b 62 5f 73 74 61 74 65 29 20 78 6b 62 5f 73 74 61 74 65 5f 75 6e | ..if.(b->xkb_state).xkb_state_un |
| 1ae0 | 72 65 66 28 62 2d 3e 78 6b 62 5f 73 74 61 74 65 29 3b 00 00 00 3f 20 20 20 20 20 20 20 20 20 20 | ref(b->xkb_state);...?.......... |
| 1b00 | 20 20 69 66 20 28 62 2d 3e 78 6b 62 5f 6b 65 79 6d 61 70 29 20 78 6b 62 5f 6b 65 79 6d 61 70 5f | ..if.(b->xkb_keymap).xkb_keymap_ |
| 1b20 | 75 6e 72 65 66 28 62 2d 3e 78 6b 62 5f 6b 65 79 6d 61 70 29 3b 00 00 00 23 20 20 20 20 20 20 20 | unref(b->xkb_keymap);...#....... |
| 1b40 | 20 20 20 20 20 62 2d 3e 78 6b 62 5f 6b 65 79 6d 61 70 20 3d 20 6b 65 79 6d 61 70 3b 00 00 00 31 | .....b->xkb_keymap.=.keymap;...1 |
| 1b60 | 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 78 6b 62 5f 73 74 61 74 65 20 3d 20 78 6b 62 5f 73 | ............b->xkb_state.=.xkb_s |
| 1b80 | 74 61 74 65 5f 6e 65 77 28 6b 65 79 6d 61 70 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 | tate_new(keymap);............}.. |
| 1ba0 | 00 05 20 20 20 20 7d 00 00 00 0e 20 20 20 20 63 6c 6f 73 65 28 66 64 29 3b 00 00 00 01 7d 00 00 | ......}........close(fd);....}.. |
| 1bc0 | 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 28 76 6f 69 | .Fstatic.void.keyboard_enter(voi |
| 1be0 | 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 2c 20 75 69 6e | d.*d,.struct.wl_keyboard.*k,.uin |
| 1c00 | 74 33 32 5f 74 20 73 2c 00 00 00 4d 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t32_t.s,...M.................... |
| 1c20 | 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 2c | ........struct.wl_surface.*surf, |
| 1c40 | 20 73 74 72 75 63 74 20 77 6c 5f 61 72 72 61 79 20 2a 6b 65 79 73 29 20 7b 00 00 00 36 20 20 20 | .struct.wl_array.*keys).{...6... |
| 1c60 | 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 6b 3b 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 | .(void)d;.(void)k;.(void)s;.(voi |
| 1c80 | 64 29 73 75 72 66 3b 20 28 76 6f 69 64 29 6b 65 79 73 3b 00 00 00 01 7d 00 00 00 61 73 74 61 74 | d)surf;.(void)keys;....}...astat |
| 1ca0 | 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 28 76 6f 69 64 20 2a 64 2c 20 | ic.void.keyboard_leave(void.*d,. |
| 1cc0 | 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 2c 20 75 69 6e 74 33 32 5f 74 20 | struct.wl_keyboard.*k,.uint32_t. |
| 1ce0 | 73 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 29 20 7b 00 00 00 | s,.struct.wl_surface.*surf).{... |
| 1d00 | 2a 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 6b 3b 20 28 76 6f 69 64 29 73 3b 20 | *....(void)d;.(void)k;.(void)s;. |
| 1d20 | 28 76 6f 69 64 29 73 75 72 66 3b 00 00 00 01 7d 00 00 00 5c 73 74 61 74 69 63 20 76 6f 69 64 20 | (void)surf;....}...\static.void. |
| 1d40 | 6b 65 79 62 6f 61 72 64 5f 6b 65 79 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 | keyboard_key(void.*data,.struct. |
| 1d60 | 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 62 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c | wl_keyboard.*kb,.uint32_t.serial |
| 1d80 | 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 00 00 00 39 20 20 20 20 20 20 20 20 20 20 20 20 | ,.uint32_t.time,...9............ |
| 1da0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6b 65 79 2c 20 75 69 6e 74 | ..............uint32_t.key,.uint |
| 1dc0 | 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 27 20 20 20 20 28 76 6f 69 64 29 6b 62 3b 20 28 | 32_t.state).{...'....(void)kb;.( |
| 1de0 | 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 18 20 20 20 20 | void)serial;.(void)time;........ |
| 1e00 | 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 1e 20 20 20 20 69 66 20 28 | WlBackend.*b.=.data;........if.( |
| 1e20 | 21 62 2d 3e 78 6b 62 5f 73 74 61 74 65 29 20 72 65 74 75 72 6e 3b 00 00 00 48 20 20 20 20 78 6b | !b->xkb_state).return;...H....xk |
| 1e40 | 62 5f 6b 65 79 73 79 6d 5f 74 20 73 79 6d 20 3d 20 78 6b 62 5f 73 74 61 74 65 5f 6b 65 79 5f 67 | b_keysym_t.sym.=.xkb_state_key_g |
| 1e60 | 65 74 5f 6f 6e 65 5f 73 79 6d 28 62 2d 3e 78 6b 62 5f 73 74 61 74 65 2c 20 6b 65 79 20 2b 20 38 | et_one_sym(b->xkb_state,.key.+.8 |
| 1e80 | 29 3b 00 00 00 1f 20 20 20 20 69 6e 74 20 6b 20 3d 20 6b 65 79 73 79 6d 5f 74 6f 5f 6b 65 79 28 | );........int.k.=.keysym_to_key( |
| 1ea0 | 73 79 6d 29 3b 00 00 00 52 20 20 20 20 69 66 20 28 6b 20 3e 3d 20 30 29 20 62 2d 3e 70 6c 61 74 | sym);...R....if.(k.>=.0).b->plat |
| 1ec0 | 2d 3e 73 74 61 74 65 2e 6b 65 79 73 5b 6b 5d 20 3d 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 4b | ->state.keys[k].=.(state.==.WL_K |
| 1ee0 | 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 3b 00 00 00 01 7d | EYBOARD_KEY_STATE_PRESSED);....} |
| 1f00 | 00 00 00 53 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 69 65 | ...Sstatic.void.keyboard_modifie |
| 1f20 | 72 73 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 | rs(void.*data,.struct.wl_keyboar |
| 1f40 | 64 20 2a 6b 62 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 00 00 00 5c 20 20 20 20 20 | d.*kb,.uint32_t.serial,...\..... |
| 1f60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 | ...........................uint3 |
| 1f80 | 32 5f 74 20 64 65 70 2c 20 75 69 6e 74 33 32 5f 74 20 6c 61 74 2c 20 75 69 6e 74 33 32 5f 74 20 | 2_t.dep,.uint32_t.lat,.uint32_t. |
| 1fa0 | 6c 6f 63 6b 2c 20 75 69 6e 74 33 32 5f 74 20 67 72 6f 75 70 29 20 7b 00 00 00 1b 20 20 20 20 28 | lock,.uint32_t.group).{........( |
| 1fc0 | 76 6f 69 64 29 6b 62 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 00 00 00 18 20 20 20 20 57 6c | void)kb;.(void)serial;........Wl |
| 1fe0 | 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 57 20 20 20 20 69 66 20 28 62 2d | Backend.*b.=.data;...W....if.(b- |
| 2000 | 3e 78 6b 62 5f 73 74 61 74 65 29 20 78 6b 62 5f 73 74 61 74 65 5f 75 70 64 61 74 65 5f 6d 61 73 | >xkb_state).xkb_state_update_mas |
| 2020 | 6b 28 62 2d 3e 78 6b 62 5f 73 74 61 74 65 2c 20 64 65 70 2c 20 6c 61 74 2c 20 6c 6f 63 6b 2c 20 | k(b->xkb_state,.dep,.lat,.lock,. |
| 2040 | 30 2c 20 30 2c 20 67 72 6f 75 70 29 3b 00 00 00 01 7d 00 00 00 5c 73 74 61 74 69 63 20 76 6f 69 | 0,.0,.group);....}...\static.voi |
| 2060 | 64 20 6b 65 79 62 6f 61 72 64 5f 72 65 70 65 61 74 5f 69 6e 66 6f 28 76 6f 69 64 20 2a 64 2c 20 | d.keyboard_repeat_info(void.*d,. |
| 2080 | 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 2c 20 69 6e 74 33 32 5f 74 20 72 | struct.wl_keyboard.*k,.int32_t.r |
| 20a0 | 2c 20 69 6e 74 33 32 5f 74 20 64 65 6c 61 79 29 20 7b 00 00 00 2b 20 20 20 20 28 76 6f 69 64 29 | ,.int32_t.delay).{...+....(void) |
| 20c0 | 64 3b 20 28 76 6f 69 64 29 6b 3b 20 28 76 6f 69 64 29 72 3b 20 28 76 6f 69 64 29 64 65 6c 61 79 | d;.(void)k;.(void)r;.(void)delay |
| 20e0 | 3b 00 00 00 01 7d 00 00 00 3e 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c | ;....}...>static.const.struct.wl |
| 2100 | 5f 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 20 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 | _keyboard_listener.keyboard_list |
| 2120 | 65 6e 65 72 20 3d 20 7b 00 00 00 42 20 20 20 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 2c | ener.=.{...B....keyboard_keymap, |
| 2140 | 20 6b 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 2c 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 2c | .keyboard_enter,.keyboard_leave, |
| 2160 | 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 2c 00 00 00 2c 20 20 20 20 6b 65 79 62 6f 61 72 64 5f 6d | .keyboard_key,...,....keyboard_m |
| 2180 | 6f 64 69 66 69 65 72 73 2c 20 6b 65 79 62 6f 61 72 64 5f 72 65 70 65 61 74 5f 69 6e 66 6f 00 00 | odifiers,.keyboard_repeat_info.. |
| 21a0 | 00 02 7d 3b 00 00 00 00 00 00 00 50 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 61 74 5f 63 61 70 | ..};.......Pstatic.void.seat_cap |
| 21c0 | 61 62 69 6c 69 74 69 65 73 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f | abilities(void.*data,.struct.wl_ |
| 21e0 | 73 65 61 74 20 2a 73 65 61 74 2c 20 75 69 6e 74 33 32 5f 74 20 63 61 70 73 29 20 7b 00 00 00 18 | seat.*seat,.uint32_t.caps).{.... |
| 2200 | 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 3d 20 20 20 20 | ....WlBackend.*b.=.data;...=.... |
| 2220 | 69 66 20 28 28 63 61 70 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 50 | if.((caps.&.WL_SEAT_CAPABILITY_P |
| 2240 | 4f 49 4e 54 45 52 29 20 26 26 20 21 62 2d 3e 70 6f 69 6e 74 65 72 29 20 7b 00 00 00 2f 20 20 20 | OINTER).&&.!b->pointer).{.../... |
| 2260 | 20 20 20 20 20 62 2d 3e 70 6f 69 6e 74 65 72 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 5f 70 6f | .....b->pointer.=.wl_seat_get_po |
| 2280 | 69 6e 74 65 72 28 73 65 61 74 29 3b 00 00 00 42 20 20 20 20 20 20 20 20 77 6c 5f 70 6f 69 6e 74 | inter(seat);...B........wl_point |
| 22a0 | 65 72 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 70 6f 69 6e 74 65 72 2c 20 26 70 6f 69 | er_add_listener(b->pointer,.&poi |
| 22c0 | 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 1d 20 20 20 20 20 20 20 20 69 66 | nter_listener,.b);............if |
| 22e0 | 20 28 62 2d 3e 72 65 6c 5f 70 74 72 5f 6d 67 72 29 20 7b 00 00 00 52 20 20 20 20 20 20 20 20 20 | .(b->rel_ptr_mgr).{...R......... |
| 2300 | 20 20 20 62 2d 3e 72 65 6c 5f 70 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 | ...b->rel_pointer.=.zwp_relative |
| 2320 | 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 67 65 74 5f 72 65 6c 61 74 69 76 65 | _pointer_manager_v1_get_relative |
| 2340 | 5f 70 6f 69 6e 74 65 72 28 00 00 00 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e | _pointer(...,................b-> |
| 2360 | 72 65 6c 5f 70 74 72 5f 6d 67 72 2c 20 62 2d 3e 70 6f 69 6e 74 65 72 29 3b 00 00 00 5b 20 20 20 | rel_ptr_mgr,.b->pointer);...[... |
| 2380 | 20 20 20 20 20 20 20 20 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 | .........zwp_relative_pointer_v1 |
| 23a0 | 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 72 65 6c 5f 70 6f 69 6e 74 65 72 2c 20 26 72 | _add_listener(b->rel_pointer,.&r |
| 23c0 | 65 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 09 20 20 20 20 | el_pointer_listener,.b);........ |
| 23e0 | 20 20 20 20 7d 00 00 00 2f 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 70 74 72 5f 63 6f 6e 73 | ....}.../........if.(b->ptr_cons |
| 2400 | 74 72 61 69 6e 74 73 20 26 26 20 62 2d 3e 73 75 72 66 61 63 65 29 20 7b 00 00 00 48 20 20 20 20 | traints.&&.b->surface).{...H.... |
| 2420 | 20 20 20 20 20 20 20 20 62 2d 3e 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f | ........b->locked_pointer.=.zwp_ |
| 2440 | 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 6c 6f 63 6b 5f 70 6f 69 6e | pointer_constraints_v1_lock_poin |
| 2460 | 74 65 72 28 00 00 00 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 70 74 72 5f 63 | ter(...A................b->ptr_c |
| 2480 | 6f 6e 73 74 72 61 69 6e 74 73 2c 20 62 2d 3e 73 75 72 66 61 63 65 2c 20 62 2d 3e 70 6f 69 6e 74 | onstraints,.b->surface,.b->point |
| 24a0 | 65 72 2c 20 4e 55 4c 4c 2c 00 00 00 40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5a 57 50 | er,.NULL,...@................ZWP |
| 24c0 | 5f 50 4f 49 4e 54 45 52 5f 43 4f 4e 53 54 52 41 49 4e 54 53 5f 56 31 5f 4c 49 46 45 54 49 4d 45 | _POINTER_CONSTRAINTS_V1_LIFETIME |
| 24e0 | 5f 50 45 52 53 49 53 54 45 4e 54 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 | _PERSISTENT);............}...... |
| 2500 | 20 20 7d 00 00 00 3f 20 20 20 20 69 66 20 28 28 63 61 70 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 | ..}...?....if.((caps.&.WL_SEAT_C |
| 2520 | 41 50 41 42 49 4c 49 54 59 5f 4b 45 59 42 4f 41 52 44 29 20 26 26 20 21 62 2d 3e 6b 65 79 62 6f | APABILITY_KEYBOARD).&&.!b->keybo |
| 2540 | 61 72 64 29 20 7b 00 00 00 31 20 20 20 20 20 20 20 20 62 2d 3e 6b 65 79 62 6f 61 72 64 20 3d 20 | ard).{...1........b->keyboard.=. |
| 2560 | 77 6c 5f 73 65 61 74 5f 67 65 74 5f 6b 65 79 62 6f 61 72 64 28 73 65 61 74 29 3b 00 00 00 45 20 | wl_seat_get_keyboard(seat);...E. |
| 2580 | 20 20 20 20 20 20 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 | .......wl_keyboard_add_listener( |
| 25a0 | 62 2d 3e 6b 65 79 62 6f 61 72 64 2c 20 26 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 2c | b->keyboard,.&keyboard_listener, |
| 25c0 | 20 62 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 45 73 74 61 74 69 63 20 76 6f 69 | .b);........}....}...Estatic.voi |
| 25e0 | 64 20 73 65 61 74 5f 6e 61 6d 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 | d.seat_name(void.*d,.struct.wl_s |
| 2600 | 65 61 74 20 2a 73 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 6e 61 6d 65 29 20 7b 00 00 00 21 20 | eat.*s,.const.char.*name).{...!. |
| 2620 | 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 64 29 6e 61 6d 65 3b | ...(void)d;.(void)s;.(void)name; |
| 2640 | 00 00 00 01 7d 00 00 00 56 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c 5f | ....}...Vstatic.const.struct.wl_ |
| 2660 | 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 20 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 20 | seat_listener.seat_listener.=.{. |
| 2680 | 73 65 61 74 5f 63 61 70 61 62 69 6c 69 74 69 65 73 2c 20 73 65 61 74 5f 6e 61 6d 65 20 7d 3b 00 | seat_capabilities,.seat_name.};. |
| 26a0 | 00 00 00 00 00 00 4f 73 74 61 74 69 63 20 76 6f 69 64 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 | ......Ostatic.void.registry_glob |
| 26c0 | 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 | al(void.*data,.struct.wl_registr |
| 26e0 | 79 20 2a 72 65 67 2c 20 75 69 6e 74 33 32 5f 74 20 6e 61 6d 65 2c 00 00 00 47 20 20 20 20 20 20 | y.*reg,.uint32_t.name,...G...... |
| 2700 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 | .......................const.cha |
| 2720 | 72 20 2a 69 6e 74 65 72 66 61 63 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 65 72 73 69 6f 6e 29 20 | r.*interface,.uint32_t.version). |
| 2740 | 7b 00 00 00 12 20 20 20 20 28 76 6f 69 64 29 76 65 72 73 69 6f 6e 3b 00 00 00 18 20 20 20 20 57 | {........(void)version;........W |
| 2760 | 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 3b 20 20 20 20 69 66 20 28 21 | lBackend.*b.=.data;...;....if.(! |
| 2780 | 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f | strcmp(interface,.wl_compositor_ |
| 27a0 | 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b 00 00 00 51 20 20 20 20 20 20 20 20 62 2d | interface.name)).{...Q........b- |
| 27c0 | 3e 63 6f 6d 70 6f 73 69 74 6f 72 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 | >compositor.=.wl_registry_bind(r |
| 27e0 | 65 67 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 69 6e 74 65 72 66 61 | eg,.name,.&wl_compositor_interfa |
| 2800 | 63 65 2c 20 34 29 3b 00 00 00 3c 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 6d | ce,.4);...<....}.else.if.(!strcm |
| 2820 | 70 28 69 6e 74 65 72 66 61 63 65 2c 20 77 6c 5f 73 65 61 74 5f 69 6e 74 65 72 66 61 63 65 2e 6e | p(interface,.wl_seat_interface.n |
| 2840 | 61 6d 65 29 29 20 7b 00 00 00 45 20 20 20 20 20 20 20 20 62 2d 3e 73 65 61 74 20 3d 20 77 6c 5f | ame)).{...E........b->seat.=.wl_ |
| 2860 | 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 73 65 61 | registry_bind(reg,.name,.&wl_sea |
| 2880 | 74 5f 69 6e 74 65 72 66 61 63 65 2c 20 35 29 3b 00 00 00 39 20 20 20 20 20 20 20 20 77 6c 5f 73 | t_interface,.5);...9........wl_s |
| 28a0 | 65 61 74 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 73 65 61 74 2c 20 26 73 65 61 74 5f | eat_add_listener(b->seat,.&seat_ |
| 28c0 | 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 40 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 | listener,.b);...@....}.else.if.( |
| 28e0 | 21 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 69 | !strcmp(interface,.xdg_wm_base_i |
| 2900 | 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b 00 00 00 4c 20 20 20 20 20 20 20 20 62 2d 3e | nterface.name)).{...L........b-> |
| 2920 | 77 6d 5f 62 61 73 65 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 2c 20 | wm_base.=.wl_registry_bind(reg,. |
| 2940 | 6e 61 6d 65 2c 20 26 78 64 67 5f 77 6d 5f 62 61 73 65 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 | name,.&xdg_wm_base_interface,.1) |
| 2960 | 3b 00 00 00 43 20 20 20 20 20 20 20 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 61 64 64 5f 6c 69 73 | ;...C........xdg_wm_base_add_lis |
| 2980 | 74 65 6e 65 72 28 62 2d 3e 77 6d 5f 62 61 73 65 2c 20 26 77 6d 5f 62 61 73 65 5f 6c 69 73 74 65 | tener(b->wm_base,.&wm_base_liste |
| 29a0 | 6e 65 72 2c 20 62 29 3b 00 00 00 54 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 | ner,.b);...T....}.else.if.(!strc |
| 29c0 | 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 | mp(interface,.zwp_relative_point |
| 29e0 | 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b | er_manager_v1_interface.name)).{ |
| 2a00 | 00 00 00 64 20 20 20 20 20 20 20 20 62 2d 3e 72 65 6c 5f 70 74 72 5f 6d 67 72 20 3d 20 77 6c 5f | ...d........b->rel_ptr_mgr.=.wl_ |
| 2a20 | 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 72 65 | registry_bind(reg,.name,.&zwp_re |
| 2a40 | 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 69 6e 74 65 72 66 | lative_pointer_manager_v1_interf |
| 2a60 | 61 63 65 2c 20 31 29 3b 00 00 00 4f 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 | ace,.1);...O....}.else.if.(!strc |
| 2a80 | 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 | mp(interface,.zwp_pointer_constr |
| 2aa0 | 61 69 6e 74 73 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b 00 00 00 63 20 | aints_v1_interface.name)).{...c. |
| 2ac0 | 20 20 20 20 20 20 20 62 2d 3e 70 74 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 77 6c 5f 72 | .......b->ptr_constraints.=.wl_r |
| 2ae0 | 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 70 6f 69 | egistry_bind(reg,.name,.&zwp_poi |
| 2b00 | 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 | nter_constraints_v1_interface,.1 |
| 2b20 | 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 53 73 74 61 74 69 63 20 76 6f 69 64 20 | );........}....}...Sstatic.void. |
| 2b40 | 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d 6f 76 65 28 76 6f 69 64 20 2a 64 2c 20 | registry_global_remove(void.*d,. |
| 2b60 | 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 2c 20 75 69 6e 74 33 32 5f 74 20 | struct.wl_registry.*r,.uint32_t. |
| 2b80 | 6e 61 6d 65 29 20 7b 00 00 00 21 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 72 3b | name).{...!....(void)d;.(void)r; |
| 2ba0 | 20 28 76 6f 69 64 29 6e 61 6d 65 3b 00 00 00 01 7d 00 00 00 69 73 74 61 74 69 63 20 63 6f 6e 73 | .(void)name;....}...istatic.cons |
| 2bc0 | 74 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 20 72 65 | t.struct.wl_registry_listener.re |
| 2be0 | 67 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 20 72 65 67 69 73 74 72 79 5f 67 6c 6f | gistry_listener.=.{.registry_glo |
| 2c00 | 62 61 6c 2c 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d 6f 76 65 20 7d 3b 00 00 | bal,.registry_global_remove.};.. |
| 2c20 | 00 00 00 00 00 49 69 6e 74 20 70 6c 61 74 66 6f 72 6d 5f 77 61 79 6c 61 6e 64 5f 69 6e 69 74 28 | .....Iint.platform_wayland_init( |
| 2c40 | 50 6c 61 74 66 6f 72 6d 20 2a 70 2c 20 69 6e 74 20 77 2c 20 69 6e 74 20 68 2c 20 63 6f 6e 73 74 | Platform.*p,.int.w,.int.h,.const |
| 2c60 | 20 63 68 61 72 20 2a 74 69 74 6c 65 29 20 7b 00 00 00 30 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 | .char.*title).{...0....WlBackend |
| 2c80 | 20 2a 62 20 3d 20 63 61 6c 6c 6f 63 28 31 2c 20 73 69 7a 65 6f 66 28 57 6c 42 61 63 6b 65 6e 64 | .*b.=.calloc(1,.sizeof(WlBackend |
| 2ca0 | 29 29 3b 00 00 00 10 20 20 20 20 62 2d 3e 70 6c 61 74 20 3d 20 70 3b 00 00 00 13 20 20 20 20 70 | ));........b->plat.=.p;........p |
| 2cc0 | 2d 3e 62 61 63 6b 65 6e 64 20 3d 20 62 3b 00 00 00 00 00 00 00 2a 20 20 20 20 62 2d 3e 64 69 73 | ->backend.=.b;.......*....b->dis |
| 2ce0 | 70 6c 61 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 6f 6e 6e 65 63 74 28 4e 55 4c 4c 29 3b | play.=.wl_display_connect(NULL); |
| 2d00 | 00 00 00 2b 20 20 20 20 69 66 20 28 21 62 2d 3e 64 69 73 70 6c 61 79 29 20 7b 20 66 72 65 65 28 | ...+....if.(!b->display).{.free( |
| 2d20 | 62 29 3b 20 72 65 74 75 72 6e 20 30 3b 20 7d 00 00 00 00 00 00 00 37 20 20 20 20 62 2d 3e 78 6b | b);.return.0;.}.......7....b->xk |
| 2d40 | 62 5f 63 74 78 20 3d 20 78 6b 62 5f 63 6f 6e 74 65 78 74 5f 6e 65 77 28 58 4b 42 5f 43 4f 4e 54 | b_ctx.=.xkb_context_new(XKB_CONT |
| 2d60 | 45 58 54 5f 4e 4f 5f 46 4c 41 47 53 29 3b 00 00 00 00 00 00 00 36 20 20 20 20 62 2d 3e 72 65 67 | EXT_NO_FLAGS);.......6....b->reg |
| 2d80 | 69 73 74 72 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 72 65 67 69 73 74 72 79 28 | istry.=.wl_display_get_registry( |
| 2da0 | 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 41 20 20 20 20 77 6c 5f 72 65 67 69 73 74 72 79 5f | b->display);...A....wl_registry_ |
| 2dc0 | 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 72 65 67 69 73 74 72 79 2c 20 26 72 65 67 69 73 | add_listener(b->registry,.®is |
| 2de0 | 74 72 79 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 25 20 20 20 20 77 6c 5f 64 69 73 70 | try_listener,.b);...%....wl_disp |
| 2e00 | 6c 61 79 5f 72 6f 75 6e 64 74 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 25 20 20 | lay_roundtrip(b->display);...%.. |
| 2e20 | 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 6f 75 6e 64 74 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 | ..wl_display_roundtrip(b->displa |
| 2e40 | 79 29 3b 00 00 00 00 00 00 00 28 20 20 20 20 69 66 20 28 21 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f | y);.......(....if.(!b->composito |
| 2e60 | 72 20 7c 7c 20 21 62 2d 3e 77 6d 5f 62 61 73 65 29 20 7b 00 00 00 2a 20 20 20 20 20 20 20 20 77 | r.||.!b->wm_base).{...*........w |
| 2e80 | 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 63 6f 6e 6e 65 63 74 28 62 2d 3e 64 69 73 70 6c 61 79 29 | l_display_disconnect(b->display) |
| 2ea0 | 3b 00 00 00 10 20 20 20 20 20 20 20 20 66 72 65 65 28 62 29 3b 00 00 00 11 20 20 20 20 20 20 20 | ;............free(b);........... |
| 2ec0 | 20 72 65 74 75 72 6e 20 30 3b 00 00 00 05 20 20 20 20 7d 00 00 00 00 00 00 00 3d 20 20 20 20 62 | .return.0;........}.......=....b |
| 2ee0 | 2d 3e 73 75 72 66 61 63 65 20 3d 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 63 72 65 61 74 65 | ->surface.=.wl_compositor_create |
| 2f00 | 5f 73 75 72 66 61 63 65 28 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 29 3b 00 00 00 49 20 20 20 20 | _surface(b->compositor);...I.... |
| 2f20 | 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 20 3d 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 67 65 74 | b->xdg_surface.=.xdg_wm_base_get |
| 2f40 | 5f 78 64 67 5f 73 75 72 66 61 63 65 28 62 2d 3e 77 6d 5f 62 61 73 65 2c 20 62 2d 3e 73 75 72 66 | _xdg_surface(b->wm_base,.b->surf |
| 2f60 | 61 63 65 29 3b 00 00 00 48 20 20 20 20 78 64 67 5f 73 75 72 66 61 63 65 5f 61 64 64 5f 6c 69 73 | ace);...H....xdg_surface_add_lis |
| 2f80 | 74 65 6e 65 72 28 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 2c 20 26 78 64 67 5f 73 75 72 66 61 | tener(b->xdg_surface,.&xdg_surfa |
| 2fa0 | 63 65 5f 6c 69 73 74 65 6e 65 72 5f 2c 20 62 29 3b 00 00 00 3f 20 20 20 20 62 2d 3e 78 64 67 5f | ce_listener_,.b);...?....b->xdg_ |
| 2fc0 | 74 6f 70 6c 65 76 65 6c 20 3d 20 78 64 67 5f 73 75 72 66 61 63 65 5f 67 65 74 5f 74 6f 70 6c 65 | toplevel.=.xdg_surface_get_tople |
| 2fe0 | 76 65 6c 28 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 29 3b 00 00 00 46 20 20 20 20 78 64 67 5f | vel(b->xdg_surface);...F....xdg_ |
| 3000 | 74 6f 70 6c 65 76 65 6c 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 78 64 67 5f 74 6f 70 | toplevel_add_listener(b->xdg_top |
| 3020 | 6c 65 76 65 6c 2c 20 26 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 | level,.&toplevel_listener,.b);.. |
| 3040 | 00 33 20 20 20 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 5f 73 65 74 5f 74 69 74 6c 65 28 62 2d 3e | .3....xdg_toplevel_set_title(b-> |
| 3060 | 78 64 67 5f 74 6f 70 6c 65 76 65 6c 2c 20 74 69 74 6c 65 29 3b 00 00 00 22 20 20 20 20 77 6c 5f | xdg_toplevel,.title);..."....wl_ |
| 3080 | 73 75 72 66 61 63 65 5f 63 6f 6d 6d 69 74 28 62 2d 3e 73 75 72 66 61 63 65 29 3b 00 00 00 00 00 | surface_commit(b->surface);..... |
| 30a0 | 00 00 3b 20 20 20 20 77 68 69 6c 65 20 28 21 62 2d 3e 63 6f 6e 66 69 67 75 72 65 64 29 20 77 6c | ..;....while.(!b->configured).wl |
| 30c0 | 5f 64 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 | _display_dispatch(b->display);.. |
| 30e0 | 00 00 00 00 00 3b 20 20 20 20 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 20 3d 20 77 6c 5f 65 67 6c | .....;....b->egl_window.=.wl_egl |
| 3100 | 5f 77 69 6e 64 6f 77 5f 63 72 65 61 74 65 28 62 2d 3e 73 75 72 66 61 63 65 2c 20 77 2c 20 68 29 | _window_create(b->surface,.w,.h) |
| 3120 | 3b 00 00 00 00 00 00 00 45 20 20 20 20 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 20 3d 20 65 67 | ;.......E....b->egl_display.=.eg |
| 3140 | 6c 47 65 74 44 69 73 70 6c 61 79 28 28 45 47 4c 4e 61 74 69 76 65 44 69 73 70 6c 61 79 54 79 70 | lGetDisplay((EGLNativeDisplayTyp |
| 3160 | 65 29 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 2e 20 20 20 20 65 67 6c 49 6e 69 74 69 61 6c | e)b->display);........eglInitial |
| 3180 | 69 7a 65 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b | ize(b->egl_display,.NULL,.NULL); |
| 31a0 | 00 00 00 1f 20 20 20 20 65 67 6c 42 69 6e 64 41 50 49 28 45 47 4c 5f 4f 50 45 4e 47 4c 5f 41 50 | ........eglBindAPI(EGL_OPENGL_AP |
| 31c0 | 49 29 3b 00 00 00 00 00 00 00 1c 20 20 20 20 45 47 4c 69 6e 74 20 63 66 67 5f 61 74 74 72 69 62 | I);............EGLint.cfg_attrib |
| 31e0 | 73 5b 5d 20 3d 20 7b 00 00 00 29 20 20 20 20 20 20 20 20 45 47 4c 5f 53 55 52 46 41 43 45 5f 54 | s[].=.{...)........EGL_SURFACE_T |
| 3200 | 59 50 45 2c 20 45 47 4c 5f 57 49 4e 44 4f 57 5f 42 49 54 2c 00 00 00 3d 20 20 20 20 20 20 20 20 | YPE,.EGL_WINDOW_BIT,...=........ |
| 3220 | 45 47 4c 5f 52 45 44 5f 53 49 5a 45 2c 20 38 2c 20 45 47 4c 5f 47 52 45 45 4e 5f 53 49 5a 45 2c | EGL_RED_SIZE,.8,.EGL_GREEN_SIZE, |
| 3240 | 20 38 2c 20 45 47 4c 5f 42 4c 55 45 5f 53 49 5a 45 2c 20 38 2c 00 00 00 1b 20 20 20 20 20 20 20 | .8,.EGL_BLUE_SIZE,.8,........... |
| 3260 | 20 45 47 4c 5f 44 45 50 54 48 5f 53 49 5a 45 2c 20 32 34 2c 00 00 00 2c 20 20 20 20 20 20 20 20 | .EGL_DEPTH_SIZE,.24,...,........ |
| 3280 | 45 47 4c 5f 52 45 4e 44 45 52 41 42 4c 45 5f 54 59 50 45 2c 20 45 47 4c 5f 4f 50 45 4e 47 4c 5f | EGL_RENDERABLE_TYPE,.EGL_OPENGL_ |
| 32a0 | 42 49 54 2c 00 00 00 10 20 20 20 20 20 20 20 20 45 47 4c 5f 4e 4f 4e 45 00 00 00 06 20 20 20 20 | BIT,............EGL_NONE........ |
| 32c0 | 7d 3b 00 00 00 15 20 20 20 20 45 47 4c 43 6f 6e 66 69 67 20 63 6f 6e 66 69 67 3b 00 00 00 16 20 | };........EGLConfig.config;..... |
| 32e0 | 20 20 20 45 47 4c 69 6e 74 20 6e 75 6d 5f 63 6f 6e 66 69 67 3b 00 00 00 4a 20 20 20 20 65 67 6c | ...EGLint.num_config;...J....egl |
| 3300 | 43 68 6f 6f 73 65 43 6f 6e 66 69 67 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 63 66 67 | ChooseConfig(b->egl_display,.cfg |
| 3320 | 5f 61 74 74 72 69 62 73 2c 20 26 63 6f 6e 66 69 67 2c 20 31 2c 20 26 6e 75 6d 5f 63 6f 6e 66 69 | _attribs,.&config,.1,.&num_confi |
| 3340 | 67 29 3b 00 00 00 00 00 00 00 43 20 20 20 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 20 3d 20 | g);.......C....b->egl_surface.=. |
| 3360 | 65 67 6c 43 72 65 61 74 65 57 69 6e 64 6f 77 53 75 72 66 61 63 65 28 62 2d 3e 65 67 6c 5f 64 69 | eglCreateWindowSurface(b->egl_di |
| 3380 | 73 70 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 00 00 00 57 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | splay,.config,...W.............. |
| 33a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | ...............................( |
| 33c0 | 45 47 4c 4e 61 74 69 76 65 57 69 6e 64 6f 77 54 79 70 65 29 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f | EGLNativeWindowType)b->egl_windo |
| 33e0 | 77 2c 20 4e 55 4c 4c 29 3b 00 00 00 00 00 00 00 1c 20 20 20 20 45 47 4c 69 6e 74 20 63 74 78 5f | w,.NULL);............EGLint.ctx_ |
| 3400 | 61 74 74 72 69 62 73 5b 5d 20 3d 20 7b 00 00 00 25 20 20 20 20 20 20 20 20 45 47 4c 5f 43 4f 4e | attribs[].=.{...%........EGL_CON |
| 3420 | 54 45 58 54 5f 4d 41 4a 4f 52 5f 56 45 52 53 49 4f 4e 2c 20 32 2c 00 00 00 25 20 20 20 20 20 20 | TEXT_MAJOR_VERSION,.2,...%...... |
| 3440 | 20 20 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4d 49 4e 4f 52 5f 56 45 52 53 49 4f 4e 2c 20 31 2c 00 | ..EGL_CONTEXT_MINOR_VERSION,.1,. |
| 3460 | 00 00 56 20 20 20 20 20 20 20 20 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4f 50 45 4e 47 4c 5f 50 52 | ..V........EGL_CONTEXT_OPENGL_PR |
| 3480 | 4f 46 49 4c 45 5f 4d 41 53 4b 2c 20 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4f 50 45 4e 47 4c 5f 43 | OFILE_MASK,.EGL_CONTEXT_OPENGL_C |
| 34a0 | 4f 4d 50 41 54 49 42 49 4c 49 54 59 5f 50 52 4f 46 49 4c 45 5f 42 49 54 2c 00 00 00 10 20 20 20 | OMPATIBILITY_PROFILE_BIT,....... |
| 34c0 | 20 20 20 20 20 45 47 4c 5f 4e 4f 4e 45 00 00 00 06 20 20 20 20 7d 3b 00 00 00 5b 20 20 20 20 62 | .....EGL_NONE........};...[....b |
| 34e0 | 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 20 3d 20 65 67 6c 43 72 65 61 74 65 43 6f 6e 74 65 78 74 | ->egl_context.=.eglCreateContext |
| 3500 | 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 20 45 47 4c 5f 4e 4f 5f | (b->egl_display,.config,.EGL_NO_ |
| 3520 | 43 4f 4e 54 45 58 54 2c 20 63 74 78 5f 61 74 74 72 69 62 73 29 3b 00 00 00 53 20 20 20 20 65 67 | CONTEXT,.ctx_attribs);...S....eg |
| 3540 | 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e | lMakeCurrent(b->egl_display,.b-> |
| 3560 | 65 67 6c 5f 73 75 72 66 61 63 65 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 2c 20 62 2d 3e | egl_surface,.b->egl_surface,.b-> |
| 3580 | 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 27 20 20 20 20 65 67 6c 53 77 61 70 49 6e 74 65 | egl_context);...'....eglSwapInte |
| 35a0 | 72 76 61 6c 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 31 29 3b 00 00 00 00 00 00 00 17 | rval(b->egl_display,.1);........ |
| 35c0 | 20 20 20 20 70 2d 3e 73 74 61 74 65 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 18 20 20 20 20 70 | ....p->state.width.=.w;........p |
| 35e0 | 2d 3e 73 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 00 00 00 00 25 20 20 20 20 77 | ->state.height.=.h;.......%....w |
| 3600 | 6c 5f 64 69 73 70 6c 61 79 5f 72 6f 75 6e 64 74 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b | l_display_roundtrip(b->display); |
| 3620 | 00 00 00 00 00 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 31 3b 00 00 00 01 7d 00 00 00 00 00 00 | ............return.1;....}...... |
| 3640 | 00 29 76 6f 69 64 20 70 6c 61 74 66 6f 72 6d 5f 77 61 79 6c 61 6e 64 5f 70 6f 6c 6c 28 50 6c 61 | .)void.platform_wayland_poll(Pla |
| 3660 | 74 66 6f 72 6d 20 2a 70 29 20 7b 00 00 00 1e 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 | tform.*p).{........WlBackend.*b. |
| 3680 | 3d 20 70 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 1a 20 20 20 20 70 2d 3e 73 74 61 74 65 2e 6d 6f | =.p->backend;........p->state.mo |
| 36a0 | 75 73 65 5f 64 78 20 3d 20 30 3b 00 00 00 1a 20 20 20 20 70 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 | use_dx.=.0;........p->state.mous |
| 36c0 | 65 5f 64 79 20 3d 20 30 3b 00 00 00 2c 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 70 | e_dy.=.0;...,....wl_display_disp |
| 36e0 | 61 74 63 68 5f 70 65 6e 64 69 6e 67 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 21 20 20 20 | atch_pending(b->display);...!... |
| 3700 | 20 77 6c 5f 64 69 73 70 6c 61 79 5f 66 6c 75 73 68 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 | .wl_display_flush(b->display);.. |
| 3720 | 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 70 6c 61 74 66 6f 72 6d 5f 77 61 79 6c 61 6e 64 | ..}.......)void.platform_wayland |
| 3740 | 5f 73 77 61 70 28 50 6c 61 74 66 6f 72 6d 20 2a 70 29 20 7b 00 00 00 1e 20 20 20 20 57 6c 42 61 | _swap(Platform.*p).{........WlBa |
| 3760 | 63 6b 65 6e 64 20 2a 62 20 3d 20 70 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 33 20 20 20 20 65 67 | ckend.*b.=.p->backend;...3....eg |
| 3780 | 6c 53 77 61 70 42 75 66 66 65 72 73 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e | lSwapBuffers(b->egl_display,.b-> |
| 37a0 | 65 67 6c 5f 73 75 72 66 61 63 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2c 76 6f 69 64 20 70 | egl_surface);....}.......,void.p |
| 37c0 | 6c 61 74 66 6f 72 6d 5f 77 61 79 6c 61 6e 64 5f 64 65 73 74 72 6f 79 28 50 6c 61 74 66 6f 72 6d | latform_wayland_destroy(Platform |
| 37e0 | 20 2a 70 29 20 7b 00 00 00 1e 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 70 2d 3e | .*p).{........WlBackend.*b.=.p-> |
| 3800 | 62 61 63 6b 65 6e 64 3b 00 00 00 4c 20 20 20 20 69 66 20 28 62 2d 3e 6c 6f 63 6b 65 64 5f 70 6f | backend;...L....if.(b->locked_po |
| 3820 | 69 6e 74 65 72 29 20 7a 77 70 5f 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 64 65 73 | inter).zwp_locked_pointer_v1_des |
| 3840 | 74 72 6f 79 28 62 2d 3e 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 29 3b 00 00 00 48 20 20 20 20 | troy(b->locked_pointer);...H.... |
| 3860 | 69 66 20 28 62 2d 3e 72 65 6c 5f 70 6f 69 6e 74 65 72 29 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 | if.(b->rel_pointer).zwp_relative |
| 3880 | 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 64 65 73 74 72 6f 79 28 62 2d 3e 72 65 6c 5f 70 6f 69 6e 74 | _pointer_v1_destroy(b->rel_point |
| 38a0 | 65 72 29 3b 00 00 00 53 20 20 20 20 65 67 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e 65 67 | er);...S....eglMakeCurrent(b->eg |
| 38c0 | 6c 5f 64 69 73 70 6c 61 79 2c 20 45 47 4c 5f 4e 4f 5f 53 55 52 46 41 43 45 2c 20 45 47 4c 5f 4e | l_display,.EGL_NO_SURFACE,.EGL_N |
| 38e0 | 4f 5f 53 55 52 46 41 43 45 2c 20 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 29 3b 00 00 00 36 20 | O_SURFACE,.EGL_NO_CONTEXT);...6. |
| 3900 | 20 20 20 65 67 6c 44 65 73 74 72 6f 79 53 75 72 66 61 63 65 28 62 2d 3e 65 67 6c 5f 64 69 73 70 | ...eglDestroySurface(b->egl_disp |
| 3920 | 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 29 3b 00 00 00 36 20 20 20 20 65 67 6c | lay,.b->egl_surface);...6....egl |
| 3940 | 44 65 73 74 72 6f 79 43 6f 6e 74 65 78 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 | DestroyContext(b->egl_display,.b |
| 3960 | 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 29 20 20 20 20 77 6c 5f 65 67 6c 5f 77 69 | ->egl_context);...)....wl_egl_wi |
| 3980 | 6e 64 6f 77 5f 64 65 73 74 72 6f 79 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 3b 00 00 00 2a | ndow_destroy(b->egl_window);...* |
| 39a0 | 20 20 20 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 5f 64 65 73 74 72 6f 79 28 62 2d 3e 78 64 67 5f | ....xdg_toplevel_destroy(b->xdg_ |
| 39c0 | 74 6f 70 6c 65 76 65 6c 29 3b 00 00 00 28 20 20 20 20 78 64 67 5f 73 75 72 66 61 63 65 5f 64 65 | toplevel);...(....xdg_surface_de |
| 39e0 | 73 74 72 6f 79 28 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 29 3b 00 00 00 23 20 20 20 20 77 6c | stroy(b->xdg_surface);...#....wl |
| 3a00 | 5f 73 75 72 66 61 63 65 5f 64 65 73 74 72 6f 79 28 62 2d 3e 73 75 72 66 61 63 65 29 3b 00 00 00 | _surface_destroy(b->surface);... |
| 3a20 | 26 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 63 6f 6e 6e 65 63 74 28 62 2d 3e 64 69 | &....wl_display_disconnect(b->di |
| 3a40 | 73 70 6c 61 79 29 3b 00 00 00 0c 20 20 20 20 66 72 65 65 28 62 29 3b 00 00 00 01 7d 35 81 f5 18 | splay);........free(b);....}5... |
| 3a60 | 00 00 00 00 00 00 00 00 00 00 00 00 45 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 | ............E................... |
| 3a80 | 00 00 00 00 46 34 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 01 00 00 00 03 | ....F4..............5._......... |
| 3aa0 | 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 03 00 00 | ................................ |
| 3ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 63 46 d3 04 01 | ..........................jcF... |
| 3c20 | 00 00 00 01 00 f5 18 00 00 01 1f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 33 20 20 20 20 65 | ..........................3....e |
| 3c40 | 67 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d | glMakeCurrent(b->egl_display,.b- |
| 3c60 | 3e 65 67 6c 5f 73 75 72 66 61 63 65 2c 20 f5 18 00 00 01 20 00 00 00 00 00 00 00 00 00 00 00 00 | >egl_surface,................... |
| 3c80 | f5 18 00 00 00 bf 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 44 20 20 20 20 20 20 20 20 20 20 | .....................D.......... |
| 3ca0 | 20 20 62 2d 3e 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f 70 6f 69 6e 74 65 | ..b->locked_pointer.=.zwp_pointe |
| 3cc0 | 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 6c 6f 63 6b 5f 70 6f 69 6e f5 18 00 00 00 c0 | r_constraints_v1_lock_poin...... |
| 3ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 6c 00 00 00 00 00 00 00 00 00 00 00 01 00 00 | .................l.............. |
| 3d00 | 00 03 73 74 61 f5 18 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 | ..sta.....m..................... |
| 3d20 | 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 35 | ...............................5 |
| 3d40 | 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6c 00 00 00 03 00 00 00 00 | .......................l........ |
| 3d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f9 0f 00 00 00 00 00 00 f5 18 00 00 00 00 6c 00 00 | .............................l.. |
| 3d80 | 00 03 00 00 00 00 00 00 00 00 00 00 00 53 00 00 00 44 00 00 00 f9 0f 00 00 00 00 00 00 00 00 00 | .............S...D.............. |
| 3da0 | 00 00 00 00 00 ff 0f 00 00 00 00 00 00 f5 18 00 00 00 00 bf 00 00 00 44 00 00 00 00 00 00 00 00 | .......................D........ |
| 3dc0 | 00 00 00 60 00 00 00 33 00 00 00 f8 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 0f 00 00 00 | ...`...3........................ |
| 3de0 | 00 00 00 f5 18 00 00 00 00 1f 01 00 00 33 00 00 00 00 00 00 00 00 00 00 00 25 00 00 00 01 00 00 | .............3...........%...... |
| 3e00 | 00 f7 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 04 00 00 00 00 00 00 35 81 5f d0 00 00 00 | ../..............}.......5._.... |
| 3e20 | 02 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff | ................................ |
| 3e40 | ff 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a | ...............................j |
| 3fa0 | 63 48 4b 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 02 00 00 00 00 00 00 01 45 00 00 00 13 | cHK........................E.... |
| 3fc0 | 23 69 6e 63 6c 75 64 65 20 22 77 69 6e 64 6f 77 2e 68 22 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 | #include."window.h"....#include. |
| 3fe0 | 3c 77 61 79 6c 61 6e 64 2d 63 6c 69 65 6e 74 2e 68 3e 00 00 00 18 23 69 6e 63 6c 75 64 65 20 3c | <wayland-client.h>....#include.< |
| 4000 | 77 61 79 6c 61 6e 64 2d 65 67 6c 2e 68 3e 00 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 45 47 4c 2f | wayland-egl.h>....#include.<EGL/ |
| 4020 | 65 67 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 3c 47 4c 2f 67 6c 2e 68 3e 00 00 00 20 | egl.h>....#include.<GL/gl.h>.... |
| 4040 | 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f 78 6b 62 63 6f 6d 6d 6f 6e 2e 68 3e | #include.<xkbcommon/xkbcommon.h> |
| 4060 | 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f 78 6b 62 63 6f 6d 6d 6f | ...(#include.<xkbcommon/xkbcommo |
| 4080 | 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 15 23 69 6e 63 6c 75 64 65 20 3c 73 79 73 2f 6d 6d | n-keysyms.h>....#include.<sys/mm |
| 40a0 | 61 6e 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 13 | an.h>....#include.<unistd.h>.... |
| 40c0 | 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 | #include.<stdlib.h>....#include. |
| 40e0 | 3c 73 74 72 69 6e 67 2e 68 3e 00 00 00 26 23 69 6e 63 6c 75 64 65 20 22 78 64 67 2d 73 68 65 6c | <string.h>...&#include."xdg-shel |
| 4100 | 6c 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 39 23 69 6e 63 6c 75 64 65 | l-client-protocol.h"...9#include |
| 4120 | 20 22 72 65 6c 61 74 69 76 65 2d 70 6f 69 6e 74 65 72 2d 75 6e 73 74 61 62 6c 65 2d 76 31 2d 63 | ."relative-pointer-unstable-v1-c |
| 4140 | 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 3c 23 69 6e 63 6c 75 64 65 20 22 70 | lient-protocol.h"...<#include."p |
| 4160 | 6f 69 6e 74 65 72 2d 63 6f 6e 73 74 72 61 69 6e 74 73 2d 75 6e 73 74 61 62 6c 65 2d 76 31 2d 63 | ointer-constraints-unstable-v1-c |
| 4180 | 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 00 00 00 00 10 74 79 70 65 64 65 66 | lient-protocol.h"........typedef |
| 41a0 | 20 73 74 72 75 63 74 20 7b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 64 69 73 70 6c | .struct.{........struct.wl_displ |
| 41c0 | 61 79 20 2a 64 69 73 70 6c 61 79 3b 00 00 00 21 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 72 65 | ay.*display;...!....struct.wl_re |
| 41e0 | 67 69 73 74 72 79 20 2a 72 65 67 69 73 74 72 79 3b 00 00 00 25 20 20 20 20 73 74 72 75 63 74 20 | gistry.*registry;...%....struct. |
| 4200 | 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 20 2a 63 6f 6d 70 6f 73 69 74 6f 72 3b 00 00 00 19 20 20 | wl_compositor.*compositor;...... |
| 4220 | 20 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 20 2a 73 65 61 74 3b 00 00 00 20 20 20 20 20 73 | ..struct.wl_seat.*seat;........s |
| 4240 | 74 72 75 63 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 20 2a 77 6d 5f 62 61 73 65 3b 00 00 00 38 20 | truct.xdg_wm_base.*wm_base;...8. |
| 4260 | 20 20 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d | ...struct.zwp_relative_pointer_m |
| 4280 | 61 6e 61 67 65 72 5f 76 31 20 2a 72 65 6c 5f 70 74 72 5f 6d 67 72 3b 00 00 00 37 20 20 20 20 73 | anager_v1.*rel_ptr_mgr;...7....s |
| 42a0 | 74 72 75 63 74 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 | truct.zwp_pointer_constraints_v1 |
| 42c0 | 20 2a 70 74 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 3b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 | .*ptr_constraints;........struct |
| 42e0 | 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 3b 00 00 00 24 20 20 20 20 73 74 72 | .wl_surface.*surface;...$....str |
| 4300 | 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 20 2a 78 64 67 5f 73 75 72 66 61 63 65 3b 00 00 00 | uct.xdg_surface.*xdg_surface;... |
| 4320 | 26 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 20 2a 78 64 67 5f 74 6f | &....struct.xdg_toplevel.*xdg_to |
| 4340 | 70 6c 65 76 65 6c 3b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 | plevel;........struct.wl_pointer |
| 4360 | 20 2a 70 6f 69 6e 74 65 72 3b 00 00 00 21 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 | .*pointer;...!....struct.wl_keyb |
| 4380 | 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 3b 00 00 00 30 20 20 20 20 73 74 72 75 63 74 20 7a 77 | oard.*keyboard;...0....struct.zw |
| 43a0 | 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a 72 65 6c 5f 70 6f 69 6e 74 | p_relative_pointer_v1.*rel_point |
| 43c0 | 65 72 3b 00 00 00 31 20 20 20 20 73 74 72 75 63 74 20 7a 77 70 5f 6c 6f 63 6b 65 64 5f 70 6f 69 | er;...1....struct.zwp_locked_poi |
| 43e0 | 6e 74 65 72 5f 76 31 20 2a 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 3b 00 00 00 25 20 20 20 20 | nter_v1.*locked_pointer;...%.... |
| 4400 | 73 74 72 75 63 74 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 20 2a 65 67 6c 5f 77 69 6e 64 6f 77 | struct.wl_egl_window.*egl_window |
| 4420 | 3b 00 00 00 1b 20 20 20 20 45 47 4c 44 69 73 70 6c 61 79 20 65 67 6c 5f 64 69 73 70 6c 61 79 3b | ;........EGLDisplay.egl_display; |
| 4440 | 00 00 00 1b 20 20 20 20 45 47 4c 43 6f 6e 74 65 78 74 20 65 67 6c 5f 63 6f 6e 74 65 78 74 3b 00 | ........EGLContext.egl_context;. |
| 4460 | 00 00 1b 20 20 20 20 45 47 4c 53 75 72 66 61 63 65 20 65 67 6c 5f 73 75 72 66 61 63 65 3b 00 00 | .......EGLSurface.egl_surface;.. |
| 4480 | 00 20 20 20 20 20 73 74 72 75 63 74 20 78 6b 62 5f 63 6f 6e 74 65 78 74 20 2a 78 6b 62 5f 63 74 | ......struct.xkb_context.*xkb_ct |
| 44a0 | 78 3b 00 00 00 22 20 20 20 20 73 74 72 75 63 74 20 78 6b 62 5f 6b 65 79 6d 61 70 20 2a 78 6b 62 | x;..."....struct.xkb_keymap.*xkb |
| 44c0 | 5f 6b 65 79 6d 61 70 3b 00 00 00 20 20 20 20 20 73 74 72 75 63 74 20 78 6b 62 5f 73 74 61 74 65 | _keymap;........struct.xkb_state |
| 44e0 | 20 2a 78 6b 62 5f 73 74 61 74 65 3b 00 00 00 13 20 20 20 20 69 6e 74 20 63 6f 6e 66 69 67 75 72 | .*xkb_state;........int.configur |
| 4500 | 65 64 3b 00 00 00 15 20 20 20 20 57 69 6e 64 6f 77 20 2a 77 69 6e 5f 69 6e 73 74 3b 00 00 00 0c | ed;........Window.*win_inst;.... |
| 4520 | 7d 20 57 6c 42 61 63 6b 65 6e 64 3b 00 00 00 00 00 00 00 2b 73 74 61 74 69 63 20 69 6e 74 20 6b | }.WlBackend;.......+static.int.k |
| 4540 | 65 79 73 79 6d 5f 74 6f 5f 6b 65 79 28 78 6b 62 5f 6b 65 79 73 79 6d 5f 74 20 6b 73 29 20 7b 00 | eysym_to_key(xkb_keysym_t.ks).{. |
| 4560 | 00 00 11 20 20 20 20 73 77 69 74 63 68 20 28 6b 73 29 20 7b 00 00 00 35 20 20 20 20 20 20 20 20 | .......switch.(ks).{...5........ |
| 4580 | 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 77 3a 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 57 3a 20 | case.XKB_KEY_w:.case.XKB_KEY_W:. |
| 45a0 | 72 65 74 75 72 6e 20 4b 45 59 5f 57 3b 00 00 00 35 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b | return.KEY_W;...5........case.XK |
| 45c0 | 42 5f 4b 45 59 5f 61 3a 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 41 3a 20 72 65 74 75 72 6e 20 | B_KEY_a:.case.XKB_KEY_A:.return. |
| 45e0 | 4b 45 59 5f 41 3b 00 00 00 35 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 73 | KEY_A;...5........case.XKB_KEY_s |
| 4600 | 3a 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 53 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 53 3b 00 | :.case.XKB_KEY_S:.return.KEY_S;. |
| 4620 | 00 00 35 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 64 3a 20 63 61 73 65 20 | ..5........case.XKB_KEY_d:.case. |
| 4640 | 58 4b 42 5f 4b 45 59 5f 44 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 44 3b 00 00 00 2d 20 20 20 20 | XKB_KEY_D:.return.KEY_D;...-.... |
| 4660 | 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 73 70 61 63 65 3a 20 72 65 74 75 72 6e 20 4b | ....case.XKB_KEY_space:.return.K |
| 4680 | 45 59 5f 53 50 41 43 45 3b 00 00 00 2c 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 | EY_SPACE;...,........case.XKB_KE |
| 46a0 | 59 5f 45 73 63 61 70 65 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 45 53 43 3b 00 00 00 25 20 20 20 | Y_Escape:.return.KEY_ESC;...%... |
| 46c0 | 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 31 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f | .....case.XKB_KEY_1:.return.KEY_ |
| 46e0 | 31 3b 00 00 00 25 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f 4b 45 59 5f 32 3a 20 72 65 | 1;...%........case.XKB_KEY_2:.re |
| 4700 | 74 75 72 6e 20 4b 45 59 5f 32 3b 00 00 00 25 20 20 20 20 20 20 20 20 63 61 73 65 20 58 4b 42 5f | turn.KEY_2;...%........case.XKB_ |
| 4720 | 4b 45 59 5f 33 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 33 3b 00 00 00 1b 20 20 20 20 20 20 20 20 | KEY_3:.return.KEY_3;............ |
| 4740 | 64 65 66 61 75 6c 74 3a 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 | default:.return.-1;........}.... |
| 4760 | 7d 00 00 00 00 00 00 00 54 73 74 61 74 69 63 20 76 6f 69 64 20 77 6d 5f 62 61 73 65 5f 70 69 6e | }.......Tstatic.void.wm_base_pin |
| 4780 | 67 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 | g(void.*data,.struct.xdg_wm_base |
| 47a0 | 20 2a 77 6d 5f 62 61 73 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 29 20 7b 00 00 00 | .*wm_base,.uint32_t.serial).{... |
| 47c0 | 0f 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 26 20 20 20 20 78 64 67 5f 77 6d 5f 62 | .....(void)data;...&....xdg_wm_b |
| 47e0 | 61 73 65 5f 70 6f 6e 67 28 77 6d 5f 62 61 73 65 2c 20 73 65 72 69 61 6c 29 3b 00 00 00 01 7d 00 | ase_pong(wm_base,.serial);....}. |
| 4800 | 00 00 4d 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 67 5f 77 6d 5f 62 61 | ..Mstatic.const.struct.xdg_wm_ba |
| 4820 | 73 65 5f 6c 69 73 74 65 6e 65 72 20 77 6d 5f 62 61 73 65 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b | se_listener.wm_base_listener.=.{ |
| 4840 | 20 77 6d 5f 62 61 73 65 5f 70 69 6e 67 20 7d 3b 00 00 00 00 00 00 00 58 73 74 61 74 69 63 20 76 | .wm_base_ping.};.......Xstatic.v |
| 4860 | 6f 69 64 20 78 64 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 67 75 72 65 28 76 6f 69 64 20 2a | oid.xdg_surface_configure(void.* |
| 4880 | 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 20 2a 78 73 2c 20 75 69 | data,.struct.xdg_surface.*xs,.ui |
| 48a0 | 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 29 20 7b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e | nt32_t.serial).{........WlBacken |
| 48c0 | 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 2a 20 20 20 20 78 64 67 5f 73 75 72 66 61 63 65 5f | d.*b.=.data;...*....xdg_surface_ |
| 48e0 | 61 63 6b 5f 63 6f 6e 66 69 67 75 72 65 28 78 73 2c 20 73 65 72 69 61 6c 29 3b 00 00 00 16 20 20 | ack_configure(xs,.serial);...... |
| 4900 | 20 20 62 2d 3e 63 6f 6e 66 69 67 75 72 65 64 20 3d 20 31 3b 00 00 00 01 7d 00 00 00 5b 73 74 61 | ..b->configured.=.1;....}...[sta |
| 4920 | 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 5f 6c 69 73 | tic.const.struct.xdg_surface_lis |
| 4940 | 74 65 6e 65 72 20 78 64 67 5f 73 75 72 66 61 63 65 5f 6c 69 73 74 65 6e 65 72 5f 20 3d 20 7b 20 | tener.xdg_surface_listener_.=.{. |
| 4960 | 78 64 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 67 75 72 65 20 7d 3b 00 00 00 00 00 00 00 43 | xdg_surface_configure.};.......C |
| 4980 | 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f 63 6f 6e 66 69 67 75 72 65 28 76 | static.void.toplevel_configure(v |
| 49a0 | 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 20 2a | oid.*data,.struct.xdg_toplevel.* |
| 49c0 | 74 6c 2c 00 00 00 59 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tl,...Y......................... |
| 49e0 | 20 20 20 20 20 20 20 69 6e 74 33 32 5f 74 20 77 69 64 74 68 2c 20 69 6e 74 33 32 5f 74 20 68 65 | .......int32_t.width,.int32_t.he |
| 4a00 | 69 67 68 74 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 72 72 61 79 20 2a 73 74 61 74 65 73 29 20 7b | ight,.struct.wl_array.*states).{ |
| 4a20 | 00 00 00 1b 20 20 20 20 28 76 6f 69 64 29 74 6c 3b 20 28 76 6f 69 64 29 73 74 61 74 65 73 3b 00 | ........(void)tl;.(void)states;. |
| 4a40 | 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 22 20 | .......WlBackend.*b.=.data;...". |
| 4a60 | 20 20 20 69 66 20 28 77 69 64 74 68 20 3e 20 30 20 26 26 20 68 65 69 67 68 74 20 3e 20 30 29 20 | ...if.(width.>.0.&&.height.>.0). |
| 4a80 | 7b 00 00 00 29 20 20 20 20 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e | {...)........b->win_inst->state. |
| 4aa0 | 77 69 64 74 68 20 3d 20 77 69 64 74 68 3b 00 00 00 2b 20 20 20 20 20 20 20 20 62 2d 3e 77 69 6e | width.=.width;...+........b->win |
| 4ac0 | 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 65 69 67 68 74 3b 00 00 00 | _inst->state.height.=.height;... |
| 4ae0 | 54 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 20 77 6c 5f 65 | T........if.(b->egl_window).wl_e |
| 4b00 | 67 6c 5f 77 69 6e 64 6f 77 5f 72 65 73 69 7a 65 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 2c 20 | gl_window_resize(b->egl_window,. |
| 4b20 | 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 30 2c 20 30 29 3b 00 00 00 05 20 20 20 20 7d 00 00 | width,.height,.0,.0);........}.. |
| 4b40 | 00 01 7d 00 00 00 41 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f 63 6c 6f 73 | ..}...Astatic.void.toplevel_clos |
| 4b60 | 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 65 | e(void.*data,.struct.xdg_topleve |
| 4b80 | 6c 20 2a 74 6c 29 20 7b 00 00 00 0d 20 20 20 20 28 76 6f 69 64 29 74 6c 3b 00 00 00 18 20 20 20 | l.*tl).{........(void)tl;....... |
| 4ba0 | 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 28 20 20 20 20 62 2d 3e | .WlBackend.*b.=.data;...(....b-> |
| 4bc0 | 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 73 68 6f 75 6c 64 5f 63 6c 6f 73 65 20 3d 20 31 | win_inst->state.should_close.=.1 |
| 4be0 | 3b 00 00 00 01 7d 00 00 00 65 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 | ;....}...estatic.const.struct.xd |
| 4c00 | 67 5f 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 6e 65 72 20 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 | g_toplevel_listener.toplevel_lis |
| 4c20 | 74 65 6e 65 72 20 3d 20 7b 20 74 6f 70 6c 65 76 65 6c 5f 63 6f 6e 66 69 67 75 72 65 2c 20 74 6f | tener.=.{.toplevel_configure,.to |
| 4c40 | 70 6c 65 76 65 6c 5f 63 6c 6f 73 65 20 7d 3b 00 00 00 00 00 00 00 4e 73 74 61 74 69 63 20 76 6f | plevel_close.};.......Nstatic.vo |
| 4c60 | 69 64 20 70 6f 69 6e 74 65 72 5f 65 6e 74 65 72 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 | id.pointer_enter(void.*data,.str |
| 4c80 | 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 74 72 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 | uct.wl_pointer.*ptr,.uint32_t.se |
| 4ca0 | 72 69 61 6c 2c 00 00 00 51 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rial,...Q....................... |
| 4cc0 | 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 2c 20 77 6c 5f | ....struct.wl_surface.*surf,.wl_ |
| 4ce0 | 66 69 78 65 64 5f 74 20 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 79 29 20 7b 00 00 00 2d 20 20 | fixed_t.x,.wl_fixed_t.y).{...-.. |
| 4d00 | 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 73 75 72 66 3b 20 28 76 6f 69 64 29 | ..(void)data;.(void)surf;.(void) |
| 4d20 | 78 3b 20 28 76 6f 69 64 29 79 3b 00 00 00 33 20 20 20 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 73 65 | x;.(void)y;...3....wl_pointer_se |
| 4d40 | 74 5f 63 75 72 73 6f 72 28 70 74 72 2c 20 73 65 72 69 61 6c 2c 20 4e 55 4c 4c 2c 20 30 2c 20 30 | t_cursor(ptr,.serial,.NULL,.0,.0 |
| 4d60 | 29 3b 00 00 00 01 7d 00 00 00 5f 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6c | );....}..._static.void.pointer_l |
| 4d80 | 65 61 76 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 | eave(void.*d,.struct.wl_pointer. |
| 4da0 | 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 73 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 | *p,.uint32_t.s,.struct.wl_surfac |
| 4dc0 | 65 20 2a 73 75 72 66 29 20 7b 00 00 00 2a 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 | e.*surf).{...*....(void)d;.(void |
| 4de0 | 29 70 3b 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 64 29 73 75 72 66 3b 00 00 00 01 7d 00 00 00 | )p;.(void)s;.(void)surf;....}... |
| 4e00 | 63 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 | cstatic.void.pointer_motion(void |
| 4e20 | 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 | .*d,.struct.wl_pointer.*p,.uint3 |
| 4e40 | 32 5f 74 20 74 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 | 2_t.t,.wl_fixed_t.x,.wl_fixed_t. |
| 4e60 | 79 29 20 7b 00 00 00 30 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 | y).{...0....(void)d;.(void)p;.(v |
| 4e80 | 6f 69 64 29 74 3b 20 28 76 6f 69 64 29 78 3b 20 28 76 6f 69 64 29 79 3b 00 00 00 01 7d 00 00 00 | oid)t;.(void)x;.(void)y;....}... |
| 4ea0 | 5e 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 28 76 6f 69 64 | ^static.void.pointer_button(void |
| 4ec0 | 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 74 72 2c 20 | .*data,.struct.wl_pointer.*ptr,. |
| 4ee0 | 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 00 | uint32_t.serial,.uint32_t.time,. |
| 4f00 | 00 00 3e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 | ..>............................u |
| 4f20 | 69 6e 74 33 32 5f 74 20 62 75 74 74 6f 6e 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 | int32_t.button,.uint32_t.state). |
| 4f40 | 7b 00 00 00 28 20 20 20 20 28 76 6f 69 64 29 70 74 72 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c | {...(....(void)ptr;.(void)serial |
| 4f60 | 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a | ;.(void)time;........WlBackend.* |
| 4f80 | 62 20 3d 20 64 61 74 61 3b 00 00 00 3d 20 20 20 20 69 6e 74 20 70 72 65 73 73 65 64 20 3d 20 28 | b.=.data;...=....int.pressed.=.( |
| 4fa0 | 73 74 61 74 65 20 3d 3d 20 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 | state.==.WL_POINTER_BUTTON_STATE |
| 4fc0 | 5f 50 52 45 53 53 45 44 29 3b 00 00 00 41 20 20 20 20 69 66 20 28 62 75 74 74 6f 6e 20 3d 3d 20 | _PRESSED);...A....if.(button.==. |
| 4fe0 | 30 78 31 31 30 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f | 0x110).b->win_inst->state.mouse_ |
| 5000 | 6c 65 66 74 20 3d 20 70 72 65 73 73 65 64 3b 00 00 00 42 20 20 20 20 69 66 20 28 62 75 74 74 6f | left.=.pressed;...B....if.(butto |
| 5020 | 6e 20 3d 3d 20 30 78 31 31 31 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d | n.==.0x111).b->win_inst->state.m |
| 5040 | 6f 75 73 65 5f 72 69 67 68 74 20 3d 20 70 72 65 73 73 65 64 3b 00 00 00 01 7d 00 00 00 5f 73 74 | ouse_right.=.pressed;....}..._st |
| 5060 | 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 28 76 6f 69 64 20 2a 64 2c 20 | atic.void.pointer_axis(void.*d,. |
| 5080 | 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 74 | struct.wl_pointer.*p,.uint32_t.t |
| 50a0 | 2c 20 75 69 6e 74 33 32 5f 74 20 61 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 76 29 20 7b 00 00 00 | ,.uint32_t.a,.wl_fixed_t.v).{... |
| 50c0 | 30 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 6f 69 64 29 74 3b 20 | 0....(void)d;.(void)p;.(void)t;. |
| 50e0 | 28 76 6f 69 64 29 61 3b 20 28 76 6f 69 64 29 76 3b 00 00 00 01 7d 00 00 00 4e 73 74 61 74 69 63 | (void)a;.(void)v;....}...Nstatic |
| 5100 | 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 66 72 61 6d 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 | .void.pointer_frame(void.*d,.str |
| 5120 | 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 29 20 7b 20 28 76 6f 69 64 29 64 3b 20 28 76 | uct.wl_pointer.*p).{.(void)d;.(v |
| 5140 | 6f 69 64 29 70 3b 20 7d 00 00 00 69 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f | oid)p;.}...istatic.void.pointer_ |
| 5160 | 61 78 69 73 5f 73 6f 75 72 63 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 | axis_source(void.*d,.struct.wl_p |
| 5180 | 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 73 29 20 7b 20 28 76 6f 69 64 29 64 | ointer.*p,.uint32_t.s).{.(void)d |
| 51a0 | 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 6f 69 64 29 73 3b 20 7d 00 00 00 56 73 74 61 74 69 63 20 | ;.(void)p;.(void)s;.}...Vstatic. |
| 51c0 | 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 73 74 6f 70 28 76 6f 69 64 20 2a 64 2c 20 | void.pointer_axis_stop(void.*d,. |
| 51e0 | 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 74 | struct.wl_pointer.*p,.uint32_t.t |
| 5200 | 2c 20 75 69 6e 74 33 32 5f 74 20 61 29 20 7b 00 00 00 27 20 20 20 20 28 76 6f 69 64 29 64 3b 20 | ,.uint32_t.a).{...'....(void)d;. |
| 5220 | 28 76 6f 69 64 29 70 3b 20 28 76 6f 69 64 29 74 3b 20 28 76 6f 69 64 29 61 3b 00 00 00 01 7d 00 | (void)p;.(void)t;.(void)a;....}. |
| 5240 | 00 00 5c 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 64 69 73 63 | ..\static.void.pointer_axis_disc |
| 5260 | 72 65 74 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 | rete(void.*d,.struct.wl_pointer. |
| 5280 | 2a 70 2c 20 75 69 6e 74 33 32 5f 74 20 61 2c 20 69 6e 74 33 32 5f 74 20 64 69 73 63 29 20 7b 00 | *p,.uint32_t.a,.int32_t.disc).{. |
| 52a0 | 00 00 2a 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 70 3b 20 28 76 6f 69 64 29 61 | ..*....(void)d;.(void)p;.(void)a |
| 52c0 | 3b 20 28 76 6f 69 64 29 64 69 73 63 3b 00 00 00 01 7d 00 00 00 3c 73 74 61 74 69 63 20 63 6f 6e | ;.(void)disc;....}...<static.con |
| 52e0 | 73 74 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 70 6f | st.struct.wl_pointer_listener.po |
| 5300 | 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 4f 20 20 20 20 70 6f 69 6e 74 65 | inter_listener.=.{...O....pointe |
| 5320 | 72 5f 65 6e 74 65 72 2c 20 70 6f 69 6e 74 65 72 5f 6c 65 61 76 65 2c 20 70 6f 69 6e 74 65 72 5f | r_enter,.pointer_leave,.pointer_ |
| 5340 | 6d 6f 74 69 6f 6e 2c 20 70 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 2c 20 70 6f 69 6e 74 65 72 5f | motion,.pointer_button,.pointer_ |
| 5360 | 61 78 69 73 2c 00 00 00 50 20 20 20 20 70 6f 69 6e 74 65 72 5f 66 72 61 6d 65 2c 20 70 6f 69 6e | axis,...P....pointer_frame,.poin |
| 5380 | 74 65 72 5f 61 78 69 73 5f 73 6f 75 72 63 65 2c 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 73 74 | ter_axis_source,.pointer_axis_st |
| 53a0 | 6f 70 2c 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 5f 64 69 73 63 72 65 74 65 00 00 00 02 7d 3b 00 | op,.pointer_axis_discrete....};. |
| 53c0 | 00 00 00 00 00 00 4b 73 74 61 74 69 63 20 76 6f 69 64 20 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 | ......Kstatic.void.relative_moti |
| 53e0 | 6f 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 | on(void.*data,.struct.zwp_relati |
| 5400 | 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a 72 70 2c 00 00 00 54 20 20 20 20 20 20 20 20 20 20 | ve_pointer_v1.*rp,...T.......... |
| 5420 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 68 69 2c 20 | ...................uint32_t.hi,. |
| 5440 | 75 69 6e 74 33 32 5f 74 20 6c 6f 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 2c 20 77 6c 5f 66 | uint32_t.lo,.wl_fixed_t.dx,.wl_f |
| 5460 | 69 78 65 64 5f 74 20 64 79 2c 00 00 00 40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ixed_t.dy,...@.................. |
| 5480 | 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 5f 75 2c 20 77 6c 5f 66 | ...........wl_fixed_t.dx_u,.wl_f |
| 54a0 | 69 78 65 64 5f 74 20 64 79 5f 75 29 20 7b 00 00 00 35 20 20 20 20 28 76 6f 69 64 29 72 70 3b 20 | ixed_t.dy_u).{...5....(void)rp;. |
| 54c0 | 28 76 6f 69 64 29 68 69 3b 20 28 76 6f 69 64 29 6c 6f 3b 20 28 76 6f 69 64 29 64 78 3b 20 28 76 | (void)hi;.(void)lo;.(void)dx;.(v |
| 54e0 | 6f 69 64 29 64 79 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 | oid)dy;........WlBackend.*b.=.da |
| 5500 | 74 61 3b 00 00 00 3c 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d 6f | ta;...<....b->win_inst->state.mo |
| 5520 | 75 73 65 5f 64 78 20 2b 3d 20 77 6c 5f 66 69 78 65 64 5f 74 6f 5f 64 6f 75 62 6c 65 28 64 78 5f | use_dx.+=.wl_fixed_to_double(dx_ |
| 5540 | 75 29 3b 00 00 00 3c 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d 6f | u);...<....b->win_inst->state.mo |
| 5560 | 75 73 65 5f 64 79 20 2b 3d 20 77 6c 5f 66 69 78 65 64 5f 74 6f 5f 64 6f 75 62 6c 65 28 64 79 5f | use_dy.+=.wl_fixed_to_double(dy_ |
| 5580 | 75 29 3b 00 00 00 01 7d 00 00 00 60 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 | u);....}...`static.const.struct. |
| 55a0 | 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 6c 69 73 74 65 6e 65 72 | zwp_relative_pointer_v1_listener |
| 55c0 | 20 72 65 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 20 72 65 6c 61 74 69 | .rel_pointer_listener.=.{.relati |
| 55e0 | 76 65 5f 6d 6f 74 69 6f 6e 20 7d 3b 00 00 00 00 00 00 00 50 73 74 61 74 69 63 20 76 6f 69 64 20 | ve_motion.};.......Pstatic.void. |
| 5600 | 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 | keyboard_keymap(void.*data,.stru |
| 5620 | 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 62 2c 20 75 69 6e 74 33 32 5f 74 20 66 6f 72 | ct.wl_keyboard.*kb,.uint32_t.for |
| 5640 | 6d 61 74 2c 00 00 00 39 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | mat,...9........................ |
| 5660 | 20 20 20 20 20 69 6e 74 33 32 5f 74 20 66 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 69 7a 65 29 20 | .....int32_t.fd,.uint32_t.size). |
| 5680 | 7b 00 00 00 0d 20 20 20 20 28 76 6f 69 64 29 6b 62 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b | {........(void)kb;........WlBack |
| 56a0 | 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 4a 20 20 20 20 69 66 20 28 66 6f 72 6d 61 74 | end.*b.=.data;...J....if.(format |
| 56c0 | 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 4d 41 50 5f 46 4f 52 4d 41 54 5f 58 4b | .!=.WL_KEYBOARD_KEYMAP_FORMAT_XK |
| 56e0 | 42 5f 56 31 29 20 7b 20 63 6c 6f 73 65 28 66 64 29 3b 20 72 65 74 75 72 6e 3b 20 7d 00 00 00 44 | B_V1).{.close(fd);.return;.}...D |
| 5700 | 20 20 20 20 63 68 61 72 20 2a 6d 61 70 5f 73 74 72 20 3d 20 6d 6d 61 70 28 4e 55 4c 4c 2c 20 73 | ....char.*map_str.=.mmap(NULL,.s |
| 5720 | 69 7a 65 2c 20 50 52 4f 54 5f 52 45 41 44 2c 20 4d 41 50 5f 50 52 49 56 41 54 45 2c 20 66 64 2c | ize,.PROT_READ,.MAP_PRIVATE,.fd, |
| 5740 | 20 30 29 3b 00 00 00 20 20 20 20 20 69 66 20 28 6d 61 70 5f 73 74 72 20 21 3d 20 4d 41 50 5f 46 | .0);........if.(map_str.!=.MAP_F |
| 5760 | 41 49 4c 45 44 29 20 7b 00 00 00 3f 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 78 6b 62 5f 6b | AILED).{...?........struct.xkb_k |
| 5780 | 65 79 6d 61 70 20 2a 6b 65 79 6d 61 70 20 3d 20 78 6b 62 5f 6b 65 79 6d 61 70 5f 6e 65 77 5f 66 | eymap.*keymap.=.xkb_keymap_new_f |
| 57a0 | 72 6f 6d 5f 73 74 72 69 6e 67 28 00 00 00 59 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 78 6b | rom_string(...Y............b->xk |
| 57c0 | 62 5f 63 74 78 2c 20 6d 61 70 5f 73 74 72 2c 20 58 4b 42 5f 4b 45 59 4d 41 50 5f 46 4f 52 4d 41 | b_ctx,.map_str,.XKB_KEYMAP_FORMA |
| 57e0 | 54 5f 54 45 58 54 5f 56 31 2c 20 58 4b 42 5f 4b 45 59 4d 41 50 5f 43 4f 4d 50 49 4c 45 5f 4e 4f | T_TEXT_V1,.XKB_KEYMAP_COMPILE_NO |
| 5800 | 5f 46 4c 41 47 53 29 3b 00 00 00 1e 20 20 20 20 20 20 20 20 6d 75 6e 6d 61 70 28 6d 61 70 5f 73 | _FLAGS);............munmap(map_s |
| 5820 | 74 72 2c 20 73 69 7a 65 29 3b 00 00 00 15 20 20 20 20 20 20 20 20 69 66 20 28 6b 65 79 6d 61 70 | tr,.size);............if.(keymap |
| 5840 | 29 20 7b 00 00 00 3c 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 78 6b 62 5f 73 74 | ).{...<............if.(b->xkb_st |
| 5860 | 61 74 65 29 20 78 6b 62 5f 73 74 61 74 65 5f 75 6e 72 65 66 28 62 2d 3e 78 6b 62 5f 73 74 61 74 | ate).xkb_state_unref(b->xkb_stat |
| 5880 | 65 29 3b 00 00 00 3f 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 78 6b 62 5f 6b 65 | e);...?............if.(b->xkb_ke |
| 58a0 | 79 6d 61 70 29 20 78 6b 62 5f 6b 65 79 6d 61 70 5f 75 6e 72 65 66 28 62 2d 3e 78 6b 62 5f 6b 65 | ymap).xkb_keymap_unref(b->xkb_ke |
| 58c0 | 79 6d 61 70 29 3b 00 00 00 23 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 78 6b 62 5f 6b 65 79 | ymap);...#............b->xkb_key |
| 58e0 | 6d 61 70 20 3d 20 6b 65 79 6d 61 70 3b 00 00 00 31 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e | map.=.keymap;...1............b-> |
| 5900 | 78 6b 62 5f 73 74 61 74 65 20 3d 20 78 6b 62 5f 73 74 61 74 65 5f 6e 65 77 28 6b 65 79 6d 61 70 | xkb_state.=.xkb_state_new(keymap |
| 5920 | 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 0e 20 20 20 20 | );............}........}........ |
| 5940 | 63 6c 6f 73 65 28 66 64 29 3b 00 00 00 01 7d 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 6b | close(fd);....}...Fstatic.void.k |
| 5960 | 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c | eyboard_enter(void.*d,.struct.wl |
| 5980 | 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 2c 20 75 69 6e 74 33 32 5f 74 20 73 2c 00 00 00 4d 20 20 20 | _keyboard.*k,.uint32_t.s,...M... |
| 59a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 | .........................struct. |
| 59c0 | 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 72 72 61 | wl_surface.*surf,.struct.wl_arra |
| 59e0 | 79 20 2a 6b 65 79 73 29 20 7b 00 00 00 36 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 | y.*keys).{...6....(void)d;.(void |
| 5a00 | 29 6b 3b 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 64 29 73 75 72 66 3b 20 28 76 6f 69 64 29 6b | )k;.(void)s;.(void)surf;.(void)k |
| 5a20 | 65 79 73 3b 00 00 00 01 7d 00 00 00 61 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 | eys;....}...astatic.void.keyboar |
| 5a40 | 64 5f 6c 65 61 76 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f | d_leave(void.*d,.struct.wl_keybo |
| 5a60 | 61 72 64 20 2a 6b 2c 20 75 69 6e 74 33 32 5f 74 20 73 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 | ard.*k,.uint32_t.s,.struct.wl_su |
| 5a80 | 72 66 61 63 65 20 2a 73 75 72 66 29 20 7b 00 00 00 2a 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 | rface.*surf).{...*....(void)d;.( |
| 5aa0 | 76 6f 69 64 29 6b 3b 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 64 29 73 75 72 66 3b 00 00 00 01 | void)k;.(void)s;.(void)surf;.... |
| 5ac0 | 7d 00 00 00 5c 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 28 76 6f | }...\static.void.keyboard_key(vo |
| 5ae0 | 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 62 | id.*data,.struct.wl_keyboard.*kb |
| 5b00 | 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 | ,.uint32_t.serial,.uint32_t.time |
| 5b20 | 2c 00 00 00 39 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 | ,...9..........................u |
| 5b40 | 69 6e 74 33 32 5f 74 20 6b 65 79 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 | int32_t.key,.uint32_t.state).{.. |
| 5b60 | 00 27 20 20 20 20 28 76 6f 69 64 29 6b 62 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 | .'....(void)kb;.(void)serial;.(v |
| 5b80 | 6f 69 64 29 74 69 6d 65 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 | oid)time;........WlBackend.*b.=. |
| 5ba0 | 64 61 74 61 3b 00 00 00 1e 20 20 20 20 69 66 20 28 21 62 2d 3e 78 6b 62 5f 73 74 61 74 65 29 20 | data;........if.(!b->xkb_state). |
| 5bc0 | 72 65 74 75 72 6e 3b 00 00 00 48 20 20 20 20 78 6b 62 5f 6b 65 79 73 79 6d 5f 74 20 73 79 6d 20 | return;...H....xkb_keysym_t.sym. |
| 5be0 | 3d 20 78 6b 62 5f 73 74 61 74 65 5f 6b 65 79 5f 67 65 74 5f 6f 6e 65 5f 73 79 6d 28 62 2d 3e 78 | =.xkb_state_key_get_one_sym(b->x |
| 5c00 | 6b 62 5f 73 74 61 74 65 2c 20 6b 65 79 20 2b 20 38 29 3b 00 00 00 1f 20 20 20 20 69 6e 74 20 6b | kb_state,.key.+.8);........int.k |
| 5c20 | 20 3d 20 6b 65 79 73 79 6d 5f 74 6f 5f 6b 65 79 28 73 79 6d 29 3b 00 00 00 56 20 20 20 20 69 66 | .=.keysym_to_key(sym);...V....if |
| 5c40 | 20 28 6b 20 3e 3d 20 30 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6b 65 79 | .(k.>=.0).b->win_inst->state.key |
| 5c60 | 73 5b 6b 5d 20 3d 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 | s[k].=.(state.==.WL_KEYBOARD_KEY |
| 5c80 | 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 3b 00 00 00 01 7d 00 00 00 53 73 74 61 74 69 63 20 | _STATE_PRESSED);....}...Sstatic. |
| 5ca0 | 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 69 65 72 73 28 76 6f 69 64 20 2a 64 61 | void.keyboard_modifiers(void.*da |
| 5cc0 | 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 62 2c 20 75 69 6e 74 | ta,.struct.wl_keyboard.*kb,.uint |
| 5ce0 | 33 32 5f 74 20 73 65 72 69 61 6c 2c 00 00 00 5c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 32_t.serial,...\................ |
| 5d00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 64 65 70 2c 20 75 69 | ................uint32_t.dep,.ui |
| 5d20 | 6e 74 33 32 5f 74 20 6c 61 74 2c 20 75 69 6e 74 33 32 5f 74 20 6c 6f 63 6b 2c 20 75 69 6e 74 33 | nt32_t.lat,.uint32_t.lock,.uint3 |
| 5d40 | 32 5f 74 20 67 72 6f 75 70 29 20 7b 00 00 00 1b 20 20 20 20 28 76 6f 69 64 29 6b 62 3b 20 28 76 | 2_t.group).{........(void)kb;.(v |
| 5d60 | 6f 69 64 29 73 65 72 69 61 6c 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 | oid)serial;........WlBackend.*b. |
| 5d80 | 3d 20 64 61 74 61 3b 00 00 00 57 20 20 20 20 69 66 20 28 62 2d 3e 78 6b 62 5f 73 74 61 74 65 29 | =.data;...W....if.(b->xkb_state) |
| 5da0 | 20 78 6b 62 5f 73 74 61 74 65 5f 75 70 64 61 74 65 5f 6d 61 73 6b 28 62 2d 3e 78 6b 62 5f 73 74 | .xkb_state_update_mask(b->xkb_st |
| 5dc0 | 61 74 65 2c 20 64 65 70 2c 20 6c 61 74 2c 20 6c 6f 63 6b 2c 20 30 2c 20 30 2c 20 67 72 6f 75 70 | ate,.dep,.lat,.lock,.0,.0,.group |
| 5de0 | 29 3b 00 00 00 01 7d 00 00 00 5c 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f | );....}...\static.void.keyboard_ |
| 5e00 | 72 65 70 65 61 74 5f 69 6e 66 6f 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b | repeat_info(void.*d,.struct.wl_k |
| 5e20 | 65 79 62 6f 61 72 64 20 2a 6b 2c 20 69 6e 74 33 32 5f 74 20 72 2c 20 69 6e 74 33 32 5f 74 20 64 | eyboard.*k,.int32_t.r,.int32_t.d |
| 5e40 | 65 6c 61 79 29 20 7b 00 00 00 2b 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 6b 3b | elay).{...+....(void)d;.(void)k; |
| 5e60 | 20 28 76 6f 69 64 29 72 3b 20 28 76 6f 69 64 29 64 65 6c 61 79 3b 00 00 00 01 7d 00 00 00 3e 73 | .(void)r;.(void)delay;....}...>s |
| 5e80 | 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f 6c | tatic.const.struct.wl_keyboard_l |
| 5ea0 | 69 73 74 65 6e 65 72 20 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 | istener.keyboard_listener.=.{... |
| 5ec0 | 42 20 20 20 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 2c 20 6b 65 79 62 6f 61 72 64 5f 65 | B....keyboard_keymap,.keyboard_e |
| 5ee0 | 6e 74 65 72 2c 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 2c 20 6b 65 79 62 6f 61 72 64 5f 6b | nter,.keyboard_leave,.keyboard_k |
| 5f00 | 65 79 2c 00 00 00 2c 20 20 20 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 69 65 72 73 2c 20 6b | ey,...,....keyboard_modifiers,.k |
| 5f20 | 65 79 62 6f 61 72 64 5f 72 65 70 65 61 74 5f 69 6e 66 6f 00 00 00 02 7d 3b 00 00 00 00 00 00 00 | eyboard_repeat_info....};....... |
| 5f40 | 50 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 61 74 5f 63 61 70 61 62 69 6c 69 74 69 65 73 28 76 | Pstatic.void.seat_capabilities(v |
| 5f60 | 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 20 2a 73 65 61 74 2c | oid.*data,.struct.wl_seat.*seat, |
| 5f80 | 20 75 69 6e 74 33 32 5f 74 20 63 61 70 73 29 20 7b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 | .uint32_t.caps).{........WlBacke |
| 5fa0 | 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 3d 20 20 20 20 69 66 20 28 28 63 61 70 73 20 26 | nd.*b.=.data;...=....if.((caps.& |
| 5fc0 | 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 50 4f 49 4e 54 45 52 29 20 26 26 20 | .WL_SEAT_CAPABILITY_POINTER).&&. |
| 5fe0 | 21 62 2d 3e 70 6f 69 6e 74 65 72 29 20 7b 00 00 00 2f 20 20 20 20 20 20 20 20 62 2d 3e 70 6f 69 | !b->pointer).{.../........b->poi |
| 6000 | 6e 74 65 72 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 5f 70 6f 69 6e 74 65 72 28 73 65 61 74 29 | nter.=.wl_seat_get_pointer(seat) |
| 6020 | 3b 00 00 00 42 20 20 20 20 20 20 20 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 61 64 64 5f 6c 69 73 74 | ;...B........wl_pointer_add_list |
| 6040 | 65 6e 65 72 28 62 2d 3e 70 6f 69 6e 74 65 72 2c 20 26 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e | ener(b->pointer,.&pointer_listen |
| 6060 | 65 72 2c 20 62 29 3b 00 00 00 1d 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 72 65 6c 5f 70 74 | er,.b);............if.(b->rel_pt |
| 6080 | 72 5f 6d 67 72 29 20 7b 00 00 00 52 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 72 65 6c 5f 70 | r_mgr).{...R............b->rel_p |
| 60a0 | 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 | ointer.=.zwp_relative_pointer_ma |
| 60c0 | 6e 61 67 65 72 5f 76 31 5f 67 65 74 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 28 00 00 | nager_v1_get_relative_pointer(.. |
| 60e0 | 00 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 72 65 6c 5f 70 74 72 5f 6d 67 72 | .,................b->rel_ptr_mgr |
| 6100 | 2c 20 62 2d 3e 70 6f 69 6e 74 65 72 29 3b 00 00 00 5b 20 20 20 20 20 20 20 20 20 20 20 20 7a 77 | ,.b->pointer);...[............zw |
| 6120 | 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 61 64 64 5f 6c 69 73 74 65 6e | p_relative_pointer_v1_add_listen |
| 6140 | 65 72 28 62 2d 3e 72 65 6c 5f 70 6f 69 6e 74 65 72 2c 20 26 72 65 6c 5f 70 6f 69 6e 74 65 72 5f | er(b->rel_pointer,.&rel_pointer_ |
| 6160 | 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 2f 20 20 | listener,.b);............}.../.. |
| 6180 | 20 20 20 20 20 20 69 66 20 28 62 2d 3e 70 74 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 26 26 20 | ......if.(b->ptr_constraints.&&. |
| 61a0 | 62 2d 3e 73 75 72 66 61 63 65 29 20 7b 00 00 00 48 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e | b->surface).{...H............b-> |
| 61c0 | 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e | locked_pointer.=.zwp_pointer_con |
| 61e0 | 73 74 72 61 69 6e 74 73 5f 76 31 5f 6c 6f 63 6b 5f 70 6f 69 6e 74 65 72 28 00 00 00 41 20 20 20 | straints_v1_lock_pointer(...A... |
| 6200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 70 74 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 2c | .............b->ptr_constraints, |
| 6220 | 20 62 2d 3e 73 75 72 66 61 63 65 2c 20 62 2d 3e 70 6f 69 6e 74 65 72 2c 20 4e 55 4c 4c 2c 00 00 | .b->surface,.b->pointer,.NULL,.. |
| 6240 | 00 40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5a 57 50 5f 50 4f 49 4e 54 45 52 5f 43 4f | .@................ZWP_POINTER_CO |
| 6260 | 4e 53 54 52 41 49 4e 54 53 5f 56 31 5f 4c 49 46 45 54 49 4d 45 5f 50 45 52 53 49 53 54 45 4e 54 | NSTRAINTS_V1_LIFETIME_PERSISTENT |
| 6280 | 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 3f 20 20 20 20 | );............}........}...?.... |
| 62a0 | 69 66 20 28 28 63 61 70 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 4b | if.((caps.&.WL_SEAT_CAPABILITY_K |
| 62c0 | 45 59 42 4f 41 52 44 29 20 26 26 20 21 62 2d 3e 6b 65 79 62 6f 61 72 64 29 20 7b 00 00 00 31 20 | EYBOARD).&&.!b->keyboard).{...1. |
| 62e0 | 20 20 20 20 20 20 20 62 2d 3e 6b 65 79 62 6f 61 72 64 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 | .......b->keyboard.=.wl_seat_get |
| 6300 | 5f 6b 65 79 62 6f 61 72 64 28 73 65 61 74 29 3b 00 00 00 45 20 20 20 20 20 20 20 20 77 6c 5f 6b | _keyboard(seat);...E........wl_k |
| 6320 | 65 79 62 6f 61 72 64 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 6b 65 79 62 6f 61 72 64 | eyboard_add_listener(b->keyboard |
| 6340 | 2c 20 26 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 05 20 20 20 | ,.&keyboard_listener,.b);....... |
| 6360 | 20 7d 00 00 00 01 7d 00 00 00 45 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 61 74 5f 6e 61 6d 65 | .}....}...Estatic.void.seat_name |
| 6380 | 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 20 2a 73 2c 20 63 6f 6e | (void.*d,.struct.wl_seat.*s,.con |
| 63a0 | 73 74 20 63 68 61 72 20 2a 6e 61 6d 65 29 20 7b 00 00 00 21 20 20 20 20 28 76 6f 69 64 29 64 3b | st.char.*name).{...!....(void)d; |
| 63c0 | 20 28 76 6f 69 64 29 73 3b 20 28 76 6f 69 64 29 6e 61 6d 65 3b 00 00 00 01 7d 00 00 00 56 73 74 | .(void)s;.(void)name;....}...Vst |
| 63e0 | 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 5f 6c 69 73 74 65 6e | atic.const.struct.wl_seat_listen |
| 6400 | 65 72 20 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 20 73 65 61 74 5f 63 61 70 61 62 69 | er.seat_listener.=.{.seat_capabi |
| 6420 | 6c 69 74 69 65 73 2c 20 73 65 61 74 5f 6e 61 6d 65 20 7d 3b 00 00 00 00 00 00 00 4f 73 74 61 74 | lities,.seat_name.};.......Ostat |
| 6440 | 69 63 20 76 6f 69 64 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 | ic.void.registry_global(void.*da |
| 6460 | 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 65 67 2c 20 75 69 6e | ta,.struct.wl_registry.*reg,.uin |
| 6480 | 74 33 32 5f 74 20 6e 61 6d 65 2c 00 00 00 47 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | t32_t.name,...G................. |
| 64a0 | 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 69 6e 74 65 72 66 61 63 | ............const.char.*interfac |
| 64c0 | 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 65 72 73 69 6f 6e 29 20 7b 00 00 00 12 20 20 20 20 28 76 | e,.uint32_t.version).{........(v |
| 64e0 | 6f 69 64 29 76 65 72 73 69 6f 6e 3b 00 00 00 18 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 | oid)version;........WlBackend.*b |
| 6500 | 20 3d 20 64 61 74 61 3b 00 00 00 3b 20 20 20 20 69 66 20 28 21 73 74 72 63 6d 70 28 69 6e 74 65 | .=.data;...;....if.(!strcmp(inte |
| 6520 | 72 66 61 63 65 2c 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 69 6e 74 65 72 66 61 63 65 2e 6e | rface,.wl_compositor_interface.n |
| 6540 | 61 6d 65 29 29 20 7b 00 00 00 51 20 20 20 20 20 20 20 20 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 | ame)).{...Q........b->compositor |
| 6560 | 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 | .=.wl_registry_bind(reg,.name,.& |
| 6580 | 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 69 6e 74 65 72 66 61 63 65 2c 20 34 29 3b 00 00 00 3c | wl_compositor_interface,.4);...< |
| 65a0 | 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 | ....}.else.if.(!strcmp(interface |
| 65c0 | 2c 20 77 6c 5f 73 65 61 74 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b 00 00 00 45 | ,.wl_seat_interface.name)).{...E |
| 65e0 | 20 20 20 20 20 20 20 20 62 2d 3e 73 65 61 74 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 | ........b->seat.=.wl_registry_bi |
| 6600 | 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 73 65 61 74 5f 69 6e 74 65 72 66 61 63 65 | nd(reg,.name,.&wl_seat_interface |
| 6620 | 2c 20 35 29 3b 00 00 00 39 20 20 20 20 20 20 20 20 77 6c 5f 73 65 61 74 5f 61 64 64 5f 6c 69 73 | ,.5);...9........wl_seat_add_lis |
| 6640 | 74 65 6e 65 72 28 62 2d 3e 73 65 61 74 2c 20 26 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 2c 20 62 | tener(b->seat,.&seat_listener,.b |
| 6660 | 29 3b 00 00 00 40 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 6d 70 28 69 6e 74 | );...@....}.else.if.(!strcmp(int |
| 6680 | 65 72 66 61 63 65 2c 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 | erface,.xdg_wm_base_interface.na |
| 66a0 | 6d 65 29 29 20 7b 00 00 00 4c 20 20 20 20 20 20 20 20 62 2d 3e 77 6d 5f 62 61 73 65 20 3d 20 77 | me)).{...L........b->wm_base.=.w |
| 66c0 | 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 78 64 67 5f | l_registry_bind(reg,.name,.&xdg_ |
| 66e0 | 77 6d 5f 62 61 73 65 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 00 43 20 20 20 20 20 20 | wm_base_interface,.1);...C...... |
| 6700 | 20 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 77 6d | ..xdg_wm_base_add_listener(b->wm |
| 6720 | 5f 62 61 73 65 2c 20 26 77 6d 5f 62 61 73 65 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 | _base,.&wm_base_listener,.b);... |
| 6740 | 54 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 | T....}.else.if.(!strcmp(interfac |
| 6760 | 65 2c 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f | e,.zwp_relative_pointer_manager_ |
| 6780 | 76 31 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b 00 00 00 64 20 20 20 20 20 20 20 | v1_interface.name)).{...d....... |
| 67a0 | 20 62 2d 3e 72 65 6c 5f 70 74 72 5f 6d 67 72 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 | .b->rel_ptr_mgr.=.wl_registry_bi |
| 67c0 | 6e 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e | nd(reg,.name,.&zwp_relative_poin |
| 67e0 | 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 00 | ter_manager_v1_interface,.1);... |
| 6800 | 4f 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 21 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 | O....}.else.if.(!strcmp(interfac |
| 6820 | 65 2c 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 69 6e | e,.zwp_pointer_constraints_v1_in |
| 6840 | 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 29 20 7b 00 00 00 63 20 20 20 20 20 20 20 20 62 2d 3e 70 | terface.name)).{...c........b->p |
| 6860 | 74 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e | tr_constraints.=.wl_registry_bin |
| 6880 | 64 28 72 65 67 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 | d(reg,.name,.&zwp_pointer_constr |
| 68a0 | 61 69 6e 74 73 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 00 05 20 20 20 20 7d | aints_v1_interface,.1);........} |
| 68c0 | 00 00 00 01 7d 00 00 00 53 73 74 61 74 69 63 20 76 6f 69 64 20 72 65 67 69 73 74 72 79 5f 67 6c | ....}...Sstatic.void.registry_gl |
| 68e0 | 6f 62 61 6c 5f 72 65 6d 6f 76 65 28 76 6f 69 64 20 2a 64 2c 20 73 74 72 75 63 74 20 77 6c 5f 72 | obal_remove(void.*d,.struct.wl_r |
| 6900 | 65 67 69 73 74 72 79 20 2a 72 2c 20 75 69 6e 74 33 32 5f 74 20 6e 61 6d 65 29 20 7b 00 00 00 21 | egistry.*r,.uint32_t.name).{...! |
| 6920 | 20 20 20 20 28 76 6f 69 64 29 64 3b 20 28 76 6f 69 64 29 72 3b 20 28 76 6f 69 64 29 6e 61 6d 65 | ....(void)d;.(void)r;.(void)name |
| 6940 | 3b 00 00 00 01 7d 00 00 00 69 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c | ;....}...istatic.const.struct.wl |
| 6960 | 5f 72 65 67 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 20 72 65 67 69 73 74 72 79 5f 6c 69 73 74 | _registry_listener.registry_list |
| 6980 | 65 6e 65 72 20 3d 20 7b 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 2c 20 72 65 67 69 73 74 | ener.=.{.registry_global,.regist |
| 69a0 | 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d 6f 76 65 20 7d 3b 00 00 00 00 00 00 00 4e 69 6e 74 20 77 | ry_global_remove.};.......Nint.w |
| 69c0 | 69 6e 64 6f 77 5f 77 61 79 6c 61 6e 64 5f 69 6e 69 74 28 57 69 6e 64 6f 77 20 2a 77 2c 20 69 6e | indow_wayland_init(Window.*w,.in |
| 69e0 | 74 20 77 69 64 74 68 2c 20 69 6e 74 20 68 65 69 67 68 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 | t.width,.int.height,.const.char. |
| 6a00 | 2a 74 69 74 6c 65 29 20 7b 00 00 00 30 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 | *title).{...0....WlBackend.*b.=. |
| 6a20 | 63 61 6c 6c 6f 63 28 31 2c 20 73 69 7a 65 6f 66 28 57 6c 42 61 63 6b 65 6e 64 29 29 3b 00 00 00 | calloc(1,.sizeof(WlBackend));... |
| 6a40 | 14 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 20 3d 20 77 3b 00 00 00 13 20 20 20 20 77 2d 3e | .....b->win_inst.=.w;........w-> |
| 6a60 | 62 61 63 6b 65 6e 64 20 3d 20 62 3b 00 00 00 00 00 00 00 2a 20 20 20 20 62 2d 3e 64 69 73 70 6c | backend.=.b;.......*....b->displ |
| 6a80 | 61 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 6f 6e 6e 65 63 74 28 4e 55 4c 4c 29 3b 00 00 | ay.=.wl_display_connect(NULL);.. |
| 6aa0 | 00 2b 20 20 20 20 69 66 20 28 21 62 2d 3e 64 69 73 70 6c 61 79 29 20 7b 20 66 72 65 65 28 62 29 | .+....if.(!b->display).{.free(b) |
| 6ac0 | 3b 20 72 65 74 75 72 6e 20 30 3b 20 7d 00 00 00 00 00 00 00 37 20 20 20 20 62 2d 3e 78 6b 62 5f | ;.return.0;.}.......7....b->xkb_ |
| 6ae0 | 63 74 78 20 3d 20 78 6b 62 5f 63 6f 6e 74 65 78 74 5f 6e 65 77 28 58 4b 42 5f 43 4f 4e 54 45 58 | ctx.=.xkb_context_new(XKB_CONTEX |
| 6b00 | 54 5f 4e 4f 5f 46 4c 41 47 53 29 3b 00 00 00 00 00 00 00 36 20 20 20 20 62 2d 3e 72 65 67 69 73 | T_NO_FLAGS);.......6....b->regis |
| 6b20 | 74 72 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 72 65 67 69 73 74 72 79 28 62 2d | try.=.wl_display_get_registry(b- |
| 6b40 | 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 41 20 20 20 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 61 64 | >display);...A....wl_registry_ad |
| 6b60 | 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 72 65 67 69 73 74 72 79 2c 20 26 72 65 67 69 73 74 72 | d_listener(b->registry,.®istr |
| 6b80 | 79 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 25 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 | y_listener,.b);...%....wl_displa |
| 6ba0 | 79 5f 72 6f 75 6e 64 74 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 25 20 20 20 20 | y_roundtrip(b->display);...%.... |
| 6bc0 | 77 6c 5f 64 69 73 70 6c 61 79 5f 72 6f 75 6e 64 74 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 79 29 | wl_display_roundtrip(b->display) |
| 6be0 | 3b 00 00 00 00 00 00 00 28 20 20 20 20 69 66 20 28 21 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 20 | ;.......(....if.(!b->compositor. |
| 6c00 | 7c 7c 20 21 62 2d 3e 77 6d 5f 62 61 73 65 29 20 7b 00 00 00 2a 20 20 20 20 20 20 20 20 77 6c 5f | ||.!b->wm_base).{...*........wl_ |
| 6c20 | 64 69 73 70 6c 61 79 5f 64 69 73 63 6f 6e 6e 65 63 74 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 | display_disconnect(b->display);. |
| 6c40 | 00 00 10 20 20 20 20 20 20 20 20 66 72 65 65 28 62 29 3b 00 00 00 11 20 20 20 20 20 20 20 20 72 | ...........free(b);............r |
| 6c60 | 65 74 75 72 6e 20 30 3b 00 00 00 05 20 20 20 20 7d 00 00 00 00 00 00 00 3d 20 20 20 20 62 2d 3e | eturn.0;........}.......=....b-> |
| 6c80 | 73 75 72 66 61 63 65 20 3d 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 63 72 65 61 74 65 5f 73 | surface.=.wl_compositor_create_s |
| 6ca0 | 75 72 66 61 63 65 28 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 29 3b 00 00 00 49 20 20 20 20 62 2d | urface(b->compositor);...I....b- |
| 6cc0 | 3e 78 64 67 5f 73 75 72 66 61 63 65 20 3d 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 67 65 74 5f 78 | >xdg_surface.=.xdg_wm_base_get_x |
| 6ce0 | 64 67 5f 73 75 72 66 61 63 65 28 62 2d 3e 77 6d 5f 62 61 73 65 2c 20 62 2d 3e 73 75 72 66 61 63 | dg_surface(b->wm_base,.b->surfac |
| 6d00 | 65 29 3b 00 00 00 48 20 20 20 20 78 64 67 5f 73 75 72 66 61 63 65 5f 61 64 64 5f 6c 69 73 74 65 | e);...H....xdg_surface_add_liste |
| 6d20 | 6e 65 72 28 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 2c 20 26 78 64 67 5f 73 75 72 66 61 63 65 | ner(b->xdg_surface,.&xdg_surface |
| 6d40 | 5f 6c 69 73 74 65 6e 65 72 5f 2c 20 62 29 3b 00 00 00 3f 20 20 20 20 62 2d 3e 78 64 67 5f 74 6f | _listener_,.b);...?....b->xdg_to |
| 6d60 | 70 6c 65 76 65 6c 20 3d 20 78 64 67 5f 73 75 72 66 61 63 65 5f 67 65 74 5f 74 6f 70 6c 65 76 65 | plevel.=.xdg_surface_get_topleve |
| 6d80 | 6c 28 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 29 3b 00 00 00 46 20 20 20 20 78 64 67 5f 74 6f | l(b->xdg_surface);...F....xdg_to |
| 6da0 | 70 6c 65 76 65 6c 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 78 64 67 5f 74 6f 70 6c 65 | plevel_add_listener(b->xdg_tople |
| 6dc0 | 76 65 6c 2c 20 26 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 33 | vel,.&toplevel_listener,.b);...3 |
| 6de0 | 20 20 20 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 5f 73 65 74 5f 74 69 74 6c 65 28 62 2d 3e 78 64 | ....xdg_toplevel_set_title(b->xd |
| 6e00 | 67 5f 74 6f 70 6c 65 76 65 6c 2c 20 74 69 74 6c 65 29 3b 00 00 00 22 20 20 20 20 77 6c 5f 73 75 | g_toplevel,.title);..."....wl_su |
| 6e20 | 72 66 61 63 65 5f 63 6f 6d 6d 69 74 28 62 2d 3e 73 75 72 66 61 63 65 29 3b 00 00 00 00 00 00 00 | rface_commit(b->surface);....... |
| 6e40 | 3b 20 20 20 20 77 68 69 6c 65 20 28 21 62 2d 3e 63 6f 6e 66 69 67 75 72 65 64 29 20 77 6c 5f 64 | ;....while.(!b->configured).wl_d |
| 6e60 | 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 00 | isplay_dispatch(b->display);.... |
| 6e80 | 00 00 00 44 20 20 20 20 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 20 3d 20 77 6c 5f 65 67 6c 5f 77 | ...D....b->egl_window.=.wl_egl_w |
| 6ea0 | 69 6e 64 6f 77 5f 63 72 65 61 74 65 28 62 2d 3e 73 75 72 66 61 63 65 2c 20 77 69 64 74 68 2c 20 | indow_create(b->surface,.width,. |
| 6ec0 | 68 65 69 67 68 74 29 3b 00 00 00 00 00 00 00 45 20 20 20 20 62 2d 3e 65 67 6c 5f 64 69 73 70 6c | height);.......E....b->egl_displ |
| 6ee0 | 61 79 20 3d 20 65 67 6c 47 65 74 44 69 73 70 6c 61 79 28 28 45 47 4c 4e 61 74 69 76 65 44 69 73 | ay.=.eglGetDisplay((EGLNativeDis |
| 6f00 | 70 6c 61 79 54 79 70 65 29 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 2e 20 20 20 20 65 67 6c | playType)b->display);........egl |
| 6f20 | 49 6e 69 74 69 61 6c 69 7a 65 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 4e 55 4c 4c 2c | Initialize(b->egl_display,.NULL, |
| 6f40 | 20 4e 55 4c 4c 29 3b 00 00 00 1f 20 20 20 20 65 67 6c 42 69 6e 64 41 50 49 28 45 47 4c 5f 4f 50 | .NULL);........eglBindAPI(EGL_OP |
| 6f60 | 45 4e 47 4c 5f 41 50 49 29 3b 00 00 00 00 00 00 00 1c 20 20 20 20 45 47 4c 69 6e 74 20 63 66 67 | ENGL_API);............EGLint.cfg |
| 6f80 | 5f 61 74 74 72 69 62 73 5b 5d 20 3d 20 7b 00 00 00 29 20 20 20 20 20 20 20 20 45 47 4c 5f 53 55 | _attribs[].=.{...)........EGL_SU |
| 6fa0 | 52 46 41 43 45 5f 54 59 50 45 2c 20 45 47 4c 5f 57 49 4e 44 4f 57 5f 42 49 54 2c 00 00 00 3d 20 | RFACE_TYPE,.EGL_WINDOW_BIT,...=. |
| 6fc0 | 20 20 20 20 20 20 20 45 47 4c 5f 52 45 44 5f 53 49 5a 45 2c 20 38 2c 20 45 47 4c 5f 47 52 45 45 | .......EGL_RED_SIZE,.8,.EGL_GREE |
| 6fe0 | 4e 5f 53 49 5a 45 2c 20 38 2c 20 45 47 4c 5f 42 4c 55 45 5f 53 49 5a 45 2c 20 38 2c 00 00 00 1b | N_SIZE,.8,.EGL_BLUE_SIZE,.8,.... |
| 7000 | 20 20 20 20 20 20 20 20 45 47 4c 5f 44 45 50 54 48 5f 53 49 5a 45 2c 20 32 34 2c 00 00 00 2c 20 | ........EGL_DEPTH_SIZE,.24,...,. |
| 7020 | 20 20 20 20 20 20 20 45 47 4c 5f 52 45 4e 44 45 52 41 42 4c 45 5f 54 59 50 45 2c 20 45 47 4c 5f | .......EGL_RENDERABLE_TYPE,.EGL_ |
| 7040 | 4f 50 45 4e 47 4c 5f 42 49 54 2c 00 00 00 10 20 20 20 20 20 20 20 20 45 47 4c 5f 4e 4f 4e 45 00 | OPENGL_BIT,............EGL_NONE. |
| 7060 | 00 00 06 20 20 20 20 7d 3b 00 00 00 15 20 20 20 20 45 47 4c 43 6f 6e 66 69 67 20 63 6f 6e 66 69 | .......};........EGLConfig.confi |
| 7080 | 67 3b 00 00 00 16 20 20 20 20 45 47 4c 69 6e 74 20 6e 75 6d 5f 63 6f 6e 66 69 67 3b 00 00 00 4a | g;........EGLint.num_config;...J |
| 70a0 | 20 20 20 20 65 67 6c 43 68 6f 6f 73 65 43 6f 6e 66 69 67 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c | ....eglChooseConfig(b->egl_displ |
| 70c0 | 61 79 2c 20 63 66 67 5f 61 74 74 72 69 62 73 2c 20 26 63 6f 6e 66 69 67 2c 20 31 2c 20 26 6e 75 | ay,.cfg_attribs,.&config,.1,.&nu |
| 70e0 | 6d 5f 63 6f 6e 66 69 67 29 3b 00 00 00 00 00 00 00 43 20 20 20 20 62 2d 3e 65 67 6c 5f 73 75 72 | m_config);.......C....b->egl_sur |
| 7100 | 66 61 63 65 20 3d 20 65 67 6c 43 72 65 61 74 65 57 69 6e 64 6f 77 53 75 72 66 61 63 65 28 62 2d | face.=.eglCreateWindowSurface(b- |
| 7120 | 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 00 00 00 57 20 20 20 20 20 20 20 | >egl_display,.config,...W....... |
| 7140 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 7160 | 20 20 20 20 20 20 28 45 47 4c 4e 61 74 69 76 65 57 69 6e 64 6f 77 54 79 70 65 29 62 2d 3e 65 67 | ......(EGLNativeWindowType)b->eg |
| 7180 | 6c 5f 77 69 6e 64 6f 77 2c 20 4e 55 4c 4c 29 3b 00 00 00 00 00 00 00 1c 20 20 20 20 45 47 4c 69 | l_window,.NULL);............EGLi |
| 71a0 | 6e 74 20 63 74 78 5f 61 74 74 72 69 62 73 5b 5d 20 3d 20 7b 00 00 00 25 20 20 20 20 20 20 20 20 | nt.ctx_attribs[].=.{...%........ |
| 71c0 | 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4d 41 4a 4f 52 5f 56 45 52 53 49 4f 4e 2c 20 32 2c 00 00 00 | EGL_CONTEXT_MAJOR_VERSION,.2,... |
| 71e0 | 25 20 20 20 20 20 20 20 20 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4d 49 4e 4f 52 5f 56 45 52 53 49 | %........EGL_CONTEXT_MINOR_VERSI |
| 7200 | 4f 4e 2c 20 31 2c 00 00 00 56 20 20 20 20 20 20 20 20 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4f 50 | ON,.1,...V........EGL_CONTEXT_OP |
| 7220 | 45 4e 47 4c 5f 50 52 4f 46 49 4c 45 5f 4d 41 53 4b 2c 20 45 47 4c 5f 43 4f 4e 54 45 58 54 5f 4f | ENGL_PROFILE_MASK,.EGL_CONTEXT_O |
| 7240 | 50 45 4e 47 4c 5f 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 5f 50 52 4f 46 49 4c 45 5f 42 49 54 2c | PENGL_COMPATIBILITY_PROFILE_BIT, |
| 7260 | 00 00 00 10 20 20 20 20 20 20 20 20 45 47 4c 5f 4e 4f 4e 45 00 00 00 06 20 20 20 20 7d 3b 00 00 | ............EGL_NONE........};.. |
| 7280 | 00 5b 20 20 20 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 20 3d 20 65 67 6c 43 72 65 61 74 65 | .[....b->egl_context.=.eglCreate |
| 72a0 | 43 6f 6e 74 65 78 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 20 | Context(b->egl_display,.config,. |
| 72c0 | 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 2c 20 63 74 78 5f 61 74 74 72 69 62 73 29 3b 00 00 00 | EGL_NO_CONTEXT,.ctx_attribs);... |
| 72e0 | 53 20 20 20 20 65 67 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c | S....eglMakeCurrent(b->egl_displ |
| 7300 | 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 | ay,.b->egl_surface,.b->egl_surfa |
| 7320 | 63 65 2c 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 27 20 20 20 20 65 67 6c 53 | ce,.b->egl_context);...'....eglS |
| 7340 | 77 61 70 49 6e 74 65 72 76 61 6c 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 31 29 3b 00 | wapInterval(b->egl_display,.1);. |
| 7360 | 00 00 00 00 00 00 1b 20 20 20 20 77 2d 3e 73 74 61 74 65 2e 77 69 64 74 68 20 3d 20 77 69 64 74 | ...........w->state.width.=.widt |
| 7380 | 68 3b 00 00 00 1d 20 20 20 20 77 2d 3e 73 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 65 69 67 | h;........w->state.height.=.heig |
| 73a0 | 68 74 3b 00 00 00 00 00 00 00 25 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 6f 75 6e 64 74 | ht;.......%....wl_display_roundt |
| 73c0 | 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 00 00 00 00 0d 20 20 20 20 72 65 74 75 | rip(b->display);............retu |
| 73e0 | 72 6e 20 31 3b 00 00 00 01 7d 00 00 00 00 00 00 00 25 76 6f 69 64 20 77 69 6e 64 6f 77 5f 77 61 | rn.1;....}.......%void.window_wa |
| 7400 | 79 6c 61 6e 64 5f 70 6f 6c 6c 28 57 69 6e 64 6f 77 20 2a 77 29 20 7b 00 00 00 1e 20 20 20 20 57 | yland_poll(Window.*w).{........W |
| 7420 | 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 77 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 1a 20 20 20 | lBackend.*b.=.w->backend;....... |
| 7440 | 20 77 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 78 20 3d 20 30 3b 00 00 00 1a 20 20 20 20 77 | .w->state.mouse_dx.=.0;........w |
| 7460 | 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 79 20 3d 20 30 3b 00 00 00 2c 20 20 20 20 77 6c 5f | ->state.mouse_dy.=.0;...,....wl_ |
| 7480 | 64 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 5f 70 65 6e 64 69 6e 67 28 62 2d 3e 64 69 73 70 | display_dispatch_pending(b->disp |
| 74a0 | 6c 61 79 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 66 6c 75 73 68 28 62 2d | lay);...!....wl_display_flush(b- |
| 74c0 | 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 25 76 6f 69 64 20 77 69 6e 64 | >display);....}.......%void.wind |
| 74e0 | 6f 77 5f 77 61 79 6c 61 6e 64 5f 73 77 61 70 28 57 69 6e 64 6f 77 20 2a 77 29 20 7b 00 00 00 1e | ow_wayland_swap(Window.*w).{.... |
| 7500 | 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 77 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 | ....WlBackend.*b.=.w->backend;.. |
| 7520 | 00 33 20 20 20 20 65 67 6c 53 77 61 70 42 75 66 66 65 72 73 28 62 2d 3e 65 67 6c 5f 64 69 73 70 | .3....eglSwapBuffers(b->egl_disp |
| 7540 | 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 | lay,.b->egl_surface);....}...... |
| 7560 | 00 28 76 6f 69 64 20 77 69 6e 64 6f 77 5f 77 61 79 6c 61 6e 64 5f 64 65 73 74 72 6f 79 28 57 69 | .(void.window_wayland_destroy(Wi |
| 7580 | 6e 64 6f 77 20 2a 77 29 20 7b 00 00 00 1e 20 20 20 20 57 6c 42 61 63 6b 65 6e 64 20 2a 62 20 3d | ndow.*w).{........WlBackend.*b.= |
| 75a0 | 20 77 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 4c 20 20 20 20 69 66 20 28 62 2d 3e 6c 6f 63 6b 65 | .w->backend;...L....if.(b->locke |
| 75c0 | 64 5f 70 6f 69 6e 74 65 72 29 20 7a 77 70 5f 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 5f 76 31 | d_pointer).zwp_locked_pointer_v1 |
| 75e0 | 5f 64 65 73 74 72 6f 79 28 62 2d 3e 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 29 3b 00 00 00 48 | _destroy(b->locked_pointer);...H |
| 7600 | 20 20 20 20 69 66 20 28 62 2d 3e 72 65 6c 5f 70 6f 69 6e 74 65 72 29 20 7a 77 70 5f 72 65 6c 61 | ....if.(b->rel_pointer).zwp_rela |
| 7620 | 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 64 65 73 74 72 6f 79 28 62 2d 3e 72 65 6c 5f 70 | tive_pointer_v1_destroy(b->rel_p |
| 7640 | 6f 69 6e 74 65 72 29 3b 00 00 00 53 20 20 20 20 65 67 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 | ointer);...S....eglMakeCurrent(b |
| 7660 | 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 45 47 4c 5f 4e 4f 5f 53 55 52 46 41 43 45 2c 20 45 | ->egl_display,.EGL_NO_SURFACE,.E |
| 7680 | 47 4c 5f 4e 4f 5f 53 55 52 46 41 43 45 2c 20 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 29 3b 00 | GL_NO_SURFACE,.EGL_NO_CONTEXT);. |
| 76a0 | 00 00 36 20 20 20 20 65 67 6c 44 65 73 74 72 6f 79 53 75 72 66 61 63 65 28 62 2d 3e 65 67 6c 5f | ..6....eglDestroySurface(b->egl_ |
| 76c0 | 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 29 3b 00 00 00 36 20 20 20 | display,.b->egl_surface);...6... |
| 76e0 | 20 65 67 6c 44 65 73 74 72 6f 79 43 6f 6e 74 65 78 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 | .eglDestroyContext(b->egl_displa |
| 7700 | 79 2c 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 29 20 20 20 20 77 6c 5f 65 67 | y,.b->egl_context);...)....wl_eg |
| 7720 | 6c 5f 77 69 6e 64 6f 77 5f 64 65 73 74 72 6f 79 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 3b | l_window_destroy(b->egl_window); |
| 7740 | 00 00 00 2a 20 20 20 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 5f 64 65 73 74 72 6f 79 28 62 2d 3e | ...*....xdg_toplevel_destroy(b-> |
| 7760 | 78 64 67 5f 74 6f 70 6c 65 76 65 6c 29 3b 00 00 00 28 20 20 20 20 78 64 67 5f 73 75 72 66 61 63 | xdg_toplevel);...(....xdg_surfac |
| 7780 | 65 5f 64 65 73 74 72 6f 79 28 62 2d 3e 78 64 67 5f 73 75 72 66 61 63 65 29 3b 00 00 00 23 20 20 | e_destroy(b->xdg_surface);...#.. |
| 77a0 | 20 20 77 6c 5f 73 75 72 66 61 63 65 5f 64 65 73 74 72 6f 79 28 62 2d 3e 73 75 72 66 61 63 65 29 | ..wl_surface_destroy(b->surface) |
| 77c0 | 3b 00 00 00 26 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 63 6f 6e 6e 65 63 74 28 62 | ;...&....wl_display_disconnect(b |
| 77e0 | 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 0c 20 20 20 20 66 72 65 65 28 62 29 3b 00 00 00 01 7d | ->display);........free(b);....} |
| 7800 | 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 45 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 | 5...............E............... |
| 7820 | 00 00 00 00 00 00 00 00 75 34 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 03 | ........u4..............5._..... |
| 7840 | 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff | ................................ |
| 7860 | 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 78a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 78c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 78e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 79a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 63 | ..............................jc |
| 79c0 | 48 4d 04 01 00 00 00 02 00 f5 18 00 00 00 cb 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 25 20 | HM............................%. |
| 79e0 | 20 20 20 20 20 20 20 62 2d 3e 73 65 61 74 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e | .......b->seat.=.wl_registry_bin |
| 7a00 | 64 28 72 65 f5 18 00 00 00 cc 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 6f 00 00 00 00 | d(re.......................o.... |
| 7a20 | 00 00 00 00 00 00 00 01 00 00 00 1c 20 20 20 20 2e 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e | .................relative_motion |
| 7a40 | 20 3d 20 72 65 6c 61 74 f5 18 00 00 00 70 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 | .=.relat.....p.................. |
| 7a60 | 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 00 01 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7a80 | 00 00 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6f 00 00 00 1c 00 | ..5.......................o..... |
| 7aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f9 0f 00 00 00 00 00 00 f5 18 00 00 00 00 | ................................ |
| 7ac0 | 6f 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 25 00 00 00 f9 0f 00 00 00 00 00 00 | o...............\...%........... |
| 7ae0 | 00 00 00 00 00 00 00 00 ff 0f 00 00 00 00 00 00 f5 18 00 00 00 00 cb 00 00 00 25 00 00 00 00 00 | ..........................%..... |
| 7b00 | 00 00 00 00 00 00 59 00 00 00 01 00 00 00 f8 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e5 0c | ......Y......................... |
| 7b20 | 00 00 00 00 00 00 35 81 5f d0 00 00 00 04 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 05 00 00 | ......5._....................... |
| 7b40 | 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 7ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 6a 63 48 73 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 | ............jcHs................ |
| 7cc0 | 02 00 00 00 00 00 00 01 25 00 00 00 13 23 64 65 66 69 6e 65 20 5f 47 4e 55 5f 53 4f 55 52 43 45 | ........%....#define._GNU_SOURCE |
| 7ce0 | 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 63 6c 69 65 6e 74 2e 68 3e 00 | ....#include.<wayland-client.h>. |
| 7d00 | 00 00 18 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 65 67 6c 2e 68 3e 00 00 00 14 23 | ...#include.<wayland-egl.h>....# |
| 7d20 | 69 6e 63 6c 75 64 65 20 3c 45 47 4c 2f 65 67 6c 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 | include.<EGL/egl.h>....#include. |
| 7d40 | 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 2e 68 | <stdlib.h>....#include.<string.h |
| 7d60 | 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 3e 00 00 00 13 23 69 6e 63 6c | >....#include.<stdio.h>....#incl |
| 7d80 | 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 77 69 6e 64 | ude.<unistd.h>....#include."wind |
| 7da0 | 6f 77 2e 68 22 00 00 00 26 23 69 6e 63 6c 75 64 65 20 22 78 64 67 2d 73 68 65 6c 6c 2d 63 6c 69 | ow.h"...&#include."xdg-shell-cli |
| 7dc0 | 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 39 23 69 6e 63 6c 75 64 65 20 22 72 65 6c | ent-protocol.h"...9#include."rel |
| 7de0 | 61 74 69 76 65 2d 70 6f 69 6e 74 65 72 2d 75 6e 73 74 61 62 6c 65 2d 76 31 2d 63 6c 69 65 6e 74 | ative-pointer-unstable-v1-client |
| 7e00 | 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 3c 23 69 6e 63 6c 75 64 65 20 22 70 6f 69 6e 74 65 | -protocol.h"...<#include."pointe |
| 7e20 | 72 2d 63 6f 6e 73 74 72 61 69 6e 74 73 2d 75 6e 73 74 61 62 6c 65 2d 76 31 2d 63 6c 69 65 6e 74 | r-constraints-unstable-v1-client |
| 7e40 | 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 00 00 00 00 10 74 79 70 65 64 65 66 20 73 74 72 75 | -protocol.h"........typedef.stru |
| 7e60 | 63 74 20 7b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 64 69 73 70 6c 61 79 20 2a 64 | ct.{........struct.wl_display.*d |
| 7e80 | 69 73 70 6c 61 79 3b 00 00 00 21 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 | isplay;...!....struct.wl_registr |
| 7ea0 | 79 20 2a 72 65 67 69 73 74 72 79 3b 00 00 00 25 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 63 6f | y.*registry;...%....struct.wl_co |
| 7ec0 | 6d 70 6f 73 69 74 6f 72 20 2a 63 6f 6d 70 6f 73 69 74 6f 72 3b 00 00 00 1f 20 20 20 20 73 74 72 | mpositor.*compositor;........str |
| 7ee0 | 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 3b 00 00 00 24 20 20 20 20 | uct.wl_surface.*surface;...$.... |
| 7f00 | 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 20 2a 78 64 67 5f 73 75 72 66 61 63 65 3b | struct.xdg_surface.*xdg_surface; |
| 7f20 | 00 00 00 26 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 20 2a 78 64 67 | ...&....struct.xdg_toplevel.*xdg |
| 7f40 | 5f 74 6f 70 6c 65 76 65 6c 3b 00 00 00 19 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 | _toplevel;........struct.wl_seat |
| 7f60 | 20 2a 73 65 61 74 3b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 | .*seat;........struct.wl_pointer |
| 7f80 | 20 2a 70 6f 69 6e 74 65 72 3b 00 00 00 21 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 | .*pointer;...!....struct.wl_keyb |
| 7fa0 | 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 3b 00 00 00 45 20 20 20 20 73 74 72 75 63 74 20 7a 77 | oard.*keyboard;...E....struct.zw |
| 7fc0 | 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 20 2a 72 | p_relative_pointer_manager_v1.*r |
| 7fe0 | 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 3b 00 00 00 35 20 20 20 20 | elative_pointer_manager;...5.... |
| 8000 | 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a | struct.zwp_relative_pointer_v1.* |
| 8020 | 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 3b 00 00 00 3b 20 20 20 20 73 74 72 75 63 74 20 | relative_pointer;...;....struct. |
| 8040 | 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 20 2a 70 6f 69 6e | zwp_pointer_constraints_v1.*poin |
| 8060 | 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 3b 00 00 00 31 20 20 20 20 73 74 72 75 63 74 20 7a | ter_constraints;...1....struct.z |
| 8080 | 77 70 5f 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a 6c 6f 63 6b 65 64 5f 70 6f 69 | wp_locked_pointer_v1.*locked_poi |
| 80a0 | 6e 74 65 72 3b 00 00 00 04 20 20 20 20 00 00 00 1b 20 20 20 20 45 47 4c 44 69 73 70 6c 61 79 20 | nter;................EGLDisplay. |
| 80c0 | 65 67 6c 5f 64 69 73 70 6c 61 79 3b 00 00 00 1b 20 20 20 20 45 47 4c 43 6f 6e 74 65 78 74 20 65 | egl_display;........EGLContext.e |
| 80e0 | 67 6c 5f 63 6f 6e 74 65 78 74 3b 00 00 00 1b 20 20 20 20 45 47 4c 53 75 72 66 61 63 65 20 65 67 | gl_context;........EGLSurface.eg |
| 8100 | 6c 5f 73 75 72 66 61 63 65 3b 00 00 00 25 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 65 67 6c 5f | l_surface;...%....struct.wl_egl_ |
| 8120 | 77 69 6e 64 6f 77 20 2a 65 67 6c 5f 77 69 6e 64 6f 77 3b 00 00 00 00 00 00 00 1b 20 20 20 20 4e | window.*egl_window;............N |
| 8140 | 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 69 6e 5f 69 6e 73 74 3b 00 00 00 13 20 20 20 20 69 6e | ativeWindow.*win_inst;........in |
| 8160 | 74 20 63 6f 6e 66 69 67 75 72 65 64 3b 00 00 00 11 7d 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e | t.configured;....}.WaylandBacken |
| 8180 | 64 3b 00 00 00 00 00 00 00 61 73 74 61 74 69 63 20 76 6f 69 64 20 78 64 67 5f 73 75 72 66 61 63 | d;.......astatic.void.xdg_surfac |
| 81a0 | 65 5f 63 6f 6e 66 69 67 75 72 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 | e_configure(void.*data,.struct.x |
| 81c0 | 64 67 5f 73 75 72 66 61 63 65 20 2a 78 64 67 5f 73 75 72 66 61 63 65 2c 20 75 69 6e 74 33 32 5f | dg_surface.*xdg_surface,.uint32_ |
| 81e0 | 74 20 73 65 72 69 61 6c 29 20 7b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e | t.serial).{........WaylandBacken |
| 8200 | 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 33 20 20 20 20 78 64 67 5f 73 75 72 66 61 63 65 5f | d.*b.=.data;...3....xdg_surface_ |
| 8220 | 61 63 6b 5f 63 6f 6e 66 69 67 75 72 65 28 78 64 67 5f 73 75 72 66 61 63 65 2c 20 73 65 72 69 61 | ack_configure(xdg_surface,.seria |
| 8240 | 6c 29 3b 00 00 00 16 20 20 20 20 62 2d 3e 63 6f 6e 66 69 67 75 72 65 64 20 3d 20 31 3b 00 00 00 | l);........b->configured.=.1;... |
| 8260 | 01 7d 00 00 00 00 00 00 00 42 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 | .}.......Bstatic.const.struct.xd |
| 8280 | 67 5f 73 75 72 66 61 63 65 5f 6c 69 73 74 65 6e 65 72 20 78 64 67 5f 73 75 72 66 61 63 65 5f 6c | g_surface_listener.xdg_surface_l |
| 82a0 | 69 73 74 65 6e 65 72 5f 20 3d 20 7b 00 00 00 26 20 20 20 20 2e 63 6f 6e 66 69 67 75 72 65 20 3d | istener_.=.{...&.....configure.= |
| 82c0 | 20 78 64 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 67 75 72 65 00 00 00 02 7d 3b 00 00 00 00 | .xdg_surface_configure....};.... |
| 82e0 | 00 00 00 83 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f 63 6f 6e 66 69 67 75 | ....static.void.toplevel_configu |
| 8300 | 72 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 | re(void.*data,.struct.xdg_toplev |
| 8320 | 65 6c 20 2a 74 6f 70 6c 65 76 65 6c 2c 20 69 6e 74 33 32 5f 74 20 77 69 64 74 68 2c 20 69 6e 74 | el.*toplevel,.int32_t.width,.int |
| 8340 | 33 32 5f 74 20 68 65 69 67 68 74 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 72 72 61 79 20 2a 73 74 | 32_t.height,.struct.wl_array.*st |
| 8360 | 61 74 65 73 29 20 7b 00 00 00 13 20 20 20 20 28 76 6f 69 64 29 74 6f 70 6c 65 76 65 6c 3b 00 00 | ates).{........(void)toplevel;.. |
| 8380 | 00 11 20 20 20 20 28 76 6f 69 64 29 73 74 61 74 65 73 3b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 | ......(void)states;........Wayla |
| 83a0 | 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 22 20 20 20 20 69 66 20 28 | ndBackend.*b.=.data;..."....if.( |
| 83c0 | 77 69 64 74 68 20 3e 20 30 20 26 26 20 68 65 69 67 68 74 20 3e 20 30 29 20 7b 00 00 00 29 20 20 | width.>.0.&&.height.>.0).{...).. |
| 83e0 | 20 20 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 77 69 64 74 68 20 3d | ......b->win_inst->state.width.= |
| 8400 | 20 77 69 64 74 68 3b 00 00 00 2b 20 20 20 20 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e | .width;...+........b->win_inst-> |
| 8420 | 73 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 65 69 67 68 74 3b 00 00 00 1c 20 20 20 20 20 20 | state.height.=.height;.......... |
| 8440 | 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 20 7b 00 00 00 45 20 20 20 20 20 20 | ..if.(b->egl_window).{...E...... |
| 8460 | 20 20 20 20 20 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 72 65 73 69 7a 65 28 62 2d 3e 65 67 | ......wl_egl_window_resize(b->eg |
| 8480 | 6c 5f 77 69 6e 64 6f 77 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 30 2c 20 30 29 3b 00 | l_window,.width,.height,.0,.0);. |
| 84a0 | 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 | ...........}........}....}...... |
| 84c0 | 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f 63 6c 6f 73 65 28 76 6f 69 | .Gstatic.void.toplevel_close(voi |
| 84e0 | 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 20 2a 74 6f | d.*data,.struct.xdg_toplevel.*to |
| 8500 | 70 6c 65 76 65 6c 29 20 7b 00 00 00 13 20 20 20 20 28 76 6f 69 64 29 74 6f 70 6c 65 76 65 6c 3b | plevel).{........(void)toplevel; |
| 8520 | 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 | ........WaylandBackend.*b.=.data |
| 8540 | 3b 00 00 00 28 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 73 68 6f 75 | ;...(....b->win_inst->state.shou |
| 8560 | 6c 64 5f 63 6c 6f 73 65 20 3d 20 31 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3f 73 74 61 74 69 63 | ld_close.=.1;....}.......?static |
| 8580 | 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 | .const.struct.xdg_toplevel_liste |
| 85a0 | 6e 65 72 20 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 24 20 20 20 | ner.toplevel_listener.=.{...$... |
| 85c0 | 20 2e 63 6f 6e 66 69 67 75 72 65 20 3d 20 74 6f 70 6c 65 76 65 6c 5f 63 6f 6e 66 69 67 75 72 65 | ..configure.=.toplevel_configure |
| 85e0 | 2c 00 00 00 1b 20 20 20 20 2e 63 6c 6f 73 65 20 3d 20 74 6f 70 6c 65 76 65 6c 5f 63 6c 6f 73 65 | ,.........close.=.toplevel_close |
| 8600 | 00 00 00 02 7d 3b 00 00 00 00 00 00 00 8e 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 | ....};........static.void.pointe |
| 8620 | 72 5f 65 6e 74 65 72 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f | r_enter(void.*data,.struct.wl_po |
| 8640 | 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c | inter.*pointer,.uint32_t.serial, |
| 8660 | 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 2c 20 77 6c 5f | .struct.wl_surface.*surface,.wl_ |
| 8680 | 66 69 78 65 64 5f 74 20 73 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 73 79 29 20 7b 00 00 00 4f | fixed_t.sx,.wl_fixed_t.sy).{...O |
| 86a0 | 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 | ....(void)data;.(void)pointer;.( |
| 86c0 | 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 73 75 72 66 61 63 65 3b 20 28 76 6f 69 | void)serial;.(void)surface;.(voi |
| 86e0 | 64 29 73 78 3b 20 28 76 6f 69 64 29 73 79 3b 00 00 00 01 7d 00 00 00 00 00 00 00 70 73 74 61 74 | d)sx;.(void)sy;....}.......pstat |
| 8700 | 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6c 65 61 76 65 28 76 6f 69 64 20 2a 64 61 74 61 | ic.void.pointer_leave(void.*data |
| 8720 | 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 2c 20 75 69 | ,.struct.wl_pointer.*pointer,.ui |
| 8740 | 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 | nt32_t.serial,.struct.wl_surface |
| 8760 | 20 2a 73 75 72 66 61 63 65 29 20 7b 00 00 00 3b 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 | .*surface).{...;....(void)data;. |
| 8780 | 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f | (void)pointer;.(void)serial;.(vo |
| 87a0 | 69 64 29 73 75 72 66 61 63 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 71 73 74 61 74 69 63 20 76 | id)surface;....}.......qstatic.v |
| 87c0 | 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 | oid.pointer_motion(void.*data,.s |
| 87e0 | 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 | truct.wl_pointer.*pointer,.uint3 |
| 8800 | 32 5f 74 20 74 69 6d 65 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 73 78 2c 20 77 6c 5f 66 69 78 65 | 2_t.time,.wl_fixed_t.sx,.wl_fixe |
| 8820 | 64 5f 74 20 73 79 29 20 7b 00 00 00 3e 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f | d_t.sy).{...>....(void)data;.(vo |
| 8840 | 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 73 78 | id)pointer;.(void)time;.(void)sx |
| 8860 | 3b 20 28 76 6f 69 64 29 73 79 3b 00 00 00 01 7d 00 00 00 00 00 00 00 85 73 74 61 74 69 63 20 76 | ;.(void)sy;....}........static.v |
| 8880 | 6f 69 64 20 70 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 | oid.pointer_button(void.*data,.s |
| 88a0 | 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 | truct.wl_pointer.*pointer,.uint3 |
| 88c0 | 32 5f 74 20 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 | 2_t.serial,.uint32_t.time,.uint3 |
| 88e0 | 32 5f 74 20 62 75 74 74 6f 6e 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 | 2_t.button,.uint32_t.state).{... |
| 8900 | 2c 20 20 20 20 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c | ,....(void)pointer;.(void)serial |
| 8920 | 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b | ;.(void)time;........WaylandBack |
| 8940 | 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 3d 20 20 20 20 69 6e 74 20 70 72 65 73 73 65 | end.*b.=.data;...=....int.presse |
| 8960 | 64 20 3d 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f | d.=.(state.==.WL_POINTER_BUTTON_ |
| 8980 | 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 3b 00 00 00 41 20 20 20 20 69 66 20 28 62 75 74 74 6f | STATE_PRESSED);...A....if.(butto |
| 89a0 | 6e 20 3d 3d 20 30 78 31 31 30 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d | n.==.0x110).b->win_inst->state.m |
| 89c0 | 6f 75 73 65 5f 6c 65 66 74 20 3d 20 70 72 65 73 73 65 64 3b 00 00 00 42 20 20 20 20 69 66 20 28 | ouse_left.=.pressed;...B....if.( |
| 89e0 | 62 75 74 74 6f 6e 20 3d 3d 20 30 78 31 31 31 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 | button.==.0x111).b->win_inst->st |
| 8a00 | 61 74 65 2e 6d 6f 75 73 65 5f 72 69 67 68 74 20 3d 20 70 72 65 73 73 65 64 3b 00 00 00 01 7d 00 | ate.mouse_right.=.pressed;....}. |
| 8a20 | 00 00 00 00 00 00 72 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 28 | ......rstatic.void.pointer_axis( |
| 8a40 | 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 | void.*data,.struct.wl_pointer.*p |
| 8a60 | 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 | ointer,.uint32_t.time,.uint32_t. |
| 8a80 | 61 78 69 73 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 76 61 6c 75 65 29 20 7b 00 00 00 43 20 20 20 | axis,.wl_fixed_t.value).{...C... |
| 8aa0 | 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 | .(void)data;.(void)pointer;.(voi |
| 8ac0 | 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 61 78 69 73 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b | d)time;.(void)axis;.(void)value; |
| 8ae0 | 00 00 00 01 7d 00 00 00 00 00 00 00 3c 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 | ....}.......<static.const.struct |
| 8b00 | 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 70 6f 69 6e 74 65 72 5f 6c 69 73 | .wl_pointer_listener.pointer_lis |
| 8b20 | 74 65 6e 65 72 20 3d 20 7b 00 00 00 1b 20 20 20 20 2e 65 6e 74 65 72 20 3d 20 70 6f 69 6e 74 65 | tener.=.{.........enter.=.pointe |
| 8b40 | 72 5f 65 6e 74 65 72 2c 00 00 00 1b 20 20 20 20 2e 6c 65 61 76 65 20 3d 20 70 6f 69 6e 74 65 72 | r_enter,.........leave.=.pointer |
| 8b60 | 5f 6c 65 61 76 65 2c 00 00 00 1d 20 20 20 20 2e 6d 6f 74 69 6f 6e 20 3d 20 70 6f 69 6e 74 65 72 | _leave,.........motion.=.pointer |
| 8b80 | 5f 6d 6f 74 69 6f 6e 2c 00 00 00 1d 20 20 20 20 2e 62 75 74 74 6f 6e 20 3d 20 70 6f 69 6e 74 65 | _motion,.........button.=.pointe |
| 8ba0 | 72 5f 62 75 74 74 6f 6e 2c 00 00 00 18 20 20 20 20 2e 61 78 69 73 20 3d 20 70 6f 69 6e 74 65 72 | r_button,.........axis.=.pointer |
| 8bc0 | 5f 61 78 69 73 00 00 00 02 7d 3b 00 00 00 00 00 00 00 c7 73 74 61 74 69 63 20 76 6f 69 64 20 72 | _axis....};........static.void.r |
| 8be0 | 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 | elative_motion(void.*data,.struc |
| 8c00 | 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a 72 65 6c 61 74 | t.zwp_relative_pointer_v1.*relat |
| 8c20 | 69 76 65 5f 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 20 75 74 69 6d 65 2c 20 75 69 6e | ive_pointer,.uint32_t.utime,.uin |
| 8c40 | 74 33 32 5f 74 20 73 74 69 6d 65 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 2c 20 77 6c 5f 66 | t32_t.stime,.wl_fixed_t.dx,.wl_f |
| 8c60 | 69 78 65 64 5f 74 20 64 79 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 5f 75 6e 61 63 63 65 6c | ixed_t.dy,.wl_fixed_t.dx_unaccel |
| 8c80 | 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 79 5f 75 6e 61 63 63 65 6c 29 20 7b 00 00 00 49 20 20 | ,.wl_fixed_t.dy_unaccel).{...I.. |
| 8ca0 | 20 20 28 76 6f 69 64 29 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 | ..(void)relative_pointer;.(void) |
| 8cc0 | 75 74 69 6d 65 3b 20 28 76 6f 69 64 29 73 74 69 6d 65 3b 20 28 76 6f 69 64 29 64 78 3b 20 28 76 | utime;.(void)stime;.(void)dx;.(v |
| 8ce0 | 6f 69 64 29 64 79 3b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 | oid)dy;........WaylandBackend.*b |
| 8d00 | 20 3d 20 64 61 74 61 3b 00 00 00 42 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 | .=.data;...B....b->win_inst->sta |
| 8d20 | 74 65 2e 6d 6f 75 73 65 5f 64 78 20 2b 3d 20 77 6c 5f 66 69 78 65 64 5f 74 6f 5f 64 6f 75 62 6c | te.mouse_dx.+=.wl_fixed_to_doubl |
| 8d40 | 65 28 64 78 5f 75 6e 61 63 63 65 6c 29 3b 00 00 00 42 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 | e(dx_unaccel);...B....b->win_ins |
| 8d60 | 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 79 20 2b 3d 20 77 6c 5f 66 69 78 65 64 5f 74 6f | t->state.mouse_dy.+=.wl_fixed_to |
| 8d80 | 5f 64 6f 75 62 6c 65 28 64 79 5f 75 6e 61 63 63 65 6c 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 | _double(dy_unaccel);....}....... |
| 8da0 | 52 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 | Rstatic.const.struct.zwp_relativ |
| 8dc0 | 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 6c 69 73 74 65 6e 65 72 20 72 65 6c 61 74 69 76 65 5f 70 | e_pointer_v1_listener.relative_p |
| 8de0 | 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 26 20 20 20 20 2e 72 65 6c 61 | ointer_listener.=.{...&.....rela |
| 8e00 | 74 69 76 65 5f 6d 6f 74 69 6f 6e 20 3d 20 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 00 00 00 | tive_motion.=.relative_motion... |
| 8e20 | 02 7d 3b 00 00 00 00 00 00 00 27 73 74 61 74 69 63 20 69 6e 74 20 6b 65 79 73 79 6d 5f 74 6f 5f | .};.......'static.int.keysym_to_ |
| 8e40 | 6b 65 79 28 75 69 6e 74 33 32 5f 74 20 6b 73 29 20 7b 00 00 00 11 20 20 20 20 73 77 69 74 63 68 | key(uint32_t.ks).{........switch |
| 8e60 | 20 28 6b 73 29 20 7b 00 00 00 2f 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 37 37 3a 20 | .(ks).{.../........case.0x0077:. |
| 8e80 | 63 61 73 65 20 30 78 30 30 35 37 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 57 3b 00 00 00 2f 20 20 | case.0x0057:.return.KEY_W;.../.. |
| 8ea0 | 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 36 31 3a 20 63 61 73 65 20 30 78 30 30 34 31 3a 20 | ......case.0x0061:.case.0x0041:. |
| 8ec0 | 72 65 74 75 72 6e 20 4b 45 59 5f 41 3b 00 00 00 2f 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 | return.KEY_A;.../........case.0x |
| 8ee0 | 30 30 37 33 3a 20 63 61 73 65 20 30 78 30 30 35 33 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 53 3b | 0073:.case.0x0053:.return.KEY_S; |
| 8f00 | 00 00 00 2f 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 36 34 3a 20 63 61 73 65 20 30 78 | .../........case.0x0064:.case.0x |
| 8f20 | 30 30 34 34 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 44 3b 00 00 00 26 20 20 20 20 20 20 20 20 63 | 0044:.return.KEY_D;...&........c |
| 8f40 | 61 73 65 20 30 78 30 30 32 30 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 53 50 41 43 45 3b 00 00 00 | ase.0x0020:.return.KEY_SPACE;... |
| 8f60 | 24 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 66 66 31 62 3a 20 72 65 74 75 72 6e 20 4b 45 59 | $........case.0xff1b:.return.KEY |
| 8f80 | 5f 45 53 43 3b 00 00 00 22 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 33 31 3a 20 72 65 | _ESC;..."........case.0x0031:.re |
| 8fa0 | 74 75 72 6e 20 4b 45 59 5f 31 3b 00 00 00 22 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 | turn.KEY_1;..."........case.0x00 |
| 8fc0 | 33 32 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 32 3b 00 00 00 22 20 20 20 20 20 20 20 20 63 61 73 | 32:.return.KEY_2;..."........cas |
| 8fe0 | 65 20 30 78 30 30 33 33 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 33 3b 00 00 00 1b 20 20 20 20 20 | e.0x0033:.return.KEY_3;......... |
| 9000 | 20 20 20 64 65 66 61 75 6c 74 3a 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 05 20 20 20 20 7d 00 | ...default:.return.-1;........}. |
| 9020 | 00 00 01 7d 00 00 00 00 00 00 00 82 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 | ...}........static.void.keyboard |
| 9040 | 5f 6b 65 79 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f | _key(void.*data,.struct.wl_keybo |
| 9060 | 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 | ard.*keyboard,.uint32_t.serial,. |
| 9080 | 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 6b 65 79 2c 20 75 69 6e | uint32_t.time,.uint32_t.key,.uin |
| 90a0 | 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 2d 20 20 20 20 28 76 6f 69 64 29 6b 65 79 62 | t32_t.state).{...-....(void)keyb |
| 90c0 | 6f 61 72 64 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 | oard;.(void)serial;.(void)time;. |
| 90e0 | 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b | .......WaylandBackend.*b.=.data; |
| 9100 | 00 00 00 1f 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6b 65 79 73 79 6d 20 3d 20 6b 65 79 20 2b 20 | ........uint32_t.keysym.=.key.+. |
| 9120 | 38 3b 20 00 00 00 22 20 20 20 20 69 6e 74 20 6b 20 3d 20 6b 65 79 73 79 6d 5f 74 6f 5f 6b 65 79 | 8;...."....int.k.=.keysym_to_key |
| 9140 | 28 6b 65 79 73 79 6d 29 3b 00 00 00 56 20 20 20 20 69 66 20 28 6b 20 3e 3d 20 30 29 20 62 2d 3e | (keysym);...V....if.(k.>=.0).b-> |
| 9160 | 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6b 65 79 73 5b 6b 5d 20 3d 20 28 73 74 61 74 65 | win_inst->state.keys[k].=.(state |
| 9180 | 20 3d 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 | .==.WL_KEYBOARD_KEY_STATE_PRESSE |
| 91a0 | 44 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 6f 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 | D);....}.......ostatic.void.keyb |
| 91c0 | 6f 61 72 64 5f 6b 65 79 6d 61 70 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 | oard_keymap(void.*data,.struct.w |
| 91e0 | 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 66 | l_keyboard.*keyboard,.uint32_t.f |
| 9200 | 6f 72 6d 61 74 2c 20 69 6e 74 20 66 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 69 7a 65 29 20 7b 00 | ormat,.int.fd,.uint32_t.size).{. |
| 9220 | 00 00 39 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 6b 65 79 62 6f 61 72 | ..9....(void)data;.(void)keyboar |
| 9240 | 64 3b 20 28 76 6f 69 64 29 66 6f 72 6d 61 74 3b 20 28 76 6f 69 64 29 73 69 7a 65 3b 00 00 00 0e | d;.(void)format;.(void)size;.... |
| 9260 | 20 20 20 20 63 6c 6f 73 65 28 66 64 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 8a 73 74 61 74 69 | ....close(fd);....}........stati |
| 9280 | 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 28 76 6f 69 64 20 2a 64 61 74 61 | c.void.keyboard_enter(void.*data |
| 92a0 | 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 2c 20 | ,.struct.wl_keyboard.*keyboard,. |
| 92c0 | 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 | uint32_t.serial,.struct.wl_surfa |
| 92e0 | 63 65 20 2a 73 75 72 66 61 63 65 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 72 72 61 79 20 2a 6b 65 | ce.*surface,.struct.wl_array.*ke |
| 9300 | 79 73 29 20 7b 00 00 00 48 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 6b | ys).{...H....(void)data;.(void)k |
| 9320 | 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 73 75 72 | eyboard;.(void)serial;.(void)sur |
| 9340 | 66 61 63 65 3b 20 28 76 6f 69 64 29 6b 65 79 73 3b 00 00 00 01 7d 00 00 00 00 00 00 00 73 73 74 | face;.(void)keys;....}.......sst |
| 9360 | 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 28 76 6f 69 64 20 2a 64 | atic.void.keyboard_leave(void.*d |
| 9380 | 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 | ata,.struct.wl_keyboard.*keyboar |
| 93a0 | 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 | d,.uint32_t.serial,.struct.wl_su |
| 93c0 | 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 29 20 7b 00 00 00 3c 20 20 20 20 28 76 6f 69 64 29 64 | rface.*surface).{...<....(void)d |
| 93e0 | 61 74 61 3b 20 28 76 6f 69 64 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 29 73 65 72 69 61 | ata;.(void)keyboard;.(void)seria |
| 9400 | 6c 3b 20 28 76 6f 69 64 29 73 75 72 66 61 63 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 b1 73 74 | l;.(void)surface;....}........st |
| 9420 | 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 69 65 72 73 28 76 6f 69 | atic.void.keyboard_modifiers(voi |
| 9440 | 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 | d.*data,.struct.wl_keyboard.*key |
| 9460 | 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 | board,.uint32_t.serial,.uint32_t |
| 9480 | 20 6d 6f 64 73 5f 64 65 70 72 65 73 73 65 64 2c 20 75 69 6e 74 33 32 5f 74 20 6d 6f 64 73 5f 6c | .mods_depressed,.uint32_t.mods_l |
| 94a0 | 61 74 63 68 65 64 2c 20 75 69 6e 74 33 32 5f 74 20 6d 6f 64 73 5f 6c 6f 63 6b 65 64 2c 20 75 69 | atched,.uint32_t.mods_locked,.ui |
| 94c0 | 6e 74 33 32 5f 74 20 67 72 6f 75 70 29 20 7b 00 00 00 77 20 20 20 20 28 76 6f 69 64 29 64 61 74 | nt32_t.group).{...w....(void)dat |
| 94e0 | 61 3b 20 28 76 6f 69 64 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b | a;.(void)keyboard;.(void)serial; |
| 9500 | 20 28 76 6f 69 64 29 6d 6f 64 73 5f 64 65 70 72 65 73 73 65 64 3b 20 28 76 6f 69 64 29 6d 6f 64 | .(void)mods_depressed;.(void)mod |
| 9520 | 73 5f 6c 61 74 63 68 65 64 3b 20 28 76 6f 69 64 29 6d 6f 64 73 5f 6c 6f 63 6b 65 64 3b 20 28 76 | s_latched;.(void)mods_locked;.(v |
| 9540 | 6f 69 64 29 67 72 6f 75 70 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3e 73 74 61 74 69 63 20 63 6f | oid)group;....}.......>static.co |
| 9560 | 6e 73 74 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 20 | nst.struct.wl_keyboard_listener. |
| 9580 | 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 6b 65 | keyboard_listener.=.{.........ke |
| 95a0 | 79 6d 61 70 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 2c 00 00 00 1c 20 20 20 20 2e | ymap.=.keyboard_keymap,......... |
| 95c0 | 65 6e 74 65 72 20 3d 20 6b 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 2c 00 00 00 1c 20 20 20 20 2e | enter.=.keyboard_enter,......... |
| 95e0 | 6c 65 61 76 65 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 2c 00 00 00 18 20 20 20 20 2e | leave.=.keyboard_leave,......... |
| 9600 | 6b 65 79 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 2c 00 00 00 23 20 20 20 20 2e 6d 6f 64 69 | key.=.keyboard_key,...#.....modi |
| 9620 | 66 69 65 72 73 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 69 65 72 73 00 00 00 02 7d 3b | fiers.=.keyboard_modifiers....}; |
| 9640 | 00 00 00 00 00 00 00 58 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 61 74 5f 63 61 70 61 62 69 6c | .......Xstatic.void.seat_capabil |
| 9660 | 69 74 69 65 73 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 65 61 74 | ities(void.*data,.struct.wl_seat |
| 9680 | 20 2a 73 65 61 74 2c 20 75 69 6e 74 33 32 5f 74 20 63 61 70 61 62 69 6c 69 74 69 65 73 29 20 7b | .*seat,.uint32_t.capabilities).{ |
| 96a0 | 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 | ........WaylandBackend.*b.=.data |
| 96c0 | 3b 00 00 00 45 20 20 20 20 69 66 20 28 28 63 61 70 61 62 69 6c 69 74 69 65 73 20 26 20 57 4c 5f | ;...E....if.((capabilities.&.WL_ |
| 96e0 | 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 50 4f 49 4e 54 45 52 29 20 26 26 20 21 62 2d 3e | SEAT_CAPABILITY_POINTER).&&.!b-> |
| 9700 | 70 6f 69 6e 74 65 72 29 20 7b 00 00 00 2f 20 20 20 20 20 20 20 20 62 2d 3e 70 6f 69 6e 74 65 72 | pointer).{.../........b->pointer |
| 9720 | 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 5f 70 6f 69 6e 74 65 72 28 73 65 61 74 29 3b 00 00 00 | .=.wl_seat_get_pointer(seat);... |
| 9740 | 42 20 20 20 20 20 20 20 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 | B........wl_pointer_add_listener |
| 9760 | 28 62 2d 3e 70 6f 69 6e 74 65 72 2c 20 26 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 2c 20 | (b->pointer,.&pointer_listener,. |
| 9780 | 62 29 3b 00 00 00 2a 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 | b);...*........if.(b->relative_p |
| 97a0 | 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 29 20 7b 00 00 00 80 20 20 20 20 20 20 20 20 20 20 20 | ointer_manager).{............... |
| 97c0 | 20 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f 72 65 6c 61 74 | .b->relative_pointer.=.zwp_relat |
| 97e0 | 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 67 65 74 5f 72 65 6c 61 74 | ive_pointer_manager_v1_get_relat |
| 9800 | 69 76 65 5f 70 6f 69 6e 74 65 72 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f | ive_pointer(b->relative_pointer_ |
| 9820 | 6d 61 6e 61 67 65 72 2c 20 62 2d 3e 70 6f 69 6e 74 65 72 29 3b 00 00 00 65 20 20 20 20 20 20 20 | manager,.b->pointer);...e....... |
| 9840 | 20 20 20 20 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 61 64 64 | .....zwp_relative_pointer_v1_add |
| 9860 | 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 2c 20 26 | _listener(b->relative_pointer,.& |
| 9880 | 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 | relative_pointer_listener,.b);.. |
| 98a0 | 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 33 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 70 6f | ..........}...3........if.(b->po |
| 98c0 | 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 26 26 20 62 2d 3e 73 75 72 66 61 63 65 29 | inter_constraints.&&.b->surface) |
| 98e0 | 20 7b 00 00 00 b3 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 6c 6f 63 6b 65 64 5f 70 6f 69 6e | .{................b->locked_poin |
| 9900 | 74 65 72 20 3d 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 | ter.=.zwp_pointer_constraints_v1 |
| 9920 | 5f 6c 6f 63 6b 5f 70 6f 69 6e 74 65 72 28 62 2d 3e 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 | _lock_pointer(b->pointer_constra |
| 9940 | 69 6e 74 73 2c 20 62 2d 3e 73 75 72 66 61 63 65 2c 20 62 2d 3e 70 6f 69 6e 74 65 72 2c 20 4e 55 | ints,.b->surface,.b->pointer,.NU |
| 9960 | 4c 4c 2c 20 5a 57 50 5f 50 4f 49 4e 54 45 52 5f 43 4f 4e 53 54 52 41 49 4e 54 53 5f 56 31 5f 4c | LL,.ZWP_POINTER_CONSTRAINTS_V1_L |
| 9980 | 49 46 45 5f 46 45 45 44 42 41 43 4b 5f 50 45 52 53 49 53 54 45 4e 54 29 3b 00 00 00 09 20 20 20 | IFE_FEEDBACK_PERSISTENT);....... |
| 99a0 | 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 45 20 20 20 20 69 66 20 28 21 28 63 61 70 | .....}........}...E....if.(!(cap |
| 99c0 | 61 62 69 6c 69 74 69 65 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 50 | abilities.&.WL_SEAT_CAPABILITY_P |
| 99e0 | 4f 49 4e 54 45 52 29 20 26 26 20 62 2d 3e 70 6f 69 6e 74 65 72 29 20 7b 00 00 00 76 20 20 20 20 | OINTER).&&.b->pointer).{...v.... |
| 9a00 | 20 20 20 20 69 66 20 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 29 20 7b 20 7a | ....if.(b->relative_pointer).{.z |
| 9a20 | 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 64 65 73 74 72 6f 79 28 62 | wp_relative_pointer_v1_destroy(b |
| 9a40 | 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 29 3b 20 62 2d 3e 72 65 6c 61 74 69 76 65 | ->relative_pointer);.b->relative |
| 9a60 | 5f 70 6f 69 6e 74 65 72 20 3d 20 4e 55 4c 4c 3b 20 7d 00 00 00 27 20 20 20 20 20 20 20 20 77 6c | _pointer.=.NULL;.}...'........wl |
| 9a80 | 5f 70 6f 69 6e 74 65 72 5f 64 65 73 74 72 6f 79 28 62 2d 3e 70 6f 69 6e 74 65 72 29 3b 00 00 00 | _pointer_destroy(b->pointer);... |
| 9aa0 | 1a 20 20 20 20 20 20 20 20 62 2d 3e 70 6f 69 6e 74 65 72 20 3d 20 4e 55 4c 4c 3b 00 00 00 05 20 | .........b->pointer.=.NULL;..... |
| 9ac0 | 20 20 20 7d 00 00 00 00 00 00 00 47 20 20 20 20 69 66 20 28 28 63 61 70 61 62 69 6c 69 74 69 65 | ...}.......G....if.((capabilitie |
| 9ae0 | 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 4b 45 59 42 4f 41 52 44 29 | s.&.WL_SEAT_CAPABILITY_KEYBOARD) |
| 9b00 | 20 26 26 20 21 62 2d 3e 6b 65 79 62 6f 61 72 64 29 20 7b 00 00 00 31 20 20 20 20 20 20 20 20 62 | .&&.!b->keyboard).{...1........b |
| 9b20 | 2d 3e 6b 65 79 62 6f 61 72 64 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 5f 6b 65 79 62 6f 61 72 | ->keyboard.=.wl_seat_get_keyboar |
| 9b40 | 64 28 73 65 61 74 29 3b 00 00 00 45 20 20 20 20 20 20 20 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f | d(seat);...E........wl_keyboard_ |
| 9b60 | 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 6b 65 79 62 6f 61 72 64 2c 20 26 6b 65 79 62 6f | add_listener(b->keyboard,.&keybo |
| 9b80 | 61 72 64 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 47 20 20 | ard_listener,.b);........}...G.. |
| 9ba0 | 20 20 69 66 20 28 21 28 63 61 70 61 62 69 6c 69 74 69 65 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 | ..if.(!(capabilities.&.WL_SEAT_C |
| 9bc0 | 41 50 41 42 49 4c 49 54 59 5f 4b 45 59 42 4f 41 52 44 29 20 26 26 20 62 2d 3e 6b 65 79 62 6f 61 | APABILITY_KEYBOARD).&&.b->keyboa |
| 9be0 | 72 64 29 20 7b 00 00 00 29 20 20 20 20 20 20 20 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f 64 65 73 | rd).{...)........wl_keyboard_des |
| 9c00 | 74 72 6f 79 28 62 2d 3e 6b 65 79 62 6f 61 72 64 29 3b 00 00 00 1b 20 20 20 20 20 20 20 20 62 2d | troy(b->keyboard);............b- |
| 9c20 | 3e 6b 65 79 62 6f 61 72 64 20 3d 20 4e 55 4c 4c 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 | >keyboard.=.NULL;........}....}. |
| 9c40 | 00 00 00 00 00 00 36 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c 5f 73 65 | ......6static.const.struct.wl_se |
| 9c60 | 61 74 5f 6c 69 73 74 65 6e 65 72 20 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 | at_listener.seat_listener.=.{... |
| 9c80 | 25 20 20 20 20 2e 63 61 70 61 62 69 6c 69 74 69 65 73 20 3d 20 73 65 61 74 5f 63 61 70 61 62 69 | %.....capabilities.=.seat_capabi |
| 9ca0 | 6c 69 74 69 65 73 00 00 00 02 7d 3b 00 00 00 00 00 00 00 7f 73 74 61 74 69 63 20 76 6f 69 64 20 | lities....};........static.void. |
| 9cc0 | 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 | registry_global(void.*data,.stru |
| 9ce0 | 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 65 67 69 73 74 72 79 2c 20 75 69 6e 74 33 32 | ct.wl_registry.*registry,.uint32 |
| 9d00 | 5f 74 20 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 69 6e 74 65 72 66 61 63 65 2c 20 | _t.name,.const.char.*interface,. |
| 9d20 | 75 69 6e 74 33 32 5f 74 20 76 65 72 73 69 6f 6e 29 20 7b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 | uint32_t.version).{........Wayla |
| 9d40 | 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 3f 20 20 20 20 69 66 20 28 | ndBackend.*b.=.data;...?....if.( |
| 9d60 | 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f | strcmp(interface,.wl_compositor_ |
| 9d80 | 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 56 20 20 20 20 20 | interface.name).==.0).{...V..... |
| 9da0 | 20 20 20 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 | ...b->compositor.=.wl_registry_b |
| 9dc0 | 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 63 6f 6d 70 6f 73 69 74 | ind(registry,.name,.&wl_composit |
| 9de0 | 6f 72 5f 69 6e 74 65 72 66 61 63 65 2c 20 34 29 3b 00 00 00 44 20 20 20 20 7d 20 65 6c 73 65 20 | or_interface,.4);...D....}.else. |
| 9e00 | 69 66 20 28 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 78 64 67 5f 77 6d 5f 62 61 73 | if.(strcmp(interface,.xdg_wm_bas |
| 9e20 | 65 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 62 20 20 20 | e_interface.name).==.0).{...b... |
| 9e40 | 20 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 20 2a 77 6d 5f 62 61 73 65 | .....struct.xdg_wm_base.*wm_base |
| 9e60 | 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 | .=.wl_registry_bind(registry,.na |
| 9e80 | 6d 65 2c 20 26 78 64 67 5f 77 6d 5f 62 61 73 65 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 | me,.&xdg_wm_base_interface,.1);. |
| 9ea0 | 00 00 16 20 20 20 20 20 20 20 20 28 76 6f 69 64 29 77 6d 5f 62 61 73 65 3b 00 00 00 40 20 20 20 | ...........(void)wm_base;...@... |
| 9ec0 | 20 7d 20 65 6c 73 65 20 69 66 20 28 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 77 6c | .}.else.if.(strcmp(interface,.wl |
| 9ee0 | 5f 73 65 61 74 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 | _seat_interface.name).==.0).{... |
| 9f00 | 4a 20 20 20 20 20 20 20 20 62 2d 3e 73 65 61 74 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 | J........b->seat.=.wl_registry_b |
| 9f20 | 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 73 65 61 74 5f 69 6e 74 | ind(registry,.name,.&wl_seat_int |
| 9f40 | 65 72 66 61 63 65 2c 20 37 29 3b 00 00 00 39 20 20 20 20 20 20 20 20 77 6c 5f 73 65 61 74 5f 61 | erface,.7);...9........wl_seat_a |
| 9f60 | 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 73 65 61 74 2c 20 26 73 65 61 74 5f 6c 69 73 74 65 | dd_listener(b->seat,.&seat_liste |
| 9f80 | 6e 65 72 2c 20 62 29 3b 00 00 00 58 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 73 74 72 63 6d | ner,.b);...X....}.else.if.(strcm |
| 9fa0 | 70 28 69 6e 74 65 72 66 61 63 65 2c 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 | p(interface,.zwp_relative_pointe |
| 9fc0 | 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 | r_manager_v1_interface.name).==. |
| 9fe0 | 30 29 20 7b 00 00 00 76 20 20 20 20 20 20 20 20 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e | 0).{...v........b->relative_poin |
| a000 | 74 65 72 5f 6d 61 6e 61 67 65 72 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 | ter_manager.=.wl_registry_bind(r |
| a020 | 65 67 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 | egistry,.name,.&zwp_relative_poi |
| a040 | 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 | nter_manager_v1_interface,.1);.. |
| a060 | 00 53 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 | .S....}.else.if.(strcmp(interfac |
| a080 | 65 2c 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 69 6e | e,.zwp_pointer_constraints_v1_in |
| a0a0 | 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 6c 20 20 20 20 20 20 20 | terface.name).==.0).{...l....... |
| a0c0 | 20 62 2d 3e 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 77 6c 5f 72 65 67 | .b->pointer_constraints.=.wl_reg |
| a0e0 | 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f | istry_bind(registry,.name,.&zwp_ |
| a100 | 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 | pointer_constraints_v1_interface |
| a120 | 2c 20 31 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 5d 73 74 61 74 69 | ,.1);........}....}.......]stati |
| a140 | 63 20 76 6f 69 64 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d 6f 76 65 28 76 6f | c.void.registry_global_remove(vo |
| a160 | 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 65 | id.*data,.struct.wl_registry.*re |
| a180 | 67 69 73 74 72 79 2c 20 75 69 6e 74 33 32 5f 74 20 6e 61 6d 65 29 20 7b 00 00 00 2b 20 20 20 20 | gistry,.uint32_t.name).{...+.... |
| a1a0 | 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 72 65 67 69 73 74 72 79 3b 20 28 76 6f 69 | (void)data;.(void)registry;.(voi |
| a1c0 | 64 29 6e 61 6d 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3e 73 74 61 74 69 63 20 63 6f 6e 73 74 | d)name;....}.......>static.const |
| a1e0 | 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 20 72 65 67 | .struct.wl_registry_listener.reg |
| a200 | 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 67 6c 6f 62 61 | istry_listener.=.{.........globa |
| a220 | 6c 20 3d 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 2c 00 00 00 2b 20 20 20 20 2e 67 6c 6f | l.=.registry_global,...+.....glo |
| a240 | 62 61 6c 5f 72 65 6d 6f 76 65 20 3d 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d | bal_remove.=.registry_global_rem |
| a260 | 6f 76 65 00 00 00 02 7d 3b 00 00 00 00 00 00 00 54 69 6e 74 20 77 69 6e 64 6f 77 5f 77 61 79 6c | ove....};.......Tint.window_wayl |
| a280 | 61 6e 64 5f 69 6e 69 74 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 2c 20 69 6e 74 20 77 69 | and_init(NativeWindow.*w,.int.wi |
| a2a0 | 64 74 68 2c 20 69 6e 74 20 68 65 69 67 68 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 69 74 | dth,.int.height,.const.char.*tit |
| a2c0 | 6c 65 29 20 7b 00 00 00 10 20 20 20 20 28 76 6f 69 64 29 74 69 74 6c 65 3b 00 00 00 3a 20 20 20 | le).{........(void)title;...:... |
| a2e0 | 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 63 61 6c 6c 6f 63 28 31 2c 20 73 | .WaylandBackend.*b.=.calloc(1,.s |
| a300 | 69 7a 65 6f 66 28 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 29 29 3b 00 00 00 13 20 20 20 20 77 | izeof(WaylandBackend));........w |
| a320 | 2d 3e 62 61 63 6b 65 6e 64 20 3d 20 62 3b 00 00 00 14 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 | ->backend.=.b;........b->win_ins |
| a340 | 74 20 3d 20 77 3b 00 00 00 00 00 00 00 2a 20 20 20 20 62 2d 3e 64 69 73 70 6c 61 79 20 3d 20 77 | t.=.w;.......*....b->display.=.w |
| a360 | 6c 5f 64 69 73 70 6c 61 79 5f 63 6f 6e 6e 65 63 74 28 4e 55 4c 4c 29 3b 00 00 00 2b 20 20 20 20 | l_display_connect(NULL);...+.... |
| a380 | 69 66 20 28 21 62 2d 3e 64 69 73 70 6c 61 79 29 20 7b 20 66 72 65 65 28 62 29 3b 20 72 65 74 75 | if.(!b->display).{.free(b);.retu |
| a3a0 | 72 6e 20 30 3b 20 7d 00 00 00 00 00 00 00 36 20 20 20 20 62 2d 3e 72 65 67 69 73 74 72 79 20 3d | rn.0;.}.......6....b->registry.= |
| a3c0 | 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 72 65 67 69 73 74 72 79 28 62 2d 3e 64 69 73 70 | .wl_display_get_registry(b->disp |
| a3e0 | 6c 61 79 29 3b 00 00 00 41 20 20 20 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 61 64 64 5f 6c 69 73 | lay);...A....wl_registry_add_lis |
| a400 | 74 65 6e 65 72 28 62 2d 3e 72 65 67 69 73 74 72 79 2c 20 26 72 65 67 69 73 74 72 79 5f 6c 69 73 | tener(b->registry,.®istry_lis |
| a420 | 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 25 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 6f 75 | tener,.b);...%....wl_display_rou |
| a440 | 6e 64 74 72 69 70 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 00 00 00 00 51 20 20 20 20 69 | ndtrip(b->display);.......Q....i |
| a460 | 66 20 28 21 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 29 20 7b 20 77 6c 5f 64 69 73 70 6c 61 79 5f | f.(!b->compositor).{.wl_display_ |
| a480 | 64 69 73 63 6f 6e 6e 65 63 74 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 20 66 72 65 65 28 62 29 3b | disconnect(b->display);.free(b); |
| a4a0 | 20 72 65 74 75 72 6e 20 30 3b 20 7d 00 00 00 00 00 00 00 3d 20 20 20 20 62 2d 3e 73 75 72 66 61 | .return.0;.}.......=....b->surfa |
| a4c0 | 63 65 20 3d 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 63 72 65 61 74 65 5f 73 75 72 66 61 63 | ce.=.wl_compositor_create_surfac |
| a4e0 | 65 28 62 2d 3e 63 6f 6d 70 6f 73 69 74 6f 72 29 3b 00 00 00 44 20 20 20 20 62 2d 3e 65 67 6c 5f | e(b->compositor);...D....b->egl_ |
| a500 | 77 69 6e 64 6f 77 20 3d 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 63 72 65 61 74 65 28 62 2d | window.=.wl_egl_window_create(b- |
| a520 | 3e 73 75 72 66 61 63 65 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 29 3b 00 00 00 00 00 00 00 | >surface,.width,.height);....... |
| a540 | 45 20 20 20 20 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 20 3d 20 65 67 6c 47 65 74 44 69 73 70 | E....b->egl_display.=.eglGetDisp |
| a560 | 6c 61 79 28 28 45 47 4c 4e 61 74 69 76 65 44 69 73 70 6c 61 79 54 79 70 65 29 62 2d 3e 64 69 73 | lay((EGLNativeDisplayType)b->dis |
| a580 | 70 6c 61 79 29 3b 00 00 00 2e 20 20 20 20 65 67 6c 49 6e 69 74 69 61 6c 69 7a 65 28 62 2d 3e 65 | play);........eglInitialize(b->e |
| a5a0 | 67 6c 5f 64 69 73 70 6c 61 79 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 00 1f 20 20 20 20 | gl_display,.NULL,.NULL);........ |
| a5c0 | 65 67 6c 42 69 6e 64 41 50 49 28 45 47 4c 5f 4f 50 45 4e 47 4c 5f 41 50 49 29 3b 00 00 00 00 00 | eglBindAPI(EGL_OPENGL_API);..... |
| a5e0 | 00 00 18 20 20 20 20 45 47 4c 69 6e 74 20 61 74 74 72 69 62 73 5b 5d 20 3d 20 7b 00 00 00 29 20 | .......EGLint.attribs[].=.{...). |
| a600 | 20 20 20 20 20 20 20 45 47 4c 5f 53 55 52 46 41 43 45 5f 54 59 50 45 2c 20 45 47 4c 5f 57 49 4e | .......EGL_SURFACE_TYPE,.EGL_WIN |
| a620 | 44 4f 57 5f 42 49 54 2c 00 00 00 18 20 20 20 20 20 20 20 20 45 47 4c 5f 52 45 44 5f 53 49 5a 45 | DOW_BIT,............EGL_RED_SIZE |
| a640 | 2c 20 38 2c 00 00 00 1a 20 20 20 20 20 20 20 20 45 47 4c 5f 47 52 45 45 4e 5f 53 49 5a 45 2c 20 | ,.8,............EGL_GREEN_SIZE,. |
| a660 | 38 2c 00 00 00 19 20 20 20 20 20 20 20 20 45 47 4c 5f 42 4c 55 45 5f 53 49 5a 45 2c 20 38 2c 00 | 8,............EGL_BLUE_SIZE,.8,. |
| a680 | 00 00 2c 20 20 20 20 20 20 20 20 45 47 4c 5f 52 45 4e 44 45 52 41 42 4c 45 5f 54 59 50 45 2c 20 | ..,........EGL_RENDERABLE_TYPE,. |
| a6a0 | 45 47 4c 5f 4f 50 45 4e 47 4c 5f 42 49 54 2c 00 00 00 10 20 20 20 20 20 20 20 20 45 47 4c 5f 4e | EGL_OPENGL_BIT,............EGL_N |
| a6c0 | 4f 4e 45 00 00 00 06 20 20 20 20 7d 3b 00 00 00 15 20 20 20 20 45 47 4c 43 6f 6e 66 69 67 20 63 | ONE........};........EGLConfig.c |
| a6e0 | 6f 6e 66 69 67 3b 00 00 00 17 20 20 20 20 45 47 4c 69 6e 74 20 6e 75 6d 5f 63 6f 6e 66 69 67 73 | onfig;........EGLint.num_configs |
| a700 | 3b 00 00 00 47 20 20 20 20 65 67 6c 43 68 6f 6f 73 65 43 6f 6e 66 69 67 28 62 2d 3e 65 67 6c 5f | ;...G....eglChooseConfig(b->egl_ |
| a720 | 64 69 73 70 6c 61 79 2c 20 61 74 74 72 69 62 73 2c 20 26 63 6f 6e 66 69 67 2c 20 31 2c 20 26 6e | display,.attribs,.&config,.1,.&n |
| a740 | 75 6d 5f 63 6f 6e 66 69 67 73 29 3b 00 00 00 00 00 00 00 54 20 20 20 20 62 2d 3e 65 67 6c 5f 63 | um_configs);.......T....b->egl_c |
| a760 | 6f 6e 74 65 78 74 20 3d 20 65 67 6c 43 72 65 61 74 65 43 6f 6e 74 65 78 74 28 62 2d 3e 65 67 6c | ontext.=.eglCreateContext(b->egl |
| a780 | 5f 64 69 73 70 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 20 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 | _display,.config,.EGL_NO_CONTEXT |
| a7a0 | 2c 20 4e 55 4c 4c 29 3b 00 00 00 6e 20 20 20 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 20 3d | ,.NULL);...n....b->egl_surface.= |
| a7c0 | 20 65 67 6c 43 72 65 61 74 65 57 69 6e 64 6f 77 53 75 72 66 61 63 65 28 62 2d 3e 65 67 6c 5f 64 | .eglCreateWindowSurface(b->egl_d |
| a7e0 | 69 73 70 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 20 28 45 47 4c 4e 61 74 69 76 65 57 69 6e 64 6f 77 | isplay,.config,.(EGLNativeWindow |
| a800 | 54 79 70 65 29 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 2c 20 4e 55 4c 4c 29 3b 00 00 00 53 20 20 | Type)b->egl_window,.NULL);...S.. |
| a820 | 20 20 65 67 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c | ..eglMakeCurrent(b->egl_display, |
| a840 | 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 2c | .b->egl_surface,.b->egl_surface, |
| a860 | 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 00 00 00 00 1b 20 20 20 20 77 2d 3e | .b->egl_context);............w-> |
| a880 | 73 74 61 74 65 2e 77 69 64 74 68 20 3d 20 77 69 64 74 68 3b 00 00 00 1d 20 20 20 20 77 2d 3e 73 | state.width.=.width;........w->s |
| a8a0 | 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 65 69 67 68 74 3b 00 00 00 0d 20 20 20 20 72 65 74 | tate.height.=.height;........ret |
| a8c0 | 75 72 6e 20 31 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 76 6f 69 64 20 77 69 6e 64 6f 77 5f 77 | urn.1;....}.......+void.window_w |
| a8e0 | 61 79 6c 61 6e 64 5f 70 6f 6c 6c 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 29 20 7b 00 00 | ayland_poll(NativeWindow.*w).{.. |
| a900 | 00 23 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 77 2d 3e 62 61 63 | .#....WaylandBackend.*b.=.w->bac |
| a920 | 6b 65 6e 64 3b 00 00 00 1a 20 20 20 20 77 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 78 20 3d | kend;........w->state.mouse_dx.= |
| a940 | 20 30 3b 00 00 00 1a 20 20 20 20 77 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 79 20 3d 20 30 | .0;........w->state.mouse_dy.=.0 |
| a960 | 3b 00 00 00 35 20 20 20 20 77 68 69 6c 65 20 28 77 6c 5f 64 69 73 70 6c 61 79 5f 70 72 65 70 61 | ;...5....while.(wl_display_prepa |
| a980 | 72 65 5f 72 65 61 64 28 62 2d 3e 64 69 73 70 6c 61 79 29 20 3c 20 30 29 20 7b 00 00 00 30 20 20 | re_read(b->display).<.0).{...0.. |
| a9a0 | 20 20 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 5f 70 65 6e 64 69 6e | ......wl_display_dispatch_pendin |
| a9c0 | 67 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 27 20 20 20 20 77 | g(b->display);........}...'....w |
| a9e0 | 6c 5f 64 69 73 70 6c 61 79 5f 72 65 61 64 5f 65 76 65 6e 74 73 28 62 2d 3e 64 69 73 70 6c 61 79 | l_display_read_events(b->display |
| aa00 | 29 3b 00 00 00 2c 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 5f 70 65 | );...,....wl_display_dispatch_pe |
| aa20 | 6e 64 69 6e 67 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 76 | nding(b->display);....}.......+v |
| aa40 | 6f 69 64 20 77 69 6e 64 6f 77 5f 77 61 79 6c 61 6e 64 5f 73 77 61 70 28 4e 61 74 69 76 65 57 69 | oid.window_wayland_swap(NativeWi |
| aa60 | 6e 64 6f 77 20 2a 77 29 20 7b 00 00 00 23 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 | ndow.*w).{...#....WaylandBackend |
| aa80 | 20 2a 62 20 3d 20 77 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 33 20 20 20 20 65 67 6c 53 77 61 70 | .*b.=.w->backend;...3....eglSwap |
| aaa0 | 42 75 66 66 65 72 73 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 | Buffers(b->egl_display,.b->egl_s |
| aac0 | 75 72 66 61 63 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2e 76 6f 69 64 20 77 69 6e 64 6f 77 | urface);....}........void.window |
| aae0 | 5f 77 61 79 6c 61 6e 64 5f 64 65 73 74 72 6f 79 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 | _wayland_destroy(NativeWindow.*w |
| ab00 | 29 20 7b 00 00 00 23 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 77 | ).{...#....WaylandBackend.*b.=.w |
| ab20 | 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 19 20 20 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 64 69 73 | ->backend;........if.(b->egl_dis |
| ab40 | 70 6c 61 79 29 20 7b 00 00 00 57 20 20 20 20 20 20 20 20 65 67 6c 4d 61 6b 65 43 75 72 72 65 6e | play).{...W........eglMakeCurren |
| ab60 | 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 45 47 4c 5f 4e 4f 5f 53 55 52 46 41 43 45 | t(b->egl_display,.EGL_NO_SURFACE |
| ab80 | 2c 20 45 47 4c 5f 4e 4f 5f 53 55 52 46 41 43 45 2c 20 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 | ,.EGL_NO_SURFACE,.EGL_NO_CONTEXT |
| aba0 | 29 3b 00 00 00 3a 20 20 20 20 20 20 20 20 65 67 6c 44 65 73 74 72 6f 79 53 75 72 66 61 63 65 28 | );...:........eglDestroySurface( |
| abc0 | 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 29 3b | b->egl_display,.b->egl_surface); |
| abe0 | 00 00 00 3a 20 20 20 20 20 20 20 20 65 67 6c 44 65 73 74 72 6f 79 43 6f 6e 74 65 78 74 28 62 2d | ...:........eglDestroyContext(b- |
| ac00 | 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 | >egl_display,.b->egl_context);.. |
| ac20 | 00 25 20 20 20 20 20 20 20 20 65 67 6c 54 65 72 6d 69 6e 61 74 65 28 62 2d 3e 65 67 6c 5f 64 69 | .%........eglTerminate(b->egl_di |
| ac40 | 73 70 6c 61 79 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 3c 20 20 20 20 69 66 20 28 62 2d 3e 65 | splay);........}...<....if.(b->e |
| ac60 | 67 6c 5f 77 69 6e 64 6f 77 29 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 64 65 73 74 72 6f 79 | gl_window).wl_egl_window_destroy |
| ac80 | 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 3b 00 00 00 33 20 20 20 20 69 66 20 28 62 2d 3e 73 | (b->egl_window);...3....if.(b->s |
| aca0 | 75 72 66 61 63 65 29 20 77 6c 5f 73 75 72 66 61 63 65 5f 64 65 73 74 72 6f 79 28 62 2d 3e 73 75 | urface).wl_surface_destroy(b->su |
| acc0 | 72 66 61 63 65 29 3b 00 00 00 36 20 20 20 20 69 66 20 28 62 2d 3e 64 69 73 70 6c 61 79 29 20 77 | rface);...6....if.(b->display).w |
| ace0 | 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 63 6f 6e 6e 65 63 74 28 62 2d 3e 64 69 73 70 6c 61 79 29 | l_display_disconnect(b->display) |
| ad00 | 3b 00 00 00 0c 20 20 20 20 66 72 65 65 28 62 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 00 00 | ;........free(b);....}5......... |
| ad20 | 00 00 00 00 00 00 25 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 de 2c | ......%........................, |
| ad40 | 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 05 00 00 00 07 00 00 00 00 00 00 | ..............5._............... |
| ad60 | 00 00 00 00 00 06 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 03 00 00 00 00 00 00 00 00 | ................................ |
| ad80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ada0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| adc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ade0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ae00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ae20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ae40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ae60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ae80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| aea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| aec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 63 48 74 04 01 00 00 00 03 00 f5 | ....................jcHt........ |
| aee0 | 18 00 00 00 cc 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 17 20 20 20 20 20 20 20 20 62 2d 3e | .............................b-> |
| af00 | 73 65 61 74 20 3d 20 77 6c 5f 72 65 f5 18 00 00 00 cd 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 | seat.=.wl_re.................... |
| af20 | 00 00 00 6f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 1c 20 20 20 20 2e 72 65 6c 61 74 69 76 | ...o.....................relativ |
| af40 | 65 5f 6d 6f 74 69 6f 6e 20 3d 20 72 65 6c 61 74 f5 18 00 00 00 70 00 00 00 00 00 00 00 00 00 00 | e_motion.=.relat.....p.......... |
| af60 | 00 00 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 00 01 00 00 | ................................ |
| af80 | 00 00 00 00 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ..........5..................... |
| afa0 | 00 00 6f 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f9 0f 00 00 00 00 | ..o............................. |
| afc0 | 00 00 f5 18 00 00 00 00 6f 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 5d 00 00 00 17 00 00 00 | ........o...............]....... |
| afe0 | f9 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 0f 00 00 00 00 00 00 f5 18 00 00 00 00 cc 00 | ................................ |
| b000 | 00 00 17 00 00 00 00 00 00 00 00 00 00 00 5e 00 00 00 01 00 00 00 f8 1f 00 00 00 00 00 00 00 00 | ..............^................. |
| b020 | 00 00 00 00 00 00 66 0d 00 00 00 00 00 00 35 81 5f d0 00 00 00 06 00 00 00 08 00 00 00 00 00 00 | ......f.......5._............... |
| b040 | 00 00 00 00 00 07 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 | ................................ |
| b060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b0a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b0c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b0e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b1a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 63 49 98 04 01 00 00 00 00 00 f5 | ....................jcI......... |
| b1c0 | 18 00 00 00 00 00 00 00 02 00 00 00 00 00 00 01 2b 00 00 00 13 23 64 65 66 69 6e 65 20 5f 47 4e | ................+....#define._GN |
| b1e0 | 55 5f 53 4f 55 52 43 45 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 63 6c | U_SOURCE....#include.<wayland-cl |
| b200 | 69 65 6e 74 2e 68 3e 00 00 00 18 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 65 67 6c | ient.h>....#include.<wayland-egl |
| b220 | 2e 68 3e 00 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 45 47 4c 2f 65 67 6c 2e 68 3e 00 00 00 13 23 | .h>....#include.<EGL/egl.h>....# |
| b240 | 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c | include.<stdlib.h>....#include.< |
| b260 | 73 74 72 69 6e 67 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 3e 00 | string.h>....#include.<stdio.h>. |
| b280 | 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 | ...#include.<unistd.h>....#inclu |
| b2a0 | 64 65 20 22 77 69 6e 64 6f 77 2e 68 22 00 00 00 26 23 69 6e 63 6c 75 64 65 20 22 78 64 67 2d 73 | de."window.h"...&#include."xdg-s |
| b2c0 | 68 65 6c 6c 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 39 23 69 6e 63 6c | hell-client-protocol.h"...9#incl |
| b2e0 | 75 64 65 20 22 72 65 6c 61 74 69 76 65 2d 70 6f 69 6e 74 65 72 2d 75 6e 73 74 61 62 6c 65 2d 76 | ude."relative-pointer-unstable-v |
| b300 | 31 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 3c 23 69 6e 63 6c 75 64 65 | 1-client-protocol.h"...<#include |
| b320 | 20 22 70 6f 69 6e 74 65 72 2d 63 6f 6e 73 74 72 61 69 6e 74 73 2d 75 6e 73 74 61 62 6c 65 2d 76 | ."pointer-constraints-unstable-v |
| b340 | 31 2d 63 6c 69 65 6e 74 2d 70 72 6f 74 6f 63 6f 6c 2e 68 22 00 00 00 00 00 00 00 10 74 79 70 65 | 1-client-protocol.h"........type |
| b360 | 64 65 66 20 73 74 72 75 63 74 20 7b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 64 69 | def.struct.{........struct.wl_di |
| b380 | 73 70 6c 61 79 20 2a 64 69 73 70 6c 61 79 3b 00 00 00 21 20 20 20 20 73 74 72 75 63 74 20 77 6c | splay.*display;...!....struct.wl |
| b3a0 | 5f 72 65 67 69 73 74 72 79 20 2a 72 65 67 69 73 74 72 79 3b 00 00 00 25 20 20 20 20 73 74 72 75 | _registry.*registry;...%....stru |
| b3c0 | 63 74 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 20 2a 63 6f 6d 70 6f 73 69 74 6f 72 3b 00 00 00 | ct.wl_compositor.*compositor;... |
| b3e0 | 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 3b | .....struct.wl_surface.*surface; |
| b400 | 00 00 00 24 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 20 2a 78 64 67 5f | ...$....struct.xdg_surface.*xdg_ |
| b420 | 73 75 72 66 61 63 65 3b 00 00 00 26 20 20 20 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 | surface;...&....struct.xdg_tople |
| b440 | 76 65 6c 20 2a 78 64 67 5f 74 6f 70 6c 65 76 65 6c 3b 00 00 00 19 20 20 20 20 73 74 72 75 63 74 | vel.*xdg_toplevel;........struct |
| b460 | 20 77 6c 5f 73 65 61 74 20 2a 73 65 61 74 3b 00 00 00 1f 20 20 20 20 73 74 72 75 63 74 20 77 6c | .wl_seat.*seat;........struct.wl |
| b480 | 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 3b 00 00 00 21 20 20 20 20 73 74 72 75 63 74 | _pointer.*pointer;...!....struct |
| b4a0 | 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 3b 00 00 00 45 20 20 20 20 73 | .wl_keyboard.*keyboard;...E....s |
| b4c0 | 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 | truct.zwp_relative_pointer_manag |
| b4e0 | 65 72 5f 76 31 20 2a 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 3b | er_v1.*relative_pointer_manager; |
| b500 | 00 00 00 35 20 20 20 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e | ...5....struct.zwp_relative_poin |
| b520 | 74 65 72 5f 76 31 20 2a 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 3b 00 00 00 3b 20 20 20 | ter_v1.*relative_pointer;...;... |
| b540 | 20 73 74 72 75 63 74 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f | .struct.zwp_pointer_constraints_ |
| b560 | 76 31 20 2a 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 3b 00 00 00 31 20 20 20 20 | v1.*pointer_constraints;...1.... |
| b580 | 73 74 72 75 63 74 20 7a 77 70 5f 6c 6f 63 6b 65 64 5f 70 6f 69 6e 74 65 72 5f 76 31 20 2a 6c 6f | struct.zwp_locked_pointer_v1.*lo |
| b5a0 | 63 6b 65 64 5f 70 6f 69 6e 74 65 72 3b 00 00 00 04 20 20 20 20 00 00 00 1b 20 20 20 20 45 47 4c | cked_pointer;................EGL |
| b5c0 | 44 69 73 70 6c 61 79 20 65 67 6c 5f 64 69 73 70 6c 61 79 3b 00 00 00 1b 20 20 20 20 45 47 4c 43 | Display.egl_display;........EGLC |
| b5e0 | 6f 6e 74 65 78 74 20 65 67 6c 5f 63 6f 6e 74 65 78 74 3b 00 00 00 1b 20 20 20 20 45 47 4c 53 75 | ontext.egl_context;........EGLSu |
| b600 | 72 66 61 63 65 20 65 67 6c 5f 73 75 72 66 61 63 65 3b 00 00 00 25 20 20 20 20 73 74 72 75 63 74 | rface.egl_surface;...%....struct |
| b620 | 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 20 2a 65 67 6c 5f 77 69 6e 64 6f 77 3b 00 00 00 00 00 | .wl_egl_window.*egl_window;..... |
| b640 | 00 00 1b 20 20 20 20 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 69 6e 5f 69 6e 73 74 3b 00 00 | .......NativeWindow.*win_inst;.. |
| b660 | 00 13 20 20 20 20 69 6e 74 20 63 6f 6e 66 69 67 75 72 65 64 3b 00 00 00 11 7d 20 57 61 79 6c 61 | ......int.configured;....}.Wayla |
| b680 | 6e 64 42 61 63 6b 65 6e 64 3b 00 00 00 00 00 00 00 61 73 74 61 74 69 63 20 76 6f 69 64 20 78 64 | ndBackend;.......astatic.void.xd |
| b6a0 | 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 67 75 72 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 | g_surface_configure(void.*data,. |
| b6c0 | 73 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 20 2a 78 64 67 5f 73 75 72 66 61 63 65 2c | struct.xdg_surface.*xdg_surface, |
| b6e0 | 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 29 20 7b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 | .uint32_t.serial).{........Wayla |
| b700 | 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 33 20 20 20 20 78 64 67 5f | ndBackend.*b.=.data;...3....xdg_ |
| b720 | 73 75 72 66 61 63 65 5f 61 63 6b 5f 63 6f 6e 66 69 67 75 72 65 28 78 64 67 5f 73 75 72 66 61 63 | surface_ack_configure(xdg_surfac |
| b740 | 65 2c 20 73 65 72 69 61 6c 29 3b 00 00 00 16 20 20 20 20 62 2d 3e 63 6f 6e 66 69 67 75 72 65 64 | e,.serial);........b->configured |
| b760 | 20 3d 20 31 3b 00 00 00 01 7d 00 00 00 00 00 00 00 42 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 | .=.1;....}.......Bstatic.const.s |
| b780 | 74 72 75 63 74 20 78 64 67 5f 73 75 72 66 61 63 65 5f 6c 69 73 74 65 6e 65 72 20 78 64 67 5f 73 | truct.xdg_surface_listener.xdg_s |
| b7a0 | 75 72 66 61 63 65 5f 6c 69 73 74 65 6e 65 72 5f 20 3d 20 7b 00 00 00 26 20 20 20 20 2e 63 6f 6e | urface_listener_.=.{...&.....con |
| b7c0 | 66 69 67 75 72 65 20 3d 20 78 64 67 5f 73 75 72 66 61 63 65 5f 63 6f 6e 66 69 67 75 72 65 00 00 | figure.=.xdg_surface_configure.. |
| b7e0 | 00 02 7d 3b 00 00 00 00 00 00 00 83 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c | ..};........static.void.toplevel |
| b800 | 5f 63 6f 6e 66 69 67 75 72 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 | _configure(void.*data,.struct.xd |
| b820 | 67 5f 74 6f 70 6c 65 76 65 6c 20 2a 74 6f 70 6c 65 76 65 6c 2c 20 69 6e 74 33 32 5f 74 20 77 69 | g_toplevel.*toplevel,.int32_t.wi |
| b840 | 64 74 68 2c 20 69 6e 74 33 32 5f 74 20 68 65 69 67 68 74 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 | dth,.int32_t.height,.struct.wl_a |
| b860 | 72 72 61 79 20 2a 73 74 61 74 65 73 29 20 7b 00 00 00 13 20 20 20 20 28 76 6f 69 64 29 74 6f 70 | rray.*states).{........(void)top |
| b880 | 6c 65 76 65 6c 3b 00 00 00 11 20 20 20 20 28 76 6f 69 64 29 73 74 61 74 65 73 3b 00 00 00 1d 20 | level;........(void)states;..... |
| b8a0 | 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 22 | ...WaylandBackend.*b.=.data;..." |
| b8c0 | 20 20 20 20 69 66 20 28 77 69 64 74 68 20 3e 20 30 20 26 26 20 68 65 69 67 68 74 20 3e 20 30 29 | ....if.(width.>.0.&&.height.>.0) |
| b8e0 | 20 7b 00 00 00 29 20 20 20 20 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 | .{...)........b->win_inst->state |
| b900 | 2e 77 69 64 74 68 20 3d 20 77 69 64 74 68 3b 00 00 00 2b 20 20 20 20 20 20 20 20 62 2d 3e 77 69 | .width.=.width;...+........b->wi |
| b920 | 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 68 65 69 67 68 74 20 3d 20 68 65 69 67 68 74 3b 00 00 | n_inst->state.height.=.height;.. |
| b940 | 00 1c 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 29 20 7b 00 00 | ..........if.(b->egl_window).{.. |
| b960 | 00 45 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 72 65 73 69 | .E............wl_egl_window_resi |
| b980 | 7a 65 28 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c | ze(b->egl_window,.width,.height, |
| b9a0 | 20 30 2c 20 30 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 | .0,.0);............}........}... |
| b9c0 | 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 74 6f 70 6c 65 76 65 6c 5f 63 | .}.......Gstatic.void.toplevel_c |
| b9e0 | 6c 6f 73 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c | lose(void.*data,.struct.xdg_topl |
| ba00 | 65 76 65 6c 20 2a 74 6f 70 6c 65 76 65 6c 29 20 7b 00 00 00 13 20 20 20 20 28 76 6f 69 64 29 74 | evel.*toplevel).{........(void)t |
| ba20 | 6f 70 6c 65 76 65 6c 3b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a | oplevel;........WaylandBackend.* |
| ba40 | 62 20 3d 20 64 61 74 61 3b 00 00 00 28 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 | b.=.data;...(....b->win_inst->st |
| ba60 | 61 74 65 2e 73 68 6f 75 6c 64 5f 63 6c 6f 73 65 20 3d 20 31 3b 00 00 00 01 7d 00 00 00 00 00 00 | ate.should_close.=.1;....}...... |
| ba80 | 00 3f 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 78 64 67 5f 74 6f 70 6c 65 76 | .?static.const.struct.xdg_toplev |
| baa0 | 65 6c 5f 6c 69 73 74 65 6e 65 72 20 74 6f 70 6c 65 76 65 6c 5f 6c 69 73 74 65 6e 65 72 20 3d 20 | el_listener.toplevel_listener.=. |
| bac0 | 7b 00 00 00 24 20 20 20 20 2e 63 6f 6e 66 69 67 75 72 65 20 3d 20 74 6f 70 6c 65 76 65 6c 5f 63 | {...$.....configure.=.toplevel_c |
| bae0 | 6f 6e 66 69 67 75 72 65 2c 00 00 00 1b 20 20 20 20 2e 63 6c 6f 73 65 20 3d 20 74 6f 70 6c 65 76 | onfigure,.........close.=.toplev |
| bb00 | 65 6c 5f 63 6c 6f 73 65 00 00 00 02 7d 3b 00 00 00 00 00 00 00 8e 73 74 61 74 69 63 20 76 6f 69 | el_close....};........static.voi |
| bb20 | 64 20 70 6f 69 6e 74 65 72 5f 65 6e 74 65 72 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 | d.pointer_enter(void.*data,.stru |
| bb40 | 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 | ct.wl_pointer.*pointer,.uint32_t |
| bb60 | 20 73 65 72 69 61 6c 2c 20 73 74 72 75 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 | .serial,.struct.wl_surface.*surf |
| bb80 | 61 63 65 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 73 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 73 | ace,.wl_fixed_t.sx,.wl_fixed_t.s |
| bba0 | 79 29 20 7b 00 00 00 4f 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 70 6f | y).{...O....(void)data;.(void)po |
| bbc0 | 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 73 75 72 66 61 | inter;.(void)serial;.(void)surfa |
| bbe0 | 63 65 3b 20 28 76 6f 69 64 29 73 78 3b 20 28 76 6f 69 64 29 73 79 3b 00 00 00 01 7d 00 00 00 00 | ce;.(void)sx;.(void)sy;....}.... |
| bc00 | 00 00 00 70 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6c 65 61 76 65 28 76 6f | ...pstatic.void.pointer_leave(vo |
| bc20 | 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 | id.*data,.struct.wl_pointer.*poi |
| bc40 | 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 73 74 72 75 63 74 20 77 6c | nter,.uint32_t.serial,.struct.wl |
| bc60 | 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 29 20 7b 00 00 00 3b 20 20 20 20 28 76 6f 69 | _surface.*surface).{...;....(voi |
| bc80 | 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 73 65 72 | d)data;.(void)pointer;.(void)ser |
| bca0 | 69 61 6c 3b 20 28 76 6f 69 64 29 73 75 72 66 61 63 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 71 | ial;.(void)surface;....}.......q |
| bcc0 | 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 20 | static.void.pointer_motion(void. |
| bce0 | 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 | *data,.struct.wl_pointer.*pointe |
| bd00 | 72 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 73 78 2c | r,.uint32_t.time,.wl_fixed_t.sx, |
| bd20 | 20 77 6c 5f 66 69 78 65 64 5f 74 20 73 79 29 20 7b 00 00 00 3e 20 20 20 20 28 76 6f 69 64 29 64 | .wl_fixed_t.sy).{...>....(void)d |
| bd40 | 61 74 61 3b 20 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 | ata;.(void)pointer;.(void)time;. |
| bd60 | 28 76 6f 69 64 29 73 78 3b 20 28 76 6f 69 64 29 73 79 3b 00 00 00 01 7d 00 00 00 00 00 00 00 85 | (void)sx;.(void)sy;....}........ |
| bd80 | 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 28 76 6f 69 64 20 | static.void.pointer_button(void. |
| bda0 | 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 | *data,.struct.wl_pointer.*pointe |
| bdc0 | 72 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d | r,.uint32_t.serial,.uint32_t.tim |
| bde0 | 65 2c 20 75 69 6e 74 33 32 5f 74 20 62 75 74 74 6f 6e 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 | e,.uint32_t.button,.uint32_t.sta |
| be00 | 74 65 29 20 7b 00 00 00 2c 20 20 20 20 28 76 6f 69 64 29 70 6f 69 6e 74 65 72 3b 20 28 76 6f 69 | te).{...,....(void)pointer;.(voi |
| be20 | 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 1d 20 20 20 20 57 61 79 | d)serial;.(void)time;........Way |
| be40 | 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 3d 20 20 20 20 69 6e | landBackend.*b.=.data;...=....in |
| be60 | 74 20 70 72 65 73 73 65 64 20 3d 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 50 4f 49 4e 54 45 52 | t.pressed.=.(state.==.WL_POINTER |
| be80 | 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 3b 00 00 00 41 20 20 20 20 69 | _BUTTON_STATE_PRESSED);...A....i |
| bea0 | 66 20 28 62 75 74 74 6f 6e 20 3d 3d 20 30 78 31 31 30 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d | f.(button.==.0x110).b->win_inst- |
| bec0 | 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 6c 65 66 74 20 3d 20 70 72 65 73 73 65 64 3b 00 00 00 42 | >state.mouse_left.=.pressed;...B |
| bee0 | 20 20 20 20 69 66 20 28 62 75 74 74 6f 6e 20 3d 3d 20 30 78 31 31 31 29 20 62 2d 3e 77 69 6e 5f | ....if.(button.==.0x111).b->win_ |
| bf00 | 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 72 69 67 68 74 20 3d 20 70 72 65 73 73 65 | inst->state.mouse_right.=.presse |
| bf20 | 64 3b 00 00 00 01 7d 00 00 00 00 00 00 00 72 73 74 61 74 69 63 20 76 6f 69 64 20 70 6f 69 6e 74 | d;....}.......rstatic.void.point |
| bf40 | 65 72 5f 61 78 69 73 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 70 6f | er_axis(void.*data,.struct.wl_po |
| bf60 | 69 6e 74 65 72 20 2a 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 | inter.*pointer,.uint32_t.time,.u |
| bf80 | 69 6e 74 33 32 5f 74 20 61 78 69 73 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 76 61 6c 75 65 29 20 | int32_t.axis,.wl_fixed_t.value). |
| bfa0 | 7b 00 00 00 43 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 70 6f 69 6e 74 | {...C....(void)data;.(void)point |
| bfc0 | 65 72 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 61 78 69 73 3b 20 28 76 6f 69 | er;.(void)time;.(void)axis;.(voi |
| bfe0 | 64 29 76 61 6c 75 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3c 73 74 61 74 69 63 20 63 6f 6e 73 | d)value;....}.......<static.cons |
| c000 | 74 20 73 74 72 75 63 74 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 70 6f 69 | t.struct.wl_pointer_listener.poi |
| c020 | 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 1b 20 20 20 20 2e 65 6e 74 65 72 20 | nter_listener.=.{.........enter. |
| c040 | 3d 20 70 6f 69 6e 74 65 72 5f 65 6e 74 65 72 2c 00 00 00 1b 20 20 20 20 2e 6c 65 61 76 65 20 3d | =.pointer_enter,.........leave.= |
| c060 | 20 70 6f 69 6e 74 65 72 5f 6c 65 61 76 65 2c 00 00 00 1d 20 20 20 20 2e 6d 6f 74 69 6f 6e 20 3d | .pointer_leave,.........motion.= |
| c080 | 20 70 6f 69 6e 74 65 72 5f 6d 6f 74 69 6f 6e 2c 00 00 00 1d 20 20 20 20 2e 62 75 74 74 6f 6e 20 | .pointer_motion,.........button. |
| c0a0 | 3d 20 70 6f 69 6e 74 65 72 5f 62 75 74 74 6f 6e 2c 00 00 00 18 20 20 20 20 2e 61 78 69 73 20 3d | =.pointer_button,.........axis.= |
| c0c0 | 20 70 6f 69 6e 74 65 72 5f 61 78 69 73 00 00 00 02 7d 3b 00 00 00 00 00 00 00 c7 73 74 61 74 69 | .pointer_axis....};........stati |
| c0e0 | 63 20 76 6f 69 64 20 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 28 76 6f 69 64 20 2a 64 61 74 | c.void.relative_motion(void.*dat |
| c100 | 61 2c 20 73 74 72 75 63 74 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 | a,.struct.zwp_relative_pointer_v |
| c120 | 31 20 2a 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 2c 20 75 69 6e 74 33 32 5f 74 20 75 74 | 1.*relative_pointer,.uint32_t.ut |
| c140 | 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 69 6d 65 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 | ime,.uint32_t.stime,.wl_fixed_t. |
| c160 | 64 78 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 79 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 78 | dx,.wl_fixed_t.dy,.wl_fixed_t.dx |
| c180 | 5f 75 6e 61 63 63 65 6c 2c 20 77 6c 5f 66 69 78 65 64 5f 74 20 64 79 5f 75 6e 61 63 63 65 6c 29 | _unaccel,.wl_fixed_t.dy_unaccel) |
| c1a0 | 20 7b 00 00 00 49 20 20 20 20 28 76 6f 69 64 29 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 | .{...I....(void)relative_pointer |
| c1c0 | 3b 20 28 76 6f 69 64 29 75 74 69 6d 65 3b 20 28 76 6f 69 64 29 73 74 69 6d 65 3b 20 28 76 6f 69 | ;.(void)utime;.(void)stime;.(voi |
| c1e0 | 64 29 64 78 3b 20 28 76 6f 69 64 29 64 79 3b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 | d)dx;.(void)dy;........WaylandBa |
| c200 | 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 42 20 20 20 20 62 2d 3e 77 69 6e 5f 69 | ckend.*b.=.data;...B....b->win_i |
| c220 | 6e 73 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 78 20 2b 3d 20 77 6c 5f 66 69 78 65 64 5f | nst->state.mouse_dx.+=.wl_fixed_ |
| c240 | 74 6f 5f 64 6f 75 62 6c 65 28 64 78 5f 75 6e 61 63 63 65 6c 29 3b 00 00 00 42 20 20 20 20 62 2d | to_double(dx_unaccel);...B....b- |
| c260 | 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 79 20 2b 3d 20 77 6c 5f | >win_inst->state.mouse_dy.+=.wl_ |
| c280 | 66 69 78 65 64 5f 74 6f 5f 64 6f 75 62 6c 65 28 64 79 5f 75 6e 61 63 63 65 6c 29 3b 00 00 00 01 | fixed_to_double(dy_unaccel);.... |
| c2a0 | 7d 00 00 00 00 00 00 00 52 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 7a 77 70 | }.......Rstatic.const.struct.zwp |
| c2c0 | 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 6c 69 73 74 65 6e 65 72 20 72 65 | _relative_pointer_v1_listener.re |
| c2e0 | 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 26 20 | lative_pointer_listener.=.{...&. |
| c300 | 20 20 20 2e 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 20 3d 20 72 65 6c 61 74 69 76 65 5f 6d | ....relative_motion.=.relative_m |
| c320 | 6f 74 69 6f 6e 00 00 00 02 7d 3b 00 00 00 00 00 00 00 27 73 74 61 74 69 63 20 69 6e 74 20 6b 65 | otion....};.......'static.int.ke |
| c340 | 79 73 79 6d 5f 74 6f 5f 6b 65 79 28 75 69 6e 74 33 32 5f 74 20 6b 73 29 20 7b 00 00 00 11 20 20 | ysym_to_key(uint32_t.ks).{...... |
| c360 | 20 20 73 77 69 74 63 68 20 28 6b 73 29 20 7b 00 00 00 2f 20 20 20 20 20 20 20 20 63 61 73 65 20 | ..switch.(ks).{.../........case. |
| c380 | 30 78 30 30 37 37 3a 20 63 61 73 65 20 30 78 30 30 35 37 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f | 0x0077:.case.0x0057:.return.KEY_ |
| c3a0 | 57 3b 00 00 00 2f 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 36 31 3a 20 63 61 73 65 20 | W;.../........case.0x0061:.case. |
| c3c0 | 30 78 30 30 34 31 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 41 3b 00 00 00 2f 20 20 20 20 20 20 20 | 0x0041:.return.KEY_A;.../....... |
| c3e0 | 20 63 61 73 65 20 30 78 30 30 37 33 3a 20 63 61 73 65 20 30 78 30 30 35 33 3a 20 72 65 74 75 72 | .case.0x0073:.case.0x0053:.retur |
| c400 | 6e 20 4b 45 59 5f 53 3b 00 00 00 2f 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 36 34 3a | n.KEY_S;.../........case.0x0064: |
| c420 | 20 63 61 73 65 20 30 78 30 30 34 34 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 44 3b 00 00 00 26 20 | .case.0x0044:.return.KEY_D;...&. |
| c440 | 20 20 20 20 20 20 20 63 61 73 65 20 30 78 30 30 32 30 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 53 | .......case.0x0020:.return.KEY_S |
| c460 | 50 41 43 45 3b 00 00 00 24 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 66 66 31 62 3a 20 72 65 | PACE;...$........case.0xff1b:.re |
| c480 | 74 75 72 6e 20 4b 45 59 5f 45 53 43 3b 00 00 00 22 20 20 20 20 20 20 20 20 63 61 73 65 20 30 78 | turn.KEY_ESC;..."........case.0x |
| c4a0 | 30 30 33 31 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 31 3b 00 00 00 22 20 20 20 20 20 20 20 20 63 | 0031:.return.KEY_1;..."........c |
| c4c0 | 61 73 65 20 30 78 30 30 33 32 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 32 3b 00 00 00 22 20 20 20 | ase.0x0032:.return.KEY_2;..."... |
| c4e0 | 20 20 20 20 20 63 61 73 65 20 30 78 30 30 33 33 3a 20 72 65 74 75 72 6e 20 4b 45 59 5f 33 3b 00 | .....case.0x0033:.return.KEY_3;. |
| c500 | 00 00 1b 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 3a 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 | ...........default:.return.-1;.. |
| c520 | 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 82 73 74 61 74 69 63 20 76 6f 69 64 20 | ......}....}........static.void. |
| c540 | 6b 65 79 62 6f 61 72 64 5f 6b 65 79 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 | keyboard_key(void.*data,.struct. |
| c560 | 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 | wl_keyboard.*keyboard,.uint32_t. |
| c580 | 73 65 72 69 61 6c 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 | serial,.uint32_t.time,.uint32_t. |
| c5a0 | 6b 65 79 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 2d 20 20 20 20 28 76 | key,.uint32_t.state).{...-....(v |
| c5c0 | 6f 69 64 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 | oid)keyboard;.(void)serial;.(voi |
| c5e0 | 64 29 74 69 6d 65 3b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 | d)time;........WaylandBackend.*b |
| c600 | 20 3d 20 64 61 74 61 3b 00 00 00 1f 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6b 65 79 73 79 6d 20 | .=.data;........uint32_t.keysym. |
| c620 | 3d 20 6b 65 79 20 2b 20 38 3b 20 00 00 00 22 20 20 20 20 69 6e 74 20 6b 20 3d 20 6b 65 79 73 79 | =.key.+.8;...."....int.k.=.keysy |
| c640 | 6d 5f 74 6f 5f 6b 65 79 28 6b 65 79 73 79 6d 29 3b 00 00 00 56 20 20 20 20 69 66 20 28 6b 20 3e | m_to_key(keysym);...V....if.(k.> |
| c660 | 3d 20 30 29 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 2d 3e 73 74 61 74 65 2e 6b 65 79 73 5b 6b 5d 20 | =.0).b->win_inst->state.keys[k]. |
| c680 | 3d 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 | =.(state.==.WL_KEYBOARD_KEY_STAT |
| c6a0 | 45 5f 50 52 45 53 53 45 44 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 6f 73 74 61 74 69 63 20 76 | E_PRESSED);....}.......ostatic.v |
| c6c0 | 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 | oid.keyboard_keymap(void.*data,. |
| c6e0 | 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 2c 20 75 69 | struct.wl_keyboard.*keyboard,.ui |
| c700 | 6e 74 33 32 5f 74 20 66 6f 72 6d 61 74 2c 20 69 6e 74 20 66 64 2c 20 75 69 6e 74 33 32 5f 74 20 | nt32_t.format,.int.fd,.uint32_t. |
| c720 | 73 69 7a 65 29 20 7b 00 00 00 39 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 | size).{...9....(void)data;.(void |
| c740 | 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 29 66 6f 72 6d 61 74 3b 20 28 76 6f 69 64 29 73 | )keyboard;.(void)format;.(void)s |
| c760 | 69 7a 65 3b 00 00 00 0e 20 20 20 20 63 6c 6f 73 65 28 66 64 29 3b 00 00 00 01 7d 00 00 00 00 00 | ize;........close(fd);....}..... |
| c780 | 00 00 8a 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 28 76 6f | ...static.void.keyboard_enter(vo |
| c7a0 | 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 2a 6b 65 | id.*data,.struct.wl_keyboard.*ke |
| c7c0 | 79 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 73 74 72 75 63 74 20 | yboard,.uint32_t.serial,.struct. |
| c7e0 | 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 2c 20 73 74 72 75 63 74 20 77 6c 5f 61 | wl_surface.*surface,.struct.wl_a |
| c800 | 72 72 61 79 20 2a 6b 65 79 73 29 20 7b 00 00 00 48 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b | rray.*keys).{...H....(void)data; |
| c820 | 20 28 76 6f 69 64 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 29 73 65 72 69 61 6c 3b 20 28 | .(void)keyboard;.(void)serial;.( |
| c840 | 76 6f 69 64 29 73 75 72 66 61 63 65 3b 20 28 76 6f 69 64 29 6b 65 79 73 3b 00 00 00 01 7d 00 00 | void)surface;.(void)keys;....}.. |
| c860 | 00 00 00 00 00 73 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 | .....sstatic.void.keyboard_leave |
| c880 | 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 20 | (void.*data,.struct.wl_keyboard. |
| c8a0 | 2a 6b 65 79 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 73 74 72 75 | *keyboard,.uint32_t.serial,.stru |
| c8c0 | 63 74 20 77 6c 5f 73 75 72 66 61 63 65 20 2a 73 75 72 66 61 63 65 29 20 7b 00 00 00 3c 20 20 20 | ct.wl_surface.*surface).{...<... |
| c8e0 | 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f | .(void)data;.(void)keyboard;.(vo |
| c900 | 69 64 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 73 75 72 66 61 63 65 3b 00 00 00 01 7d 00 00 | id)serial;.(void)surface;....}.. |
| c920 | 00 00 00 00 00 b1 73 74 61 74 69 63 20 76 6f 69 64 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 | ......static.void.keyboard_modif |
| c940 | 69 65 72 73 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f | iers(void.*data,.struct.wl_keybo |
| c960 | 61 72 64 20 2a 6b 65 79 62 6f 61 72 64 2c 20 75 69 6e 74 33 32 5f 74 20 73 65 72 69 61 6c 2c 20 | ard.*keyboard,.uint32_t.serial,. |
| c980 | 75 69 6e 74 33 32 5f 74 20 6d 6f 64 73 5f 64 65 70 72 65 73 73 65 64 2c 20 75 69 6e 74 33 32 5f | uint32_t.mods_depressed,.uint32_ |
| c9a0 | 74 20 6d 6f 64 73 5f 6c 61 74 63 68 65 64 2c 20 75 69 6e 74 33 32 5f 74 20 6d 6f 64 73 5f 6c 6f | t.mods_latched,.uint32_t.mods_lo |
| c9c0 | 63 6b 65 64 2c 20 75 69 6e 74 33 32 5f 74 20 67 72 6f 75 70 29 20 7b 00 00 00 77 20 20 20 20 28 | cked,.uint32_t.group).{...w....( |
| c9e0 | 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 6b 65 79 62 6f 61 72 64 3b 20 28 76 6f 69 64 | void)data;.(void)keyboard;.(void |
| ca00 | 29 73 65 72 69 61 6c 3b 20 28 76 6f 69 64 29 6d 6f 64 73 5f 64 65 70 72 65 73 73 65 64 3b 20 28 | )serial;.(void)mods_depressed;.( |
| ca20 | 76 6f 69 64 29 6d 6f 64 73 5f 6c 61 74 63 68 65 64 3b 20 28 76 6f 69 64 29 6d 6f 64 73 5f 6c 6f | void)mods_latched;.(void)mods_lo |
| ca40 | 63 6b 65 64 3b 20 28 76 6f 69 64 29 67 72 6f 75 70 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3e 73 | cked;.(void)group;....}.......>s |
| ca60 | 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f 6c | tatic.const.struct.wl_keyboard_l |
| ca80 | 69 73 74 65 6e 65 72 20 6b 65 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 | istener.keyboard_listener.=.{... |
| caa0 | 1e 20 20 20 20 2e 6b 65 79 6d 61 70 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 6d 61 70 2c 00 | ......keymap.=.keyboard_keymap,. |
| cac0 | 00 00 1c 20 20 20 20 2e 65 6e 74 65 72 20 3d 20 6b 65 79 62 6f 61 72 64 5f 65 6e 74 65 72 2c 00 | ........enter.=.keyboard_enter,. |
| cae0 | 00 00 1c 20 20 20 20 2e 6c 65 61 76 65 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6c 65 61 76 65 2c 00 | ........leave.=.keyboard_leave,. |
| cb00 | 00 00 18 20 20 20 20 2e 6b 65 79 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6b 65 79 2c 00 00 00 23 20 | ........key.=.keyboard_key,...#. |
| cb20 | 20 20 20 2e 6d 6f 64 69 66 69 65 72 73 20 3d 20 6b 65 79 62 6f 61 72 64 5f 6d 6f 64 69 66 69 65 | ....modifiers.=.keyboard_modifie |
| cb40 | 72 73 00 00 00 02 7d 3b 00 00 00 00 00 00 00 58 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 61 74 | rs....};.......Xstatic.void.seat |
| cb60 | 5f 63 61 70 61 62 69 6c 69 74 69 65 73 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 74 72 75 63 74 | _capabilities(void.*data,.struct |
| cb80 | 20 77 6c 5f 73 65 61 74 20 2a 73 65 61 74 2c 20 75 69 6e 74 33 32 5f 74 20 63 61 70 61 62 69 6c | .wl_seat.*seat,.uint32_t.capabil |
| cba0 | 69 74 69 65 73 29 20 7b 00 00 00 1d 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a | ities).{........WaylandBackend.* |
| cbc0 | 62 20 3d 20 64 61 74 61 3b 00 00 00 45 20 20 20 20 69 66 20 28 28 63 61 70 61 62 69 6c 69 74 69 | b.=.data;...E....if.((capabiliti |
| cbe0 | 65 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 50 4f 49 4e 54 45 52 29 | es.&.WL_SEAT_CAPABILITY_POINTER) |
| cc00 | 20 26 26 20 21 62 2d 3e 70 6f 69 6e 74 65 72 29 20 7b 00 00 00 2f 20 20 20 20 20 20 20 20 62 2d | .&&.!b->pointer).{.../........b- |
| cc20 | 3e 70 6f 69 6e 74 65 72 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 5f 70 6f 69 6e 74 65 72 28 73 | >pointer.=.wl_seat_get_pointer(s |
| cc40 | 65 61 74 29 3b 00 00 00 42 20 20 20 20 20 20 20 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 61 64 64 5f | eat);...B........wl_pointer_add_ |
| cc60 | 6c 69 73 74 65 6e 65 72 28 62 2d 3e 70 6f 69 6e 74 65 72 2c 20 26 70 6f 69 6e 74 65 72 5f 6c 69 | listener(b->pointer,.&pointer_li |
| cc80 | 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 2a 20 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 72 65 | stener,.b);...*........if.(b->re |
| cca0 | 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 29 20 7b 00 00 00 80 20 20 20 | lative_pointer_manager).{....... |
| ccc0 | 20 20 20 20 20 20 20 20 20 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 20 3d 20 7a | .........b->relative_pointer.=.z |
| cce0 | 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 67 | wp_relative_pointer_manager_v1_g |
| cd00 | 65 74 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f | et_relative_pointer(b->relative_ |
| cd20 | 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 65 72 2c 20 62 2d 3e 70 6f 69 6e 74 65 72 29 3b 00 00 00 | pointer_manager,.b->pointer);... |
| cd40 | 65 20 20 20 20 20 20 20 20 20 20 20 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 | e............zwp_relative_pointe |
| cd60 | 72 5f 76 31 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f | r_v1_add_listener(b->relative_po |
| cd80 | 69 6e 74 65 72 2c 20 26 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6c 69 73 74 65 6e 65 | inter,.&relative_pointer_listene |
| cda0 | 72 2c 20 62 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 33 20 20 20 20 20 20 20 20 69 | r,.b);............}...3........i |
| cdc0 | 66 20 28 62 2d 3e 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 26 26 20 62 2d 3e | f.(b->pointer_constraints.&&.b-> |
| cde0 | 73 75 72 66 61 63 65 29 20 7b 00 00 00 ae 20 20 20 20 20 20 20 20 20 20 20 20 62 2d 3e 6c 6f 63 | surface).{................b->loc |
| ce00 | 6b 65 64 5f 70 6f 69 6e 74 65 72 20 3d 20 7a 77 70 5f 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 | ked_pointer.=.zwp_pointer_constr |
| ce20 | 61 69 6e 74 73 5f 76 31 5f 6c 6f 63 6b 5f 70 6f 69 6e 74 65 72 28 62 2d 3e 70 6f 69 6e 74 65 72 | aints_v1_lock_pointer(b->pointer |
| ce40 | 5f 63 6f 6e 73 74 72 61 69 6e 74 73 2c 20 62 2d 3e 73 75 72 66 61 63 65 2c 20 62 2d 3e 70 6f 69 | _constraints,.b->surface,.b->poi |
| ce60 | 6e 74 65 72 2c 20 4e 55 4c 4c 2c 20 5a 57 50 5f 50 4f 49 4e 54 45 52 5f 43 4f 4e 53 54 52 41 49 | nter,.NULL,.ZWP_POINTER_CONSTRAI |
| ce80 | 4e 54 53 5f 56 31 5f 4c 49 46 45 54 49 4d 45 5f 50 45 52 53 49 53 54 45 4e 54 29 3b 00 00 00 09 | NTS_V1_LIFETIME_PERSISTENT);.... |
| cea0 | 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 45 20 20 20 20 69 66 20 28 21 28 | ........}........}...E....if.(!( |
| cec0 | 63 61 70 61 62 69 6c 69 74 69 65 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 | capabilities.&.WL_SEAT_CAPABILIT |
| cee0 | 59 5f 50 4f 49 4e 54 45 52 29 20 26 26 20 62 2d 3e 70 6f 69 6e 74 65 72 29 20 7b 00 00 00 76 20 | Y_POINTER).&&.b->pointer).{...v. |
| cf00 | 20 20 20 20 20 20 20 69 66 20 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 29 20 | .......if.(b->relative_pointer). |
| cf20 | 7b 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 76 31 5f 64 65 73 74 72 6f | {.zwp_relative_pointer_v1_destro |
| cf40 | 79 28 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 29 3b 20 62 2d 3e 72 65 6c 61 74 | y(b->relative_pointer);.b->relat |
| cf60 | 69 76 65 5f 70 6f 69 6e 74 65 72 20 3d 20 4e 55 4c 4c 3b 20 7d 00 00 00 27 20 20 20 20 20 20 20 | ive_pointer.=.NULL;.}...'....... |
| cf80 | 20 77 6c 5f 70 6f 69 6e 74 65 72 5f 64 65 73 74 72 6f 79 28 62 2d 3e 70 6f 69 6e 74 65 72 29 3b | .wl_pointer_destroy(b->pointer); |
| cfa0 | 00 00 00 1a 20 20 20 20 20 20 20 20 62 2d 3e 70 6f 69 6e 74 65 72 20 3d 20 4e 55 4c 4c 3b 00 00 | ............b->pointer.=.NULL;.. |
| cfc0 | 00 05 20 20 20 20 7d 00 00 00 00 00 00 00 47 20 20 20 20 69 66 20 28 28 63 61 70 61 62 69 6c 69 | ......}.......G....if.((capabili |
| cfe0 | 74 69 65 73 20 26 20 57 4c 5f 53 45 41 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 4b 45 59 42 4f 41 | ties.&.WL_SEAT_CAPABILITY_KEYBOA |
| d000 | 52 44 29 20 26 26 20 21 62 2d 3e 6b 65 79 62 6f 61 72 64 29 20 7b 00 00 00 31 20 20 20 20 20 20 | RD).&&.!b->keyboard).{...1...... |
| d020 | 20 20 62 2d 3e 6b 65 79 62 6f 61 72 64 20 3d 20 77 6c 5f 73 65 61 74 5f 67 65 74 5f 6b 65 79 62 | ..b->keyboard.=.wl_seat_get_keyb |
| d040 | 6f 61 72 64 28 73 65 61 74 29 3b 00 00 00 45 20 20 20 20 20 20 20 20 77 6c 5f 6b 65 79 62 6f 61 | oard(seat);...E........wl_keyboa |
| d060 | 72 64 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 2d 3e 6b 65 79 62 6f 61 72 64 2c 20 26 6b 65 | rd_add_listener(b->keyboard,.&ke |
| d080 | 79 62 6f 61 72 64 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 | yboard_listener,.b);........}... |
| d0a0 | 47 20 20 20 20 69 66 20 28 21 28 63 61 70 61 62 69 6c 69 74 69 65 73 20 26 20 57 4c 5f 53 45 41 | G....if.(!(capabilities.&.WL_SEA |
| d0c0 | 54 5f 43 41 50 41 42 49 4c 49 54 59 5f 4b 45 59 42 4f 41 52 44 29 20 26 26 20 62 2d 3e 6b 65 79 | T_CAPABILITY_KEYBOARD).&&.b->key |
| d0e0 | 62 6f 61 72 64 29 20 7b 00 00 00 29 20 20 20 20 20 20 20 20 77 6c 5f 6b 65 79 62 6f 61 72 64 5f | board).{...)........wl_keyboard_ |
| d100 | 64 65 73 74 72 6f 79 28 62 2d 3e 6b 65 79 62 6f 61 72 64 29 3b 00 00 00 1b 20 20 20 20 20 20 20 | destroy(b->keyboard);........... |
| d120 | 20 62 2d 3e 6b 65 79 62 6f 61 72 64 20 3d 20 4e 55 4c 4c 3b 00 00 00 05 20 20 20 20 7d 00 00 00 | .b->keyboard.=.NULL;........}... |
| d140 | 01 7d 00 00 00 00 00 00 00 36 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 77 6c | .}.......6static.const.struct.wl |
| d160 | 5f 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 20 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 20 3d 20 7b | _seat_listener.seat_listener.=.{ |
| d180 | 00 00 00 25 20 20 20 20 2e 63 61 70 61 62 69 6c 69 74 69 65 73 20 3d 20 73 65 61 74 5f 63 61 70 | ...%.....capabilities.=.seat_cap |
| d1a0 | 61 62 69 6c 69 74 69 65 73 00 00 00 02 7d 3b 00 00 00 00 00 00 00 7f 73 74 61 74 69 63 20 76 6f | abilities....};........static.vo |
| d1c0 | 69 64 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 73 | id.registry_global(void.*data,.s |
| d1e0 | 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 65 67 69 73 74 72 79 2c 20 75 69 6e | truct.wl_registry.*registry,.uin |
| d200 | 74 33 32 5f 74 20 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 69 6e 74 65 72 66 61 63 | t32_t.name,.const.char.*interfac |
| d220 | 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 65 72 73 69 6f 6e 29 20 7b 00 00 00 1d 20 20 20 20 57 61 | e,.uint32_t.version).{........Wa |
| d240 | 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 64 61 74 61 3b 00 00 00 12 20 20 20 20 28 | ylandBackend.*b.=.data;........( |
| d260 | 76 6f 69 64 29 76 65 72 73 69 6f 6e 3b 00 00 00 3f 20 20 20 20 69 66 20 28 73 74 72 63 6d 70 28 | void)version;...?....if.(strcmp( |
| d280 | 69 6e 74 65 72 66 61 63 65 2c 20 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 69 6e 74 65 72 66 61 | interface,.wl_compositor_interfa |
| d2a0 | 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 56 20 20 20 20 20 20 20 20 62 2d 3e 63 | ce.name).==.0).{...V........b->c |
| d2c0 | 6f 6d 70 6f 73 69 74 6f 72 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 | ompositor.=.wl_registry_bind(reg |
| d2e0 | 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 69 6e 74 65 | istry,.name,.&wl_compositor_inte |
| d300 | 72 66 61 63 65 2c 20 34 29 3b 00 00 00 44 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 73 74 72 | rface,.4);...D....}.else.if.(str |
| d320 | 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 78 64 67 5f 77 6d 5f 62 61 73 65 5f 69 6e 74 65 72 | cmp(interface,.xdg_wm_base_inter |
| d340 | 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 62 20 20 20 20 20 20 20 20 73 74 | face.name).==.0).{...b........st |
| d360 | 72 75 63 74 20 78 64 67 5f 77 6d 5f 62 61 73 65 20 2a 77 6d 5f 62 61 73 65 20 3d 20 77 6c 5f 72 | ruct.xdg_wm_base.*wm_base.=.wl_r |
| d380 | 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 78 64 | egistry_bind(registry,.name,.&xd |
| d3a0 | 67 5f 77 6d 5f 62 61 73 65 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 00 16 20 20 20 20 | g_wm_base_interface,.1);........ |
| d3c0 | 20 20 20 20 28 76 6f 69 64 29 77 6d 5f 62 61 73 65 3b 00 00 00 40 20 20 20 20 7d 20 65 6c 73 65 | ....(void)wm_base;...@....}.else |
| d3e0 | 20 69 66 20 28 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 77 6c 5f 73 65 61 74 5f 69 | .if.(strcmp(interface,.wl_seat_i |
| d400 | 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 4a 20 20 20 20 20 20 | nterface.name).==.0).{...J...... |
| d420 | 20 20 62 2d 3e 73 65 61 74 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 | ..b->seat.=.wl_registry_bind(reg |
| d440 | 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 77 6c 5f 73 65 61 74 5f 69 6e 74 65 72 66 61 63 65 2c | istry,.name,.&wl_seat_interface, |
| d460 | 20 37 29 3b 00 00 00 39 20 20 20 20 20 20 20 20 77 6c 5f 73 65 61 74 5f 61 64 64 5f 6c 69 73 74 | .7);...9........wl_seat_add_list |
| d480 | 65 6e 65 72 28 62 2d 3e 73 65 61 74 2c 20 26 73 65 61 74 5f 6c 69 73 74 65 6e 65 72 2c 20 62 29 | ener(b->seat,.&seat_listener,.b) |
| d4a0 | 3b 00 00 00 58 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 73 74 72 63 6d 70 28 69 6e 74 65 72 | ;...X....}.else.if.(strcmp(inter |
| d4c0 | 66 61 63 65 2c 20 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e 61 67 | face,.zwp_relative_pointer_manag |
| d4e0 | 65 72 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 | er_v1_interface.name).==.0).{... |
| d500 | 76 20 20 20 20 20 20 20 20 62 2d 3e 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 6e | v........b->relative_pointer_man |
| d520 | 61 67 65 72 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 69 6e 64 28 72 65 67 69 73 74 72 79 | ager.=.wl_registry_bind(registry |
| d540 | 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 72 65 6c 61 74 69 76 65 5f 70 6f 69 6e 74 65 72 5f 6d 61 | ,.name,.&zwp_relative_pointer_ma |
| d560 | 6e 61 67 65 72 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 00 53 20 20 20 20 7d | nager_v1_interface,.1);...S....} |
| d580 | 20 65 6c 73 65 20 69 66 20 28 73 74 72 63 6d 70 28 69 6e 74 65 72 66 61 63 65 2c 20 7a 77 70 5f | .else.if.(strcmp(interface,.zwp_ |
| d5a0 | 70 6f 69 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 | pointer_constraints_v1_interface |
| d5c0 | 2e 6e 61 6d 65 29 20 3d 3d 20 30 29 20 7b 00 00 00 6c 20 20 20 20 20 20 20 20 62 2d 3e 70 6f 69 | .name).==.0).{...l........b->poi |
| d5e0 | 6e 74 65 72 5f 63 6f 6e 73 74 72 61 69 6e 74 73 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 62 | nter_constraints.=.wl_registry_b |
| d600 | 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d 65 2c 20 26 7a 77 70 5f 70 6f 69 6e 74 65 72 | ind(registry,.name,.&zwp_pointer |
| d620 | 5f 63 6f 6e 73 74 72 61 69 6e 74 73 5f 76 31 5f 69 6e 74 65 72 66 61 63 65 2c 20 31 29 3b 00 00 | _constraints_v1_interface,.1);.. |
| d640 | 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 5d 73 74 61 74 69 63 20 76 6f 69 64 20 | ......}....}.......]static.void. |
| d660 | 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 | registry_global_remove(void.*dat |
| d680 | 61 2c 20 73 74 72 75 63 74 20 77 6c 5f 72 65 67 69 73 74 72 79 20 2a 72 65 67 69 73 74 72 79 2c | a,.struct.wl_registry.*registry, |
| d6a0 | 20 75 69 6e 74 33 32 5f 74 20 6e 61 6d 65 29 20 7b 00 00 00 2b 20 20 20 20 28 76 6f 69 64 29 64 | .uint32_t.name).{...+....(void)d |
| d6c0 | 61 74 61 3b 20 28 76 6f 69 64 29 72 65 67 69 73 74 72 79 3b 20 28 76 6f 69 64 29 6e 61 6d 65 3b | ata;.(void)registry;.(void)name; |
| d6e0 | 00 00 00 01 7d 00 00 00 00 00 00 00 3e 73 74 61 74 69 63 20 63 6f 6e 73 74 20 73 74 72 75 63 74 | ....}.......>static.const.struct |
| d700 | 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 20 72 65 67 69 73 74 72 79 5f 6c | .wl_registry_listener.registry_l |
| d720 | 69 73 74 65 6e 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 67 6c 6f 62 61 6c 20 3d 20 72 65 67 | istener.=.{.........global.=.reg |
| d740 | 69 73 74 72 79 5f 67 6c 6f 62 61 6c 2c 00 00 00 2b 20 20 20 20 2e 67 6c 6f 62 61 6c 5f 72 65 6d | istry_global,...+.....global_rem |
| d760 | 6f 76 65 20 3d 20 72 65 67 69 73 74 72 79 5f 67 6c 6f 62 61 6c 5f 72 65 6d 6f 76 65 00 00 00 02 | ove.=.registry_global_remove.... |
| d780 | 7d 3b 00 00 00 00 00 00 00 54 69 6e 74 20 77 69 6e 64 6f 77 5f 77 61 79 6c 61 6e 64 5f 69 6e 69 | };.......Tint.window_wayland_ini |
| d7a0 | 74 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 2c 20 69 6e 74 20 77 69 64 74 68 2c 20 69 6e | t(NativeWindow.*w,.int.width,.in |
| d7c0 | 74 20 68 65 69 67 68 74 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 69 74 6c 65 29 20 7b 00 00 | t.height,.const.char.*title).{.. |
| d7e0 | 00 10 20 20 20 20 28 76 6f 69 64 29 74 69 74 6c 65 3b 00 00 00 3a 20 20 20 20 57 61 79 6c 61 6e | ......(void)title;...:....Waylan |
| d800 | 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 63 61 6c 6c 6f 63 28 31 2c 20 73 69 7a 65 6f 66 28 57 | dBackend.*b.=.calloc(1,.sizeof(W |
| d820 | 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 29 29 3b 00 00 00 13 20 20 20 20 77 2d 3e 62 61 63 6b 65 | aylandBackend));........w->backe |
| d840 | 6e 64 20 3d 20 62 3b 00 00 00 14 20 20 20 20 62 2d 3e 77 69 6e 5f 69 6e 73 74 20 3d 20 77 3b 00 | nd.=.b;........b->win_inst.=.w;. |
| d860 | 00 00 00 00 00 00 2a 20 20 20 20 62 2d 3e 64 69 73 70 6c 61 79 20 3d 20 77 6c 5f 64 69 73 70 6c | ......*....b->display.=.wl_displ |
| d880 | 61 79 5f 63 6f 6e 6e 65 63 74 28 4e 55 4c 4c 29 3b 00 00 00 2b 20 20 20 20 69 66 20 28 21 62 2d | ay_connect(NULL);...+....if.(!b- |
| d8a0 | 3e 64 69 73 70 6c 61 79 29 20 7b 20 66 72 65 65 28 62 29 3b 20 72 65 74 75 72 6e 20 30 3b 20 7d | >display).{.free(b);.return.0;.} |
| d8c0 | 00 00 00 00 00 00 00 36 20 20 20 20 62 2d 3e 72 65 67 69 73 74 72 79 20 3d 20 77 6c 5f 64 69 73 | .......6....b->registry.=.wl_dis |
| d8e0 | 70 6c 61 79 5f 67 65 74 5f 72 65 67 69 73 74 72 79 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 | play_get_registry(b->display);.. |
| d900 | 00 41 20 20 20 20 77 6c 5f 72 65 67 69 73 74 72 79 5f 61 64 64 5f 6c 69 73 74 65 6e 65 72 28 62 | .A....wl_registry_add_listener(b |
| d920 | 2d 3e 72 65 67 69 73 74 72 79 2c 20 26 72 65 67 69 73 74 72 79 5f 6c 69 73 74 65 6e 65 72 2c 20 | ->registry,.®istry_listener,. |
| d940 | 62 29 3b 00 00 00 25 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 6f 75 6e 64 74 72 69 70 28 | b);...%....wl_display_roundtrip( |
| d960 | 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 00 00 00 00 51 20 20 20 20 69 66 20 28 21 62 2d 3e | b->display);.......Q....if.(!b-> |
| d980 | 63 6f 6d 70 6f 73 69 74 6f 72 29 20 7b 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 63 6f 6e 6e | compositor).{.wl_display_disconn |
| d9a0 | 65 63 74 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 20 66 72 65 65 28 62 29 3b 20 72 65 74 75 72 6e | ect(b->display);.free(b);.return |
| d9c0 | 20 30 3b 20 7d 00 00 00 00 00 00 00 3d 20 20 20 20 62 2d 3e 73 75 72 66 61 63 65 20 3d 20 77 6c | .0;.}.......=....b->surface.=.wl |
| d9e0 | 5f 63 6f 6d 70 6f 73 69 74 6f 72 5f 63 72 65 61 74 65 5f 73 75 72 66 61 63 65 28 62 2d 3e 63 6f | _compositor_create_surface(b->co |
| da00 | 6d 70 6f 73 69 74 6f 72 29 3b 00 00 00 04 20 20 20 20 00 00 00 2e 20 20 20 20 2f 2f 20 42 69 6e | mpositor);................//.Bin |
| da20 | 64 20 6c 69 73 74 65 6e 65 72 73 20 74 6f 20 61 76 6f 69 64 20 75 6e 75 73 65 64 20 77 61 72 6e | d.listeners.to.avoid.unused.warn |
| da40 | 69 6e 67 73 00 00 00 20 20 20 20 20 28 76 6f 69 64 29 78 64 67 5f 73 75 72 66 61 63 65 5f 6c 69 | ings........(void)xdg_surface_li |
| da60 | 73 74 65 6e 65 72 5f 3b 00 00 00 1c 20 20 20 20 28 76 6f 69 64 29 74 6f 70 6c 65 76 65 6c 5f 6c | stener_;........(void)toplevel_l |
| da80 | 69 73 74 65 6e 65 72 3b 00 00 00 00 00 00 00 44 20 20 20 20 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f | istener;.......D....b->egl_windo |
| daa0 | 77 20 3d 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 63 72 65 61 74 65 28 62 2d 3e 73 75 72 66 | w.=.wl_egl_window_create(b->surf |
| dac0 | 61 63 65 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 29 3b 00 00 00 00 00 00 00 45 20 20 20 20 | ace,.width,.height);.......E.... |
| dae0 | 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 20 3d 20 65 67 6c 47 65 74 44 69 73 70 6c 61 79 28 28 | b->egl_display.=.eglGetDisplay(( |
| db00 | 45 47 4c 4e 61 74 69 76 65 44 69 73 70 6c 61 79 54 79 70 65 29 62 2d 3e 64 69 73 70 6c 61 79 29 | EGLNativeDisplayType)b->display) |
| db20 | 3b 00 00 00 2e 20 20 20 20 65 67 6c 49 6e 69 74 69 61 6c 69 7a 65 28 62 2d 3e 65 67 6c 5f 64 69 | ;........eglInitialize(b->egl_di |
| db40 | 73 70 6c 61 79 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 00 1f 20 20 20 20 65 67 6c 42 69 | splay,.NULL,.NULL);........eglBi |
| db60 | 6e 64 41 50 49 28 45 47 4c 5f 4f 50 45 4e 47 4c 5f 41 50 49 29 3b 00 00 00 00 00 00 00 18 20 20 | ndAPI(EGL_OPENGL_API);.......... |
| db80 | 20 20 45 47 4c 69 6e 74 20 61 74 74 72 69 62 73 5b 5d 20 3d 20 7b 00 00 00 29 20 20 20 20 20 20 | ..EGLint.attribs[].=.{...)...... |
| dba0 | 20 20 45 47 4c 5f 53 55 52 46 41 43 45 5f 54 59 50 45 2c 20 45 47 4c 5f 57 49 4e 44 4f 57 5f 42 | ..EGL_SURFACE_TYPE,.EGL_WINDOW_B |
| dbc0 | 49 54 2c 00 00 00 18 20 20 20 20 20 20 20 20 45 47 4c 5f 52 45 44 5f 53 49 5a 45 2c 20 38 2c 00 | IT,............EGL_RED_SIZE,.8,. |
| dbe0 | 00 00 1a 20 20 20 20 20 20 20 20 45 47 4c 5f 47 52 45 45 4e 5f 53 49 5a 45 2c 20 38 2c 00 00 00 | ...........EGL_GREEN_SIZE,.8,... |
| dc00 | 19 20 20 20 20 20 20 20 20 45 47 4c 5f 42 4c 55 45 5f 53 49 5a 45 2c 20 38 2c 00 00 00 2c 20 20 | .........EGL_BLUE_SIZE,.8,...,.. |
| dc20 | 20 20 20 20 20 20 45 47 4c 5f 52 45 4e 44 45 52 41 42 4c 45 5f 54 59 50 45 2c 20 45 47 4c 5f 4f | ......EGL_RENDERABLE_TYPE,.EGL_O |
| dc40 | 50 45 4e 47 4c 5f 42 49 54 2c 00 00 00 10 20 20 20 20 20 20 20 20 45 47 4c 5f 4e 4f 4e 45 00 00 | PENGL_BIT,............EGL_NONE.. |
| dc60 | 00 06 20 20 20 20 7d 3b 00 00 00 15 20 20 20 20 45 47 4c 43 6f 6e 66 69 67 20 63 6f 6e 66 69 67 | ......};........EGLConfig.config |
| dc80 | 3b 00 00 00 17 20 20 20 20 45 47 4c 69 6e 74 20 6e 75 6d 5f 63 6f 6e 66 69 67 73 3b 00 00 00 47 | ;........EGLint.num_configs;...G |
| dca0 | 20 20 20 20 65 67 6c 43 68 6f 6f 73 65 43 6f 6e 66 69 67 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c | ....eglChooseConfig(b->egl_displ |
| dcc0 | 61 79 2c 20 61 74 74 72 69 62 73 2c 20 26 63 6f 6e 66 69 67 2c 20 31 2c 20 26 6e 75 6d 5f 63 6f | ay,.attribs,.&config,.1,.&num_co |
| dce0 | 6e 66 69 67 73 29 3b 00 00 00 00 00 00 00 54 20 20 20 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 | nfigs);.......T....b->egl_contex |
| dd00 | 74 20 3d 20 65 67 6c 43 72 65 61 74 65 43 6f 6e 74 65 78 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 | t.=.eglCreateContext(b->egl_disp |
| dd20 | 6c 61 79 2c 20 63 6f 6e 66 69 67 2c 20 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 2c 20 4e 55 4c | lay,.config,.EGL_NO_CONTEXT,.NUL |
| dd40 | 4c 29 3b 00 00 00 6e 20 20 20 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 20 3d 20 65 67 6c 43 | L);...n....b->egl_surface.=.eglC |
| dd60 | 72 65 61 74 65 57 69 6e 64 6f 77 53 75 72 66 61 63 65 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 | reateWindowSurface(b->egl_displa |
| dd80 | 79 2c 20 63 6f 6e 66 69 67 2c 20 28 45 47 4c 4e 61 74 69 76 65 57 69 6e 64 6f 77 54 79 70 65 29 | y,.config,.(EGLNativeWindowType) |
| dda0 | 62 2d 3e 65 67 6c 5f 77 69 6e 64 6f 77 2c 20 4e 55 4c 4c 29 3b 00 00 00 53 20 20 20 20 65 67 6c | b->egl_window,.NULL);...S....egl |
| ddc0 | 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 | MakeCurrent(b->egl_display,.b->e |
| dde0 | 67 6c 5f 73 75 72 66 61 63 65 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 2c 20 62 2d 3e 65 | gl_surface,.b->egl_surface,.b->e |
| de00 | 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 00 00 00 00 1b 20 20 20 20 77 2d 3e 73 74 61 74 65 | gl_context);............w->state |
| de20 | 2e 77 69 64 74 68 20 3d 20 77 69 64 74 68 3b 00 00 00 1d 20 20 20 20 77 2d 3e 73 74 61 74 65 2e | .width.=.width;........w->state. |
| de40 | 68 65 69 67 68 74 20 3d 20 68 65 69 67 68 74 3b 00 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 31 | height.=.height;........return.1 |
| de60 | 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 76 6f 69 64 20 77 69 6e 64 6f 77 5f 77 61 79 6c 61 6e | ;....}.......+void.window_waylan |
| de80 | 64 5f 70 6f 6c 6c 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 29 20 7b 00 00 00 23 20 20 20 | d_poll(NativeWindow.*w).{...#... |
| dea0 | 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 77 2d 3e 62 61 63 6b 65 6e 64 3b | .WaylandBackend.*b.=.w->backend; |
| dec0 | 00 00 00 1a 20 20 20 20 77 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 78 20 3d 20 30 3b 00 00 | ........w->state.mouse_dx.=.0;.. |
| dee0 | 00 1a 20 20 20 20 77 2d 3e 73 74 61 74 65 2e 6d 6f 75 73 65 5f 64 79 20 3d 20 30 3b 00 00 00 35 | ......w->state.mouse_dy.=.0;...5 |
| df00 | 20 20 20 20 77 68 69 6c 65 20 28 77 6c 5f 64 69 73 70 6c 61 79 5f 70 72 65 70 61 72 65 5f 72 65 | ....while.(wl_display_prepare_re |
| df20 | 61 64 28 62 2d 3e 64 69 73 70 6c 61 79 29 20 3c 20 30 29 20 7b 00 00 00 30 20 20 20 20 20 20 20 | ad(b->display).<.0).{...0....... |
| df40 | 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 5f 70 65 6e 64 69 6e 67 28 62 2d 3e | .wl_display_dispatch_pending(b-> |
| df60 | 64 69 73 70 6c 61 79 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 27 20 20 20 20 77 6c 5f 64 69 73 | display);........}...'....wl_dis |
| df80 | 70 6c 61 79 5f 72 65 61 64 5f 65 76 65 6e 74 73 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 | play_read_events(b->display);... |
| dfa0 | 2c 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 69 73 70 61 74 63 68 5f 70 65 6e 64 69 6e 67 | ,....wl_display_dispatch_pending |
| dfc0 | 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 76 6f 69 64 20 77 | (b->display);....}.......+void.w |
| dfe0 | 69 6e 64 6f 77 5f 77 61 79 6c 61 6e 64 5f 73 77 61 70 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 | indow_wayland_swap(NativeWindow. |
| e000 | 2a 77 29 20 7b 00 00 00 23 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d | *w).{...#....WaylandBackend.*b.= |
| e020 | 20 77 2d 3e 62 61 63 6b 65 6e 64 3b 00 00 00 33 20 20 20 20 65 67 6c 53 77 61 70 42 75 66 66 65 | .w->backend;...3....eglSwapBuffe |
| e040 | 72 73 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 | rs(b->egl_display,.b->egl_surfac |
| e060 | 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2e 76 6f 69 64 20 77 69 6e 64 6f 77 5f 77 61 79 6c | e);....}........void.window_wayl |
| e080 | 61 6e 64 5f 64 65 73 74 72 6f 79 28 4e 61 74 69 76 65 57 69 6e 64 6f 77 20 2a 77 29 20 7b 00 00 | and_destroy(NativeWindow.*w).{.. |
| e0a0 | 00 23 20 20 20 20 57 61 79 6c 61 6e 64 42 61 63 6b 65 6e 64 20 2a 62 20 3d 20 77 2d 3e 62 61 63 | .#....WaylandBackend.*b.=.w->bac |
| e0c0 | 6b 65 6e 64 3b 00 00 00 19 20 20 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 29 | kend;........if.(b->egl_display) |
| e0e0 | 20 7b 00 00 00 57 20 20 20 20 20 20 20 20 65 67 6c 4d 61 6b 65 43 75 72 72 65 6e 74 28 62 2d 3e | .{...W........eglMakeCurrent(b-> |
| e100 | 65 67 6c 5f 64 69 73 70 6c 61 79 2c 20 45 47 4c 5f 4e 4f 5f 53 55 52 46 41 43 45 2c 20 45 47 4c | egl_display,.EGL_NO_SURFACE,.EGL |
| e120 | 5f 4e 4f 5f 53 55 52 46 41 43 45 2c 20 45 47 4c 5f 4e 4f 5f 43 4f 4e 54 45 58 54 29 3b 00 00 00 | _NO_SURFACE,.EGL_NO_CONTEXT);... |
| e140 | 3a 20 20 20 20 20 20 20 20 65 67 6c 44 65 73 74 72 6f 79 53 75 72 66 61 63 65 28 62 2d 3e 65 67 | :........eglDestroySurface(b->eg |
| e160 | 6c 5f 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 73 75 72 66 61 63 65 29 3b 00 00 00 3a 20 | l_display,.b->egl_surface);...:. |
| e180 | 20 20 20 20 20 20 20 65 67 6c 44 65 73 74 72 6f 79 43 6f 6e 74 65 78 74 28 62 2d 3e 65 67 6c 5f | .......eglDestroyContext(b->egl_ |
| e1a0 | 64 69 73 70 6c 61 79 2c 20 62 2d 3e 65 67 6c 5f 63 6f 6e 74 65 78 74 29 3b 00 00 00 25 20 20 20 | display,.b->egl_context);...%... |
| e1c0 | 20 20 20 20 20 65 67 6c 54 65 72 6d 69 6e 61 74 65 28 62 2d 3e 65 67 6c 5f 64 69 73 70 6c 61 79 | .....eglTerminate(b->egl_display |
| e1e0 | 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 3c 20 20 20 20 69 66 20 28 62 2d 3e 65 67 6c 5f 77 69 | );........}...<....if.(b->egl_wi |
| e200 | 6e 64 6f 77 29 20 77 6c 5f 65 67 6c 5f 77 69 6e 64 6f 77 5f 64 65 73 74 72 6f 79 28 62 2d 3e 65 | ndow).wl_egl_window_destroy(b->e |
| e220 | 67 6c 5f 77 69 6e 64 6f 77 29 3b 00 00 00 33 20 20 20 20 69 66 20 28 62 2d 3e 73 75 72 66 61 63 | gl_window);...3....if.(b->surfac |
| e240 | 65 29 20 77 6c 5f 73 75 72 66 61 63 65 5f 64 65 73 74 72 6f 79 28 62 2d 3e 73 75 72 66 61 63 65 | e).wl_surface_destroy(b->surface |
| e260 | 29 3b 00 00 00 36 20 20 20 20 69 66 20 28 62 2d 3e 64 69 73 70 6c 61 79 29 20 77 6c 5f 64 69 73 | );...6....if.(b->display).wl_dis |
| e280 | 70 6c 61 79 5f 64 69 73 63 6f 6e 6e 65 63 74 28 62 2d 3e 64 69 73 70 6c 61 79 29 3b 00 00 00 0c | play_disconnect(b->display);.... |
| e2a0 | 20 20 20 20 66 72 65 65 28 62 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 | ....free(b);....}5.............. |
| e2c0 | 00 2b 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5f 2d 00 00 00 00 00 | .+......................._-..... |
| e2e0 | 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........5._.................... |
| e300 | 08 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e3a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e3c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e3e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| e460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a 63 49 9a 04 01 00 00 00 04 00 f5 18 00 00 00 ce | ...............jcI.............. |
| e480 | 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 44 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 78 | ...............D........struct.x |
| e4a0 | 64 67 5f 77 6d 5f 62 61 73 65 20 2a 77 6d 5f 62 61 73 65 20 3d 20 77 6c 5f 72 65 67 69 73 74 72 | dg_wm_base.*wm_base.=.wl_registr |
| e4c0 | 79 5f 62 69 6e 64 28 72 65 67 69 73 74 72 79 2c 20 6e 61 6d f5 18 00 00 00 cf 00 00 00 00 00 00 | y_bind(registry,.nam............ |
| e4e0 | 00 00 00 00 00 00 f5 18 00 00 00 6f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 1c 20 20 20 20 | ...........o.................... |
| e500 | 2e 72 65 6c 61 74 69 76 65 5f 6d 6f 74 69 6f 6e 20 3d 20 72 65 6c 61 74 f5 18 00 00 00 70 00 00 | .relative_motion.=.relat.....p.. |
| e520 | 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 | ................................ |
| e540 | f5 18 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 | ..................5............. |
| e560 | 00 00 00 00 00 00 00 00 00 00 6f 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ..........o..................... |
| e580 | 00 00 f9 0f 00 00 00 00 00 00 f5 18 00 00 00 00 6f 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 | ................o............... |
| e5a0 | 5f 00 00 00 44 00 00 00 f9 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 0f 00 00 00 00 00 00 | _...D........................... |
| e5c0 | f5 18 00 00 00 00 ce 00 00 00 44 00 00 00 00 00 00 00 00 00 00 00 60 00 00 00 01 00 00 00 f8 1f | ..........D...........`......... |
| e5e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c5 0d 00 00 00 00 00 00 35 81 e7 aa | ......................5... |