summaryrefslogtreecommitdiff
path: root/config/nvim-1/undo/%home%coast%git%compositor%src%compositor.c
blob: 5b64f3ee26e98d89afa2374d02cafce27a77d3dc (plain)
ofshex dumpascii
0000 56 69 6d 9f 55 6e 44 6f e5 00 03 a4 81 99 9a a6 6f 12 f0 2c 59 b4 45 31 1e 9c 2f 66 40 fc 6b 05 Vim.UnDo........o..,Y.E1../f@.k.
0020 a4 e5 34 9a c7 72 2f 26 6d 3c df 00 00 02 07 00 00 00 34 20 20 2f 2f 20 53 65 74 20 6f 75 74 65 ..4..r/&m<........4..//.Set.oute
0040 72 20 62 6f 72 64 65 72 20 64 65 66 61 75 6c 74 73 20 28 63 61 6e 20 63 75 73 74 6f 6d 69 7a 65 r.border.defaults.(can.customize
0060 20 6c 61 74 65 72 29 00 00 00 4e 00 00 00 05 00 00 00 01 00 00 00 85 00 00 00 00 00 00 00 85 00 .later)...N.....................
0080 00 00 85 00 00 00 85 00 00 00 00 69 95 92 ae 04 01 00 00 00 3d 00 5f d0 00 00 00 00 00 00 00 02 ...........i........=._.........
00a0 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 1c 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 ................................
00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 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 1c 00 00 00 0d 00 00 ................................
0200 00 00 00 00 00 1f 00 00 00 0d 00 00 00 00 00 00 00 56 00 00 00 0d 00 00 00 00 69 95 6a b0 04 01 .................V........i.j...
0220 00 00 00 00 00 f5 18 00 00 00 1b 00 00 00 1c 00 00 00 00 00 00 00 04 00 00 00 3d 63 6f 6e 73 74 ..........................=const
0240 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 2e .struct.swc_manager.manager.=.{.
0260 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 3d 20 20 20 20 new_screen.=.new_screen,...=....
0280 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 ................................
02a0 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 3d 20 20 20 .new_window.=.new_window,...=...
02c0 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 ................................
02e0 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 37 20 20 ..new_device.=.new_device,...7..
0300 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 ................................
0320 20 20 2e 73 65 61 74 5f 76 65 72 73 69 6f 6e 20 3d 20 33 7d 3b 35 81 f5 18 00 00 00 00 1b 00 00 ...seat_version.=.3};5..........
0340 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c9 02 00 00 00 00 00 00 f2 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 01 00 00 00 03 00 00 00 00 00 00 00 .............5._................
0380 00 00 00 00 02 00 00 00 1c 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
04a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
04c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1c 00 00 00 0d 00 00 00 00 00 00 00 1c 00 ................................
04e0 00 00 0d 00 00 00 00 00 00 00 56 00 00 00 0d 00 00 00 00 69 95 6a b1 04 01 00 00 00 00 00 f5 18 ..........V........i.j..........
0500 00 00 00 1b 00 00 00 20 00 00 02 11 00 00 00 00 f5 18 00 00 00 1c 00 00 00 1d 00 00 02 11 00 00 ................................
0520 00 00 35 81 f5 18 00 00 00 00 1b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 ..5.............................
0540 00 00 c9 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f2 00 00 00 00 00 00 00 35 81 5f d0 00 00 ..........................5._...
0560 00 02 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 1c 00 00 00 00 00 00 00 00 ff ff ................................
0580 ff 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 ................................
05a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1c ................................
06c0 00 00 00 00 00 00 00 00 00 00 00 1f 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 .......................V........
06e0 69 95 6a b3 04 01 00 00 00 00 00 f5 18 00 00 00 1b 00 00 00 1c 00 00 00 00 00 00 00 04 00 00 00 i.j.............................
0700 3d 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 =const.struct.swc_manager.manage
0720 72 20 3d 20 7b 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 r.=.{.new_screen.=.new_screen,..
0740 00 3d 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 .=..............................
0760 20 20 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 .......new_window.=.new_window,.
0780 00 00 3d 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 ..=.............................
07a0 20 20 20 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c ........new_device.=.new_device,
07c0 00 00 00 37 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 ...7............................
07e0 20 20 20 20 20 20 20 20 2e 73 65 61 74 5f 76 65 72 73 69 6f 6e 20 3d 20 33 7d 3b 35 81 f5 18 00 .........seat_version.=.3};5....
0800 00 00 00 1b 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c9 02 00 00 00 ................................
0820 00 00 00 f2 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 03 00 00 00 05 00 ...................5._..........
0840 00 00 00 00 00 00 00 00 00 00 04 00 00 00 1c 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 ................................
0860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1c 00 00 00 00 00 00 00 ................................
09a0 00 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 6a b3 04 01 00 ................V........i.j....
09c0 00 00 00 00 f5 18 00 00 00 1b 00 00 00 1d 00 00 02 12 00 00 00 01 00 00 00 00 f5 18 00 00 00 1b ................................
09e0 00 00 00 1d 00 00 02 11 00 00 00 00 35 81 f5 18 00 00 00 00 1b 00 00 00 00 00 00 00 00 00 00 00 ............5...................
0a00 00 00 00 00 01 00 00 00 00 00 00 00 c9 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................................
0a20 00 00 00 00 f5 18 00 00 00 00 1b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 ................................
0a40 00 00 c9 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 00 00 00 00 f5 18 00 00 00 00 ................................
0a60 1b 00 00 00 0a 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 19 00 00 00 d3 02 00 00 00 00 00 00 ................................
0a80 01 00 00 00 00 00 00 00 19 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 04 00 00 00 06 00 00 00 00 ................5._.............
0aa0 00 00 00 00 00 00 00 05 00 00 00 1c 00 00 00 23 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 ...............#................
0ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 ................................
0c00 00 1d 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 6a bb 04 01 00 00 00 00 .............V........i.j.......
0c20 00 f5 18 00 00 00 1b 00 00 00 1d 00 00 02 12 00 00 00 01 00 00 00 23 63 6f 6e 73 74 20 73 74 72 ......................#const.str
0c40 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 35 81 f5 18 00 00 uct.swc_manager.manager.=.5.....
0c60 00 00 1b 00 00 00 23 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 ec 02 00 00 00 00 ......#.........................
0c80 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 05 00 00 00 07 00 00 ..................5._...........
0ca0 00 00 00 00 00 00 00 00 00 06 00 00 00 1c 00 00 00 24 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 .................$..............
0cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1d 00 00 00 00 00 00 00 00 ................................
0e00 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 6a bb 04 01 00 00 ...............V........i.j.....
0e20 00 00 00 f5 18 00 00 00 1b 00 00 00 1e 00 00 02 13 00 00 00 01 00 00 00 24 63 6f 6e 73 74 20 73 ........................$const.s
0e40 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b f5 18 00 truct.swc_manager.manager.=.{...
0e60 00 00 1c 00 00 00 1e 00 00 00 00 00 00 00 01 00 00 00 01 7d f5 18 00 00 00 1b 00 00 00 1e 00 00 ...................}............
0e80 02 12 00 00 00 01 00 00 00 25 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 .........%const.struct.swc_manag
0ea0 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 7d 35 81 f5 18 00 00 00 00 1b 00 00 00 24 00 00 00 00 er.manager.=.{}5...........$....
0ec0 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ed 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 ................................
0ee0 00 00 00 00 00 00 00 f5 18 00 00 00 00 1b 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 01 00 00 .................$..............
0f00 00 00 00 00 00 ed 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 ................................
0f20 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1a 00 00 00 ee 02 00 00 00 ................................
0f40 00 00 00 00 00 00 00 00 00 00 00 1a 00 00 00 00 00 00 00 f5 18 00 00 00 00 1c 00 00 00 1a 00 00 ................................
0f60 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 08 03 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0f80 00 02 00 00 00 00 00 00 00 f5 18 00 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 ................................
0fa0 00 00 00 00 00 00 00 09 03 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f5 ................................
0fc0 18 00 00 00 00 1c 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 03 00 ................................
0fe0 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 1c 00 00 00 1a ................................
1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0e 00 00 00 08 03 00 00 00 00 00 00 00 00 00 00 00 ................................
1020 00 00 00 0e 00 00 00 00 00 00 00 f5 18 00 00 00 00 1c 00 00 00 27 00 00 00 00 00 00 00 01 00 00 .....................'..........
1040 00 00 00 00 00 0d 00 00 00 15 03 00 00 00 00 00 00 01 00 00 00 00 00 00 00 0d 00 00 00 00 00 00 ................................
1060 00 f5 18 00 00 00 00 1c 00 00 00 33 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 03 00 00 00 21 ...........3...................!
1080 03 00 00 00 00 00 00 01 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 f5 18 00 00 00 00 1c 00 00 ................................
10a0 00 35 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 1a 00 00 00 23 03 00 00 00 00 00 00 01 00 00 .5...................#..........
10c0 00 00 00 00 00 1a 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 06 00 00 00 08 00 00 00 00 00 00 00 .............5._................
10e0 00 00 00 00 07 00 00 00 1d 00 00 00 4e 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 ............N...................
1100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 00 00 00 00 00 00 00 00 00 00 1f 00 ................................
1240 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 6a d1 04 01 00 00 00 02 00 f5 18 ..........V........i.j..........
1260 00 00 00 00 00 00 00 21 00 00 02 14 00 00 00 1d 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 77 73 .......!............#include."ws
1280 78 77 6d 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 xwm.h"....#include."config.h"...
12a0 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 .#include."types.h"....#include.
12c0 22 75 74 69 6c 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 "util.h"....#include.<signal.h>.
12e0 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 75 64 ...#include.<stdio.h>....#includ
1300 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e e.<stdlib.h>....#include.<swc.h>
1320 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 1b 23 69 6e 63 6c ....#include.<unistd.h>....#incl
1340 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 ude.<wayland-server.h>....#inclu
1360 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 de.<wayland-util.h>...(#include.
1380 3c 78 6b 62 63 6f 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 <xkbcommon/xkbcommon-keysyms.h>.
13a0 00 00 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 ......0static.void.focus(struct.
13c0 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 61 74 69 client.*c,.bool.raise);...*stati
13e0 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 c.void.on_screen_destroy(void.*d
1400 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 ata);...:static.void.on_screen_u
1420 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 sable_geometry_changed(void.*dat
1440 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f a);...'static.void.on_win_destro
1460 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e y(void.*data);...'static.void.on
1480 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 73 74 61 _win_entered(void.*data);....sta
14a0 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 69 63 20 tic.void.setup(void);....static.
14c0 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 61 74 69 void.setup_binds(void);...Fstati
14e0 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e c.void.set_floating(struct.clien
1500 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 t.*c,.bool.floating,.bool.raise)
1520 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 ;...#static.void.tile(struct.scr
1540 65 65 6e 20 2a 73 29 3b 00 00 00 00 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 een.*s);.......!static.uint32_t.
1560 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 00 00 00 00 0d 73 74 72 75 63 74 20 master_width.=.0;........struct.
1580 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d wm.wm;.......$const.struct.swc_m
15a0 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 4f 09 2e 6e 65 77 5f 73 63 72 65 anager.manager.=.{...O..new_scre
15c0 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e en.=.new_screen,..new_window.=.n
15e0 65 77 5f 77 69 6e 64 6f 77 2c 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 20 3d 20 6e 65 77 5f 64 65 ew_window,..new_device..=.new_de
1600 76 69 63 65 2c 35 81 f5 18 00 00 00 00 00 00 00 00 0a 00 00 00 1c 00 00 00 41 00 00 00 1f 00 00 vice,5...................A......
1620 00 13 00 00 00 0a 00 00 00 00 00 00 00 25 03 00 00 00 00 00 00 3f 03 00 00 00 00 00 00 35 81 5f .............%.......?.......5._
1640 d0 00 00 00 07 00 00 00 09 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 83 00 00 00 02 00 00 00 ................................
1660 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 00 00 00 00 00 00 00 ................................
1680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17a0 00 00 22 00 00 00 00 00 00 00 00 00 00 00 22 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 .."..........."...........V.....
17c0 00 00 00 69 95 6a e0 04 01 00 00 00 04 00 f5 18 00 00 00 82 00 00 00 83 00 00 00 00 00 00 00 01 ...i.j..........................
17e0 00 00 00 1f 20 20 73 77 63 5f 65 6e 61 62 6c 65 5f 78 64 67 5f 73 68 65 6c 6c 28 77 6d 2e 64 70 ......swc_enable_xdg_shell(wm.dp
1800 79 29 3b 35 81 f5 18 00 00 00 00 82 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 y);5............................
1820 00 00 00 29 0d 00 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 ...).......................5._..
1840 00 00 08 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00 09 00 00 00 23 00 00 00 00 00 00 00 00 ff ......................#.........
1860 ff ff 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 ................................
1880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
18e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
19a0 23 00 00 00 07 00 00 00 00 00 00 00 2c 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 07 00 00 00 #...........,...........V.......
19c0 00 69 95 6b 07 04 01 00 00 00 00 00 f5 18 00 00 00 22 00 00 00 23 00 00 00 00 00 00 00 0a 00 00 .i.k............."...#..........
19e0 00 2c 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 .,struct.swc_window_handler.wind
1a00 6f 77 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d ow_handler.=.{.........destroy.=
1a20 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 .on_win_destroy,.........entered
1a40 20 3d 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c .=.on_win_entered,....};.......,
1a60 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e struct.swc_screen_handler.screen
1a80 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f _handler.=.{...!.....destroy.=.o
1aa0 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 n_screen_destroy,...A.....usable
1ac0 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 _geometry_changed.=.on_screen_us
1ae0 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 able_geometry_changed,....};....
1b00 35 81 f5 18 00 00 00 00 22 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5.......".......................
1b20 5b 03 00 00 00 00 00 00 04 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 09 [.......................5._.....
1b40 00 00 00 0b 00 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 0c 00 00 00 07 00 00 00 00 ff ff ff ff ................................
1b60 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 00 ................................
1b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 23 00 00 .............................#..
1ca0 00 07 00 00 00 00 00 00 00 23 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 07 00 00 00 00 69 95 .........#...........V........i.
1cc0 6b 0a 04 01 00 00 00 00 00 f5 18 00 00 00 0c 00 00 00 17 00 00 02 0c 00 00 00 00 f5 18 00 00 00 k...............................
1ce0 0c 00 00 00 0d 00 00 02 0c 00 00 00 00 35 81 f5 18 00 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 .............5..................
1d00 00 00 00 00 00 0a 00 00 00 00 00 00 00 0b 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 01 00 ................................
1d20 00 00 00 00 00 35 81 5f d0 00 00 00 0a 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 .....5._........................
1d40 0d 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 ................................
1d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1e80 00 00 00 00 00 00 00 00 00 00 2d 00 00 00 07 00 00 00 00 00 00 00 2d 00 00 00 00 00 00 00 00 00 ..........-...........-.........
1ea0 00 00 56 00 00 00 07 00 00 00 00 69 95 6b 0b 04 01 00 00 00 00 00 f5 18 00 00 00 0c 00 00 00 0e ..V........i.k..................
1ec0 00 00 02 16 00 00 00 00 35 81 f5 18 00 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........5.......................
1ee0 01 00 00 00 00 00 00 00 0b 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................................
1f00 35 81 5f d0 00 00 00 0b 00 00 00 0d 00 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 0d 00 00 00 00 5._.............................
1f20 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 00 00 00 00 ................................
1f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2060 00 00 00 00 00 2e 00 00 00 07 00 00 00 00 00 00 00 2e 00 00 00 00 00 00 00 00 00 00 00 56 00 00 .............................V..
2080 00 07 00 00 00 00 69 95 6b 0d 04 01 00 00 00 06 00 f5 18 00 00 00 17 00 00 00 2f 00 00 02 17 00 ......i.k................./.....
20a0 00 00 17 00 00 00 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 ..........0static.void.focus(str
20c0 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 uct.client.*c,.bool.raise);...*s
20e0 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 tatic.void.on_screen_destroy(voi
2100 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 d.*data);...:static.void.on_scre
2120 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 en_usable_geometry_changed(void.
2140 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 *data);...'static.void.on_win_de
2160 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 stroy(void.*data);...'static.voi
2180 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 d.on_win_entered(void.*data);...
21a0 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 .static.void.setup(void);....sta
21c0 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 tic.void.setup_binds(void);...Fs
21e0 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 tatic.void.set_floating(struct.c
2200 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 lient.*c,.bool.floating,.bool.ra
2220 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 ise);...#static.void.tile(struct
2240 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 00 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 .screen.*s);.......!static.uint3
2260 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 00 00 00 00 0d 73 74 72 2_t.master_width.=.0;........str
2280 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 22 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 uct.wm.wm;......."const.struct.s
22a0 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 00 00 00 05 20 20 20 20 7b 00 00 00 wc_manager.manager.=........{...
22c0 21 20 20 20 20 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 !.........new_screen.=.new_scree
22e0 6e 2c 00 00 00 21 20 20 20 20 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f n,...!.........new_window.=.new_
2300 77 69 6e 64 6f 77 2c 00 00 00 21 20 20 20 20 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d window,...!.........new_device.=
2320 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 01 7d 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 .new_device,....}.......1static.
2340 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f void.focus(struct.client.*c,.boo
2360 6c 20 72 61 69 73 65 29 20 7b 35 81 f5 18 00 00 00 00 17 00 00 00 00 00 00 00 16 00 00 00 21 00 l.raise).{5...................!.
2380 00 00 16 00 00 00 16 00 00 00 10 02 00 00 00 00 00 00 71 02 00 00 00 00 00 00 71 02 00 00 00 00 ..................q.......q.....
23a0 00 00 35 81 5f d0 00 00 00 0c 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00 0d 00 00 00 01 00 00 ..5._...........................
23c0 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 00 00 ................................
23e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2520 00 00 00 00 00 00 00 00 69 95 6b 6a 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 02 00 00 00 ........i.kj....................
2540 00 00 00 02 17 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 12 .........#include."config.h"....
2560 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 22 #include."types.h"....#include."
2580 75 74 69 6c 2e 68 22 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 77 73 78 77 6d 2e 68 22 00 00 00 util.h"....#include."wsxwm.h"...
25a0 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 .#include.<signal.h>....#include
25c0 20 3c 73 74 64 69 6f 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 .<stdio.h>....#include.<stdlib.h
25e0 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 >....#include.<swc.h>....#includ
2600 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e e.<unistd.h>....#include.<waylan
2620 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 d-server.h>....#include.<wayland
2640 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f -util.h>...(#include.<xkbcommon/
2660 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 00 00 00 00 2c 73 74 72 75 xkbcommon-keysyms.h>.......,stru
2680 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e ct.swc_window_handler.window_han
26a0 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 dler.=.{.........destroy.=.on_wi
26c0 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f n_destroy,.........entered.=.on_
26e0 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 win_entered,....};.......,struct
2700 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c .swc_screen_handler.screen_handl
2720 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 er.=.{...!.....destroy.=.on_scre
2740 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 en_destroy,...A.....usable_geome
2760 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 try_changed.=.on_screen_usable_g
2780 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 30 73 74 eometry_changed,....};.......0st
27a0 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 atic.void.focus(struct.client.*c
27c0 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e ,.bool.raise);...*static.void.on
27e0 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 3a _screen_destroy(void.*data);...:
2800 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f static.void.on_screen_usable_geo
2820 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 metry_changed(void.*data);...'st
2840 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 atic.void.on_win_destroy(void.*d
2860 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 ata);...'static.void.on_win_ente
2880 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 63 20 76 6f 69 64 20 red(void.*data);....static.void.
28a0 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 setup(void);....static.void.setu
28c0 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 p_binds(void);...Fstatic.void.se
28e0 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f t_floating(struct.client.*c,.boo
2900 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 23 73 74 61 74 l.floating,.bool.raise);...#stat
2920 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 ic.void.tile(struct.screen.*s);.
2940 00 00 00 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 ......!static.uint32_t.master_wi
2960 64 74 68 20 3d 20 30 3b 00 00 00 00 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 dth.=.0;........struct.wm.wm;...
2980 00 00 00 00 22 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 ...."const.struct.swc_manager.ma
29a0 6e 61 67 65 72 20 3d 00 00 00 05 20 20 20 20 7b 00 00 00 21 20 20 20 20 20 20 20 20 2e 6e 65 77 nager.=........{...!.........new
29c0 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 21 20 20 20 20 20 20 20 _screen.=.new_screen,...!.......
29e0 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 21 20 20 ..new_window.=.new_window,...!..
2a00 20 20 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 .......new_device.=.new_device,.
2a20 00 00 01 7d 00 00 00 00 00 00 00 0b 73 74 61 74 69 63 20 76 6f 69 64 00 00 00 26 66 6f 63 75 73 ...}........static.void...&focus
2a40 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 20 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 (struct.client.*.c,.bool.raise).
2a60 7b 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 44 20 20 20 {......if.(wm.sel_client)...D...
2a80 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c .swc_window_set_border(wm.sel_cl
2aa0 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c ient->win,.cfg.border_col_normal
2ac0 2c 00 00 00 2c 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 63 ,...,..........................c
2ae0 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 fg.border_width);......if.(c)...
2b00 4b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 K....swc_window_set_border(c->wi
2b20 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f n,.cfg.border_col_active,.cfg.bo
2b40 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 rder_width);......if.(raise.&&.c
2b60 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 .&&.c->floating)........set_floa
2b80 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 ting(c,.true,.true);...&..swc_wi
2ba0 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 ndow_focus(c.?.c->win.:.NULL);..
2bc0 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 ....wm.sel_client.=.c;....}.....
2be0 00 00 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 ..+static.void.on_screen_destroy
2c00 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 (void.*data).{......struct.scree
2c20 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 n.*s.=.data;......if.(!s).......
2c40 20 72 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d .return;......wl_list_remove(&s-
2c60 3e 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d >link);......if.(wm.sel_screen.=
2c80 3d 20 73 29 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 =.s).{...#....if.(wl_list_empty(
2ca0 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 &wm.screens))..........wm.sel_sc
2cc0 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 reen.=.NULL;........else...L....
2ce0 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f ..wm.sel_screen.=.wl_container_o
2d00 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e f(wm.screens.next,.wm.sel_screen
2d20 2c 20 6c 69 6e 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 ,.link);......}......free(s);...
2d40 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f .}.......;static.void.on_screen_
2d60 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 usable_geometry_changed(void.*da
2d80 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 ta).{......struct.screen.*s.=.da
2da0 74 61 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 ta;......tile(s);....}.......(st
2dc0 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 atic.void.on_win_destroy(void.*d
2de0 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 ata).{......struct.client.*c.=.d
2e00 61 74 61 3b 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 ata;......struct.client.*next;..
2e20 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 29 20 20 ....if.(!c)........return;...)..
2e40 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 if.(wm.grab.active.&&.wm.grab.c.
2e60 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 ==.c).{........wm.grab.active.=.
2e80 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 false;........wm.grab.c.=.NULL;.
2ea0 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 .....}......if.(c->floating)...#
2ec0 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e ....wl_list_remove(&c->float_lin
2ee0 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d k);......else...#....wl_list_rem
2f00 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d ove(&c->tiled_link);......if.(wm
2f20 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 .sel_client.==.c).{........wm.se
2f40 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 20 3d 20 66 l_client.=.NULL;........next.=.f
2f60 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 irst_float(c->scr);........if.(!
2f80 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 next)...!......next.=.first_tile
2fa0 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 d(c->scr);........focus(next,.tr
2fc0 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 ue);......}......tile(c->scr);..
2fe0 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 ....free(c);....}.......(static.
3000 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 void.on_win_entered(void.*data).
3020 7b 00 00 00 15 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 {......if.(wm.grab.active)......
3040 20 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 ..return;......struct.client.*c.
3060 3d 20 64 61 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 01 =.data;......focus(c,.true);....
3080 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 }........static.void.setup(void)
30a0 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 .{......wm.dpy.=.wl_display_crea
30c0 74 65 28 29 3b 00 00 00 0e 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 20 20 20 64 te();......if.(!wm.dpy)...2....d
30e0 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 ie(EXIT_FAILURE,."wl_display_cre
3100 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 ate.failed");......wl_list_init(
3120 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 &wm.screens);......wl_list_init(
3140 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 &wm.tiled);......wl_list_init(&w
3160 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 m.floating);......wm.sel_client.
3180 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c =.NULL;......wm.sel_screen.=.NUL
31a0 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 L;......wm.grab.active.=.false;.
31c0 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 .....wm.grab.resize.=.false;....
31e0 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c ..wm.grab.c.=.NULL;...1..wm.ev_l
3200 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 oop.=.wl_display_get_event_loop(
3220 77 6d 2e 64 70 79 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a wm.dpy);...4..if.(!swc_initializ
3240 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 e(wm.dpy,.wm.ev_loop,.&manager))
3260 00 00 00 31 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 5f 69 ...1....die(EXIT_FAILURE,."swc_i
3280 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 10 20 20 73 65 74 75 70 nitialize.failed\n");......setup
32a0 5f 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 _binds();...8..const.char.*sock.
32c0 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e =.wl_display_add_socket_auto(wm.
32e0 64 70 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f 63 6b 29 00 00 00 3d 20 20 20 20 64 69 65 dpy);......if.(!sock)...=....die
3300 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 (EXIT_FAILURE,."wl_display_add_s
3320 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 25 20 20 73 65 74 65 ocket_auto.failed\n");...%..sete
3340 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 nv("WAYLAND_DISPLAY",.sock,.1);.
3360 00 00 2d 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c ..-.._log(stderr,."WAYLAND_DISPL
3380 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 AY=%s\n",.sock);......signal(SIG
33a0 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 INT,.sig_handler);......signal(S
33c0 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 IGTERM,.sig_handler);......signa
33e0 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 l(SIGQUIT,.sig_handler);....}...
3400 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 .....static.void.setup_binds(voi
3420 64 29 20 7b 00 00 00 2e 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c d).{......for.(size_t.i.=.0;.i.<
3440 20 4c 45 4e 47 54 48 28 62 69 6e 64 73 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f .LENGTH(binds);.i++).{...%....co
3460 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 nst.struct.bind.*b.=.&binds[i];.
3480 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 ..G....swc_add_binding(b->type,.
34a0 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a b->mods,.b->ksym,.b->fn,.(void.*
34c0 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 )&b->arg);......}....}.......Gst
34e0 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c atic.void.set_floating(struct.cl
3500 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 ient.*c,.bool.floating,.bool.rai
3520 73 65 29 20 7b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e se).{......if.(!c)........return
3540 3b 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 ;......if.(floating).{........if
3560 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c .(!c->floating).{..........c->fl
3580 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f oating.=.true;...%......wl_list_
35a0 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 remove(&c->tiled_link);...3.....
35c0 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 .wl_list_insert(&wm.floating,.&c
35e0 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 ->float_link);........}.else.if.
3600 28 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 (raise).{...%......wl_list_remov
3620 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c e(&c->float_link);...3......wl_l
3640 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f ist_insert(&wm.floating,.&c->flo
3660 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 at_link);........}...#....swc_wi
3680 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d ndow_set_stacked(c->win);......}
36a0 20 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 .else.{........if.(c->floating).
36c0 7b 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 {..........c->floating.=.false;.
36e0 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 ..%......wl_list_remove(&c->floa
3700 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 t_link);...0......wl_list_insert
3720 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 (&wm.tiled,.&c->tiled_link);....
3740 20 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 ....}...!....swc_window_set_tile
3760 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 d(c->win);......}....}.......$st
3780 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 atic.void.tile(struct.screen.*s)
37a0 20 7b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 .{......struct.client.*c;......s
37c0 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 73 truct.swc_rectangle.geom;...!..s
37e0 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 00 truct.swc_rectangle.*scr_geom;..
3800 00 31 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 .1..int32_t.out_gaps.=.cfg.gaps.
3820 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f 74 +.cfg.border_width;...6..int32_t
3840 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 .in_gaps.=.cfg.gaps.+.(cfg.borde
3860 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 3b r_width.*.2);......int32_t.x,.y;
3880 00 00 00 10 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 68 3b 00 00 00 09 20 20 69 66 20 28 21 73 ......uint32_t.w,.h;......if.(!s
38a0 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 3d )........return;...&..scr_geom.=
38c0 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 20 .&s->scr->usable_geometry;......
38e0 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 size_t.n.=.0;...E..wl_list_for_e
3900 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 ach(c,.&wm.tiled,.tiled_link).if
3920 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 0d 20 20 69 66 20 28 .(is_tiled(c,.s)).n++;......if.(
3940 6e 20 3d 3d 20 30 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d 20 n.==.0)........return;......x.=.
3960 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 3d scr_geom->x.+.out_gaps;......y.=
3980 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 20 .scr_geom->y.+.out_gaps;...'..w.
39a0 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 =.scr_geom->width.-.(out_gaps.*.
39c0 32 29 3b 00 00 00 28 20 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 2);...(..h.=.scr_geom->height.-.
39e0 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 (out_gaps.*.2);......if.(n.==.1)
3a00 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 .{...0....wl_list_for_each(c,.&w
3a20 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 1a 20 20 20 20 20 20 m.tiled,.tiled_link).{..........
3a40 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 11 20 20 20 20 20 20 20 20 if.(!is_tiled(c,.s))............
3a60 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 continue;..........geom.x.=.x;..
3a80 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 15 20 20 20 20 20 20 67 65 6f ........geom.y.=.y;..........geo
3aa0 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 m.width.=.w;..........geom.heigh
3ac0 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 t.=.h;...-......swc_window_set_g
3ae0 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 eometry(c->win,.&geom);.........
3b00 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 .return;........}......}......si
3b20 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 ze_t.i.=.0;......wl_list_for_eac
3b40 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 h(c,.&wm.tiled,.tiled_link).{...
3b60 18 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 0f 20 20 20 .....if.(!is_tiled(c,.s)).......
3b80 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 ...continue;........if.(master_w
3ba0 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 idth.==.0)...>......master_width
3bc0 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 .=.((w.-.in_gaps).*.cfg.master_w
3be0 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 29 20 idth)./.100;........if.(i.==.0).
3c00 7b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 {..........geom.x.=.x;..........
3c20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 geom.y.=.y;..........geom.width.
3c40 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 =.master_width;..........geom.he
3c60 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 ight.=.h;........}.else.{.......
3c80 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 ...uint32_t.stackn.=.n.-.1;.....
3ca0 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 .....uint32_t.idx.=.i.-.1;...D..
3cc0 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d ....uint32_t.stack_height.=.(h.-
3ce0 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b .in_gaps.*.(stackn.-.1))./.stack
3d00 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f n;...*......geom.x.=.x.+.master_
3d20 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 34 20 20 20 20 20 20 67 65 6f 6d 2e 79 width.+.in_gaps;...4......geom.y
3d40 20 3d 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e .=.y.+.(idx.*.(stack_height.+.in
3d60 5f 67 61 70 73 29 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 _gaps));..........geom.width.=.w
3d80 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 .-.master_width.-.in_gaps;...!..
3da0 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 ....geom.height.=.stack_height;.
3dc0 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 .......}...+....swc_window_set_g
3de0 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 eometry(c->win,.&geom);........i
3e00 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 ++;......}....}.......Lvoid.focu
3e20 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 s_next(void.*data,.uint32_t.time
3e40 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 ,.uint32_t.value,.uint32_t.state
3e60 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 ).{......(void)data;......(void)
3e80 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 13 20 20 73 74 72 time;......(void)value;......str
3ea0 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 73 63 72 65 65 uct.client.*c;......struct.scree
3ec0 6e 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f n.*s;...-..if.(state.!=.WL_KEYBO
3ee0 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 ARD_KEY_STATE_PRESSED)........re
3f00 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 turn;......if.(!wm.sel_screen)..
3f20 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 ......return;......s.=.wm.sel_sc
3f40 72 65 65 6e 3b 00 00 00 17 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b reen;......if.(!wm.sel_client).{
3f60 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 00 00 00 0b 20 ........c.=.first_float(s);.....
3f80 20 20 20 69 66 20 28 21 63 29 00 00 00 19 20 20 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 ...if.(!c)..........c.=.first_ti
3fa0 6c 65 64 28 73 29 3b 00 00 00 14 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 led(s);........focus(c,.false);.
3fc0 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d 00 00 00 20 20 20 69 66 20 28 77 .......return;......}......if.(w
3fe0 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 4c 20 20 20 m.sel_client->floating).{...L...
4000 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c .for.(c.=.wl_container_of(wm.sel
4020 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 66 6c 6f _client->float_link.next,.c,.flo
4040 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 20 20 20 20 20 26 63 2d 3e 66 6c 6f 61 74 5f at_link);...(.........&c->float_
4060 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 00 00 00 40 20 20 20 20 20 20 20 link.!=.&wm.floating;...@.......
4080 20 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c ..c.=.wl_container_of(c->float_l
40a0 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 1b 20 20 20 ink.next,.c,.float_link)).......
40c0 20 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 73 29 29 20 7b 00 00 00 18 20 20 20 20 ...if.(is_float(c,.s)).{........
40e0 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0f 20 20 20 20 20 20 20 20 ....focus(c,.false);............
4100 72 65 74 75 72 6e 3b 00 00 00 07 20 20 20 20 20 20 7d 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 return;..........}........c.=.fi
4120 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 20 28 21 63 29 00 00 00 19 rst_tiled(s);........if.(!c)....
4140 20 20 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 00 00 00 0a 20 20 20 ......c.=.first_float(s);.......
4160 20 69 66 20 28 63 29 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 .if.(c)..........focus(c,.false)
4180 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d 00 00 00 4a 20 20 66 6f 72 ;........return;......}...J..for
41a0 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 .(c.=.wl_container_of(wm.sel_cli
41c0 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 74 69 6c 65 64 5f 6c ent->tiled_link.next,.c,.tiled_l
41e0 69 6e 6b 29 3b 00 00 00 23 20 20 20 20 20 20 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 20 21 ink);...#.......&c->tiled_link.!
4200 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 00 00 00 3e 20 20 20 20 20 20 20 63 20 3d 20 77 6c 5f 63 6f =.&wm.tiled;...>.......c.=.wl_co
4220 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 ntainer_of(c->tiled_link.next,.c
4240 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 19 20 20 20 20 69 66 20 28 69 73 5f 74 69 6c ,.tiled_link))........if.(is_til
4260 65 64 28 63 2c 20 73 29 29 20 7b 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 ed(c,.s)).{..........focus(c,.fa
4280 6c 73 65 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 lse);..........return;........}.
42a0 00 00 15 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 00 00 00 09 20 20 69 66 .....c.=.first_float(s);......if
42c0 20 28 21 63 29 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b .(!c)........c.=.first_tiled(s);
42e0 00 00 00 12 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 01 7d 00 00 00 00 00 ......focus(c,.false);....}.....
4300 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 ..Lvoid.focus_prev(void.*data,.u
4320 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 int32_t.time,.uint32_t.value,.ui
4340 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b nt32_t.state).{......(void)data;
4360 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c ......(void)time;......(void)val
4380 75 65 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 13 20 20 ue;......struct.client.*c;......
43a0 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 struct.screen.*s;...-..if.(state
43c0 20 21 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
43e0 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 D)........return;......if.(!wm.s
4400 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 el_screen)........return;......s
4420 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 17 20 20 69 66 20 28 21 77 6d 2e 73 .=.wm.sel_screen;......if.(!wm.s
4440 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c el_client).{........c.=.first_fl
4460 6f 61 74 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 20 28 21 63 29 00 00 00 19 20 20 20 20 20 20 oat(s);........if.(!c)..........
4480 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 14 20 20 20 20 66 6f 63 75 73 c.=.first_tiled(s);........focus
44a0 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 (c,.false);........return;......
44c0 7d 00 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 }......if.(wm.sel_client->floati
44e0 6e 67 29 20 7b 00 00 00 4c 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e ng).{...L....for.(c.=.wl_contain
4500 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e er_of(wm.sel_client->float_link.
4520 70 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 20 20 20 prev,.c,.float_link);...(.......
4540 20 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 ..&c->float_link.!=.&wm.floating
4560 3b 00 00 00 40 20 20 20 20 20 20 20 20 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f ;...@.........c.=.wl_container_o
4580 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c f(c->float_link.prev,.c,.float_l
45a0 69 6e 6b 29 29 00 00 00 1b 20 20 20 20 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 73 ink))..........if.(is_float(c,.s
45c0 29 29 20 7b 00 00 00 18 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b )).{............focus(c,.false);
45e0 00 00 00 0f 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 07 20 20 20 20 20 20 7d 00 00 ............return;..........}..
4600 00 16 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 0b 20 20 20 20 ......c.=.last_tiled(s);........
4620 69 66 20 28 21 63 29 00 00 00 18 20 20 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 if.(!c)..........c.=.last_float(
4640 73 29 3b 00 00 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 s);........if.(c)..........focus
4660 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 (c,.false);........return;......
4680 7d 00 00 00 4a 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 }...J..for.(c.=.wl_container_of(
46a0 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 wm.sel_client->tiled_link.prev,.
46c0 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 23 20 20 20 20 20 20 20 26 63 2d 3e 74 69 c,.tiled_link);...#.......&c->ti
46e0 6c 65 64 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 00 00 00 3e 20 20 20 20 20 20 led_link.!=.&wm.tiled;...>......
4700 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 .c.=.wl_container_of(c->tiled_li
4720 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 19 20 20 20 20 nk.prev,.c,.tiled_link))........
4740 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 7b 00 00 00 16 20 20 20 20 20 20 66 if.(is_tiled(c,.s)).{..........f
4760 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b ocus(c,.false);..........return;
4780 00 00 00 05 20 20 20 20 7d 00 00 00 14 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 73 29 ........}......c.=.last_float(s)
47a0 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 16 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 ;......if.(!c)........c.=.last_t
47c0 69 6c 65 64 28 73 29 3b 00 00 00 12 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 iled(s);......focus(c,.false);..
47e0 00 01 7d 00 00 00 00 00 00 00 4a 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 ..}.......Jvoid.kill_sel(void.*d
4800 61 74 61 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 76 61 6c ata,.uint32_t.time,.uint32_t.val
4820 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 ue,.uint32_t.state).{......(void
4840 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f )data;......(void)time;......(vo
4860 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b id)value;...-..if.(state.!=.WL_K
4880 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 00 00 00 0b 20 20 EYBOARD_KEY_STATE_PRESSED)......
48a0 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e ..return;......if.(!wm.sel_clien
48c0 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 27 20 20 73 77 63 5f 77 69 6e 64 6f t)........return;...'..swc_windo
48e0 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 29 3b 00 00 00 01 w_close(wm.sel_client->win);....
4900 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 }.......Lvoid.mouse_move(void.*d
4920 61 74 61 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 76 61 6c ata,.uint32_t.time,.uint32_t.val
4940 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 ue,.uint32_t.state).{......(void
4960 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f )data;......(void)time;......(vo
4980 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 50 id)value;...1..if.(state.==.WL_P
49a0 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 7b 00 00 OINTER_BUTTON_STATE_PRESSED).{..
49c0 00 17 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 0d 20 20 20 ......if.(!wm.sel_client).......
49e0 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c ...return;...#....if.(!wm.sel_cl
4a00 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 2f 20 20 20 20 20 20 73 65 74 5f 66 ient->floating).{.../......set_f
4a20 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 74 72 75 65 2c 20 66 61 6c loating(wm.sel_client,.true,.fal
4a40 73 65 29 3b 00 00 00 1f 20 20 20 20 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 se);..........tile(wm.sel_client
4a60 2d 3e 73 63 72 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 1a 20 20 20 20 77 6d 2e 67 72 61 62 2e ->scr);........}........wm.grab.
4a80 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 72 65 active.=.true;........wm.grab.re
4aa0 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 1e 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d size.=.false;........wm.grab.c.=
4ac0 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 69 6e 64 6f .wm.sel_client;...*....swc_windo
4ae0 77 5f 62 65 67 69 6e 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 00 00 00 w_begin_move(wm.grab.c->win);...
4b00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 38 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 2e ...}.else.{...8....if.(!wm.grab.
4b20 61 63 74 69 76 65 20 7c 7c 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e active.||.wm.grab.resize.||.!wm.
4b40 67 72 61 62 2e 63 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 28 20 20 20 20 grab.c)..........return;...(....
4b60 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 swc_window_end_move(wm.grab.c->w
4b80 69 6e 29 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c in);........wm.grab.active.=.fal
4ba0 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 se;........wm.grab.c.=.NULL;....
4bc0 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4e 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a ..}....}.......Nvoid.mouse_resiz
4be0 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e e(void.*data,.uint32_t.time,.uin
4c00 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 t32_t.value,.uint32_t.state).{..
4c20 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b ....(void)data;......(void)time;
4c40 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 ......(void)value;...1..if.(stat
4c60 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 50 52 45 e.==.WL_POINTER_BUTTON_STATE_PRE
4c80 53 53 45 44 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e SSED).{........if.(!wm.sel_clien
4ca0 74 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 20 20 69 66 20 28 21 t)..........return;...#....if.(!
4cc0 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 2f 20 20 wm.sel_client->floating).{.../..
4ce0 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 ....set_floating(wm.sel_client,.
4d00 74 72 75 65 2c 20 66 61 6c 73 65 29 3b 00 00 00 1f 20 20 20 20 20 20 74 69 6c 65 28 77 6d 2e 73 true,.false);..........tile(wm.s
4d20 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 1a 20 20 20 el_client->scr);........}.......
4d40 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 00 00 00 1a 20 20 20 20 77 .wm.grab.active.=.true;........w
4d60 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 74 72 75 65 3b 00 00 00 1e 20 20 20 20 77 6d 2e m.grab.resize.=.true;........wm.
4d80 67 72 61 62 2e 63 20 3d 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 00 00 00 2b 20 20 20 20 73 grab.c.=.wm.sel_client;...+....s
4da0 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 wc_window_begin_resize(wm.grab.c
4dc0 2d 3e 77 69 6e 2c 00 00 00 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ->win,...L......................
4de0 20 20 20 20 20 20 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 52 49 47 48 54 20 7c 20 53 57 ......SWC_WINDOW_EDGE_RIGHT.|.SW
4e00 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 42 4f 54 54 4f 4d 29 3b 00 00 00 0a 20 20 7d 20 65 6c C_WINDOW_EDGE_BOTTOM);......}.el
4e20 73 65 20 7b 00 00 00 39 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 se.{...9....if.(!wm.grab.active.
4e40 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 ||.!wm.grab.resize.||.!wm.grab.c
4e60 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 69 )..........return;...*....swc_wi
4e80 6e 64 6f 77 5f 65 6e 64 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b ndow_end_resize(wm.grab.c->win);
4ea0 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 ........wm.grab.active.=.false;.
4ec0 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 .......wm.grab.c.=.NULL;......}.
4ee0 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 ...}.......)void.new_screen(stru
4f00 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 ct.swc_screen.*scr).{...(..struc
4f20 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 t.screen.*s.=.malloc(sizeof(*s))
4f40 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 32 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 ;......if.(!s)...2....die(EXIT_F
4f60 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f 63 20 66 61 69 6c 65 AILURE,."new.screen.malloc.faile
4f80 64 22 29 3b 00 00 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 00 0b 20 20 73 2d 3e d");......s->scr.=.scr;......s->
4fa0 78 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 79 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 77 20 x.=.0;......s->y.=.0;......s->w.
4fc0 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 68 20 3d 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 =.0;......s->h.=.0;...(..wl_list
4fe0 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 _insert(&wm.screens,.&s->link);.
5000 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 16 20 20 20 20 .....if.(!wm.sel_screen)........
5020 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 wm.sel_screen.=.s;...2..swc_scre
5040 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 en_set_handler(scr,.&screen_hand
5060 6c 65 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f ler,.s);.../.._log(stderr,."new_
5080 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 73 63 72 29 3b 00 00 00 01 7d screen=%p\n",.(void.*)scr);....}
50a0 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 .......)void.new_window(struct.s
50c0 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 63 6c wc_window.*win).{...(..struct.cl
50e0 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 ient.*c.=.malloc(sizeof(*c));...
5100 09 20 20 69 66 20 28 21 63 29 00 00 00 2e 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 ...if.(!c)........die(EXIT_FAILU
5120 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f RE,."malloc.client.failed");....
5140 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d ..c->win.=.win;......c->scr.=.wm
5160 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 .sel_screen;......c->mapped.=.fa
5180 6c 73 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 lse;...#..c->floating.=.wm.globa
51a0 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d l_floating;......c->fullscreen.=
51c0 20 66 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 .false;......c->ws.=.false;.....
51e0 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 .if.(c->floating).{...1....wl_li
5200 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 st_insert(&wm.floating,.&c->floa
5220 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d t_link);...!....wl_list_init(&c-
5240 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f >tiled_link);...4....swc_window_
5260 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 set_handler(win,.&window_handler
5280 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 ,.c);........swc_window_set_stac
52a0 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 ked(win);......}.else.{........w
52c0 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c l_list_insert(&wm.tiled,.&c->til
52e0 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 ed_link);...!....wl_list_init(&c
5300 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 ->float_link);...4....swc_window
5320 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 _set_handler(win,.&window_handle
5340 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c r,.c);........swc_window_set_til
5360 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f ed(win);......}......swc_window_
5380 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 show(win);......focus(c,.true);.
53a0 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 2f 20 20 5f .....tile(wm.sel_screen);.../.._
53c0 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 log(stderr,."new_window=%p\n",.(
53e0 76 6f 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 void.*)win);....}.......;void.ne
5400 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 w_device(struct.libinput_device.
5420 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 46 76 6f 69 64 *dev).{.(void)dev;.}.......Fvoid
5440 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c .quit(void.*data,.uint32_t.time,
5460 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 .uint32_t.value,.uint32_t.state)
5480 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 .{......(void)data;......(void)t
54a0 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 0e 20 20 28 76 6f 69 ime;......(void)value;......(voi
54c0 64 29 73 74 61 74 65 3b 00 00 00 1f 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 d)state;......wl_display_termina
54e0 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 47 76 6f 69 64 20 73 70 61 te(wm.dpy);....}.......Gvoid.spa
5500 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 wn(void.*data,.uint32_t.time,.ui
5520 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 nt32_t.value,.uint32_t.state).{.
5540 00 00 16 20 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 20 3d 20 64 61 74 61 3b 00 00 00 29 20 20 63 .....union.arg.*a.=.data;...)..c
5560 68 61 72 20 2a 63 6f 6e 73 74 20 2a 63 6d 64 20 3d 20 28 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a har.*const.*cmd.=.(char.*const.*
5580 29 61 2d 3e 76 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f )a->v;......(void)time;......(vo
55a0 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b id)value;...-..if.(state.!=.WL_K
55c0 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 00 00 00 0b 20 20 EYBOARD_KEY_STATE_PRESSED)......
55e0 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 ..return;......if.(fork().==.0).
5600 7b 00 00 00 18 20 20 20 20 65 78 65 63 76 70 28 63 6d 64 5b 30 5d 2c 20 63 6d 64 29 3b 00 00 00 {........execvp(cmd[0],.cmd);...
5620 0f 20 20 20 20 5f 65 78 69 74 28 31 32 37 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 ....._exit(127);......}....}....
5640 00 00 00 4e 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 ...Nvoid.toggle_float(void.*data
5660 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 76 61 6c 75 65 2c ,.uint32_t.time,.uint32_t.value,
5680 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 .uint32_t.state).{......(void)da
56a0 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 ta;......(void)time;......(void)
56c0 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 value;...-..if.(state.!=.WL_KEYB
56e0 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 OARD_KEY_STATE_PRESSED)........r
5700 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 eturn;......if.(!wm.sel_client).
5720 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 3e 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 .......return;...>..set_floating
5740 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e (wm.sel_client,.!wm.sel_client->
5760 66 6c 6f 61 74 69 6e 67 2c 20 74 72 75 65 29 3b 00 00 00 1b 20 20 74 69 6c 65 28 77 6d 2e 73 65 floating,.true);......tile(wm.se
5780 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 43 76 6f 69 64 l_client->scr);....}.......Cvoid
57a0 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c .toggle_float_global(void.*data,
57c0 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 76 61 6c 75 65 2c 00 .uint32_t.time,.uint32_t.value,.
57e0 00 00 2a 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 ..*.........................uint
5800 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 32_t.state).{......(void)data;..
5820 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 ....(void)time;......(void)value
5840 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f ;...-..if.(state.!=.WL_KEYBOARD_
5860 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e KEY_STATE_PRESSED)........return
5880 3b 00 00 00 2b 20 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 20 3d 20 21 77 6d 2e ;...+..wm.global_floating.=.!wm.
58a0 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 01 7d 00 00 00 00 00 00 00 10 69 6e 74 global_floating;....}........int
58c0 20 6d 61 69 6e 28 76 6f 69 64 29 20 7b 00 00 00 0a 20 20 73 65 74 75 70 28 29 3b 00 00 00 19 20 .main(void).{......setup();.....
58e0 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 .wl_display_run(wm.dpy);......sw
5900 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 c_finalize();......wl_display_de
5920 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 16 20 20 72 65 74 75 72 6e 20 45 58 49 54 5f stroy(wm.dpy);......return.EXIT_
5940 53 55 43 43 45 53 53 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 SUCCESS;....}.......Mvoid.master
5960 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c _next(void.*data,.uint32_t.time,
5980 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 .uint32_t.value,.uint32_t.state)
59a0 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 .{......(void)data;......(void)t
59c0 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 17 20 20 73 74 72 75 ime;......(void)value;......stru
59e0 63 74 20 63 6c 69 65 6e 74 20 2a 66 69 72 73 74 3b 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c ct.client.*first;......struct.cl
5a00 69 65 6e 74 20 2a 6c 61 73 74 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a ient.*last;......struct.screen.*
5a20 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 s;...-..if.(state.!=.WL_KEYBOARD
5a40 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 _KEY_STATE_PRESSED)........retur
5a60 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 0b 20 n;......if.(!wm.sel_screen).....
5a80 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 ...return;......s.=.wm.sel_scree
5aa0 6e 3b 00 00 00 19 20 20 66 69 72 73 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 n;......first.=.first_tiled(s);.
5ac0 00 00 17 20 20 6c 61 73 74 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 27 20 20 .....last.=.last_tiled(s);...'..
5ae0 69 66 20 28 21 66 69 72 73 74 20 7c 7c 20 21 6c 61 73 74 20 7c 7c 20 66 69 72 73 74 20 3d 3d 20 if.(!first.||.!last.||.first.==.
5b00 6c 61 73 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 24 20 20 77 6c 5f 6c 69 73 last)........return;...$..wl_lis
5b20 74 5f 72 65 6d 6f 76 65 28 26 6c 61 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 3c t_remove(&last->tiled_link);...<
5b40 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 ..wl_list_insert(first->tiled_li
5b60 6e 6b 2e 70 72 65 76 2c 20 26 6c 61 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1e nk.prev,.&last->tiled_link);....
5b80 20 20 66 6f 63 75 73 28 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 2c 20 74 72 75 65 29 3b 00 00 ..focus(first_tiled(s),.true);..
5ba0 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4d 76 6f 69 64 20 6d 61 ....tile(s);....}.......Mvoid.ma
5bc0 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 ster_prev(void.*data,.uint32_t.t
5be0 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 ime,.uint32_t.value,.uint32_t.st
5c00 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f ate).{......(void)data;......(vo
5c20 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 17 20 20 id)time;......(void)value;......
5c40 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 66 69 72 73 74 3b 00 00 00 16 20 20 73 74 72 75 63 struct.client.*first;......struc
5c60 74 20 63 6c 69 65 6e 74 20 2a 6c 61 73 74 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 73 63 72 65 t.client.*last;......struct.scre
5c80 65 6e 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 en.*s;...-..if.(state.!=.WL_KEYB
5ca0 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 OARD_KEY_STATE_PRESSED)........r
5cc0 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 eturn;......if.(!wm.sel_screen).
5ce0 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 .......return;......s.=.wm.sel_s
5d00 63 72 65 65 6e 3b 00 00 00 19 20 20 66 69 72 73 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 creen;......first.=.first_tiled(
5d20 73 29 3b 00 00 00 17 20 20 6c 61 73 74 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 s);......last.=.last_tiled(s);..
5d40 00 27 20 20 69 66 20 28 21 66 69 72 73 74 20 7c 7c 20 21 6c 61 73 74 20 7c 7c 20 66 69 72 73 74 .'..if.(!first.||.!last.||.first
5d60 20 3d 3d 20 6c 61 73 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 25 20 20 77 6c .==.last)........return;...%..wl
5d80 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 _list_remove(&first->tiled_link)
5da0 3b 00 00 00 38 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 6c 61 73 74 2d 3e 74 69 6c ;...8..wl_list_insert(&last->til
5dc0 65 64 5f 6c 69 6e 6b 2c 20 26 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 ed_link,.&first->tiled_link);...
5de0 1e 20 20 66 6f 63 75 73 28 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 2c 20 74 72 75 65 29 3b 00 ...focus(first_tiled(s),.true);.
5e00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4f 76 6f 69 64 20 6d .....tile(s);....}.......Ovoid.m
5e20 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f aster_resize(void.*data,.uint32_
5e40 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
5e60 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 .state).{......(void)time;......
5e80 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 16 20 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 20 3d (void)value;......union.arg.*a.=
5ea0 20 64 61 74 61 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 .data;...-..if.(state.!=.WL_KEYB
5ec0 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 OARD_KEY_STATE_PRESSED)........r
5ee0 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 eturn;......if.(!wm.sel_screen).
5f00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 41 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 .......return;...A..struct.swc_r
5f20 65 63 74 61 6e 67 6c 65 20 2a 67 20 3d 20 26 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2d 3e 73 63 ectangle.*g.=.&wm.sel_screen->sc
5f40 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 32 20 20 75 69 6e 74 33 32 5f r->usable_geometry;...2..uint32_
5f60 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 t.out_gaps.=.cfg.gaps.+.cfg.bord
5f80 65 72 5f 77 69 64 74 68 3b 00 00 00 37 20 20 75 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 er_width;...7..uint32_t.in_gaps.
5fa0 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a =.cfg.gaps.+.(cfg.border_width.*
5fc0 20 32 29 3b 00 00 00 3e 20 20 69 6e 74 33 32 5f 74 20 74 6f 74 61 6c 20 3d 20 28 69 6e 74 33 32 .2);...>..int32_t.total.=.(int32
5fe0 5f 74 29 67 2d 3e 77 69 64 74 68 20 2d 20 28 69 6e 74 33 32 5f 74 29 28 6f 75 74 5f 67 61 70 73 _t)g->width.-.(int32_t)(out_gaps
6000 20 2a 20 32 29 3b 00 00 00 1a 20 20 69 6e 74 33 32 5f 74 20 6d 69 6e 5f 6d 61 73 74 65 72 20 3d .*.2);......int32_t.min_master.=
6020 20 32 30 3b 00 00 00 35 20 20 69 6e 74 33 32 5f 74 20 6d 61 78 5f 6d 61 73 74 65 72 20 3d 20 74 .20;...5..int32_t.max_master.=.t
6040 6f 74 61 6c 20 2d 20 28 69 6e 74 33 32 5f 74 29 69 6e 5f 67 61 70 73 20 2d 20 32 30 3b 00 00 00 otal.-.(int32_t)in_gaps.-.20;...
6060 1e 20 20 69 66 20 28 6d 61 78 5f 6d 61 73 74 65 72 20 3c 20 6d 69 6e 5f 6d 61 73 74 65 72 29 00 ...if.(max_master.<.min_master).
6080 00 00 1c 20 20 20 20 6d 61 78 5f 6d 61 73 74 65 72 20 3d 20 6d 69 6e 5f 6d 61 73 74 65 72 3b 00 .......max_master.=.min_master;.
60a0 00 00 2c 20 20 69 6e 74 33 32 5f 74 20 6d 77 20 3d 20 28 69 6e 74 33 32 5f 74 29 6d 61 73 74 65 ..,..int32_t.mw.=.(int32_t)maste
60c0 72 5f 77 69 64 74 68 20 2b 20 61 2d 3e 69 3b 00 00 00 16 20 20 69 66 20 28 6d 77 20 3c 20 6d 69 r_width.+.a->i;......if.(mw.<.mi
60e0 6e 5f 6d 61 73 74 65 72 29 00 00 00 14 20 20 20 20 6d 77 20 3d 20 6d 69 6e 5f 6d 61 73 74 65 72 n_master)........mw.=.min_master
6100 3b 00 00 00 1b 20 20 65 6c 73 65 20 69 66 20 28 6d 77 20 3e 20 6d 61 78 5f 6d 61 73 74 65 72 29 ;......else.if.(mw.>.max_master)
6120 00 00 00 14 20 20 20 20 6d 77 20 3d 20 6d 61 78 5f 6d 61 73 74 65 72 3b 00 00 00 1e 20 20 6d 61 ........mw.=.max_master;......ma
6140 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 75 69 6e 74 33 32 5f 74 29 6d 77 3b 00 00 00 16 20 20 ster_width.=.(uint32_t)mw;......
6160 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 tile(wm.sel_screen);....}5......
6180 00 00 00 00 00 00 00 00 00 17 02 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
61a0 00 ef 35 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 0d 00 00 00 0f 00 00 00 ..5..............5._............
61c0 00 00 00 00 00 00 00 00 0e 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 03 00 00 00 00 00 ................................
61e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
62a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
62c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
62e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6b 6b 04 01 00 00 00 .......................i.kk.....
6340 00 00 f5 18 00 00 00 fe 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 00 ff 00 00 ................................
6360 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 f5 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 19 ................................
6380 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 f5 18 00 00 00 f6 00 void.new_device(struct.li.......
63a0 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 8d 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................................
63c0 0c 20 20 20 20 20 20 20 20 7d 20 65 6c f5 18 00 00 00 8e 00 00 00 00 00 00 00 00 00 00 00 00 f5 .........}.el...................
63e0 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 00 00 00 ................................
6400 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 00 00 8d .......5........................
6420 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 f5 ................................
6440 18 00 00 00 00 8d 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 68 00 00 00 19 00 00 00 00 10 00 .....................h..........
6460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0d 00 00 00 00 00 00 f5 18 00 00 00 00 f5 00 00 00 19 ................................
6480 00 00 00 00 00 00 00 00 00 00 00 09 00 00 00 00 00 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 00 ................................
64a0 00 00 00 ad 00 00 00 00 00 00 00 f5 18 00 00 00 00 fd 00 00 00 01 00 00 00 01 00 00 00 00 00 00 ................................
64c0 00 00 00 00 00 00 00 00 00 ac 1d 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
64e0 00 35 81 5f d0 00 00 00 0e 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00 fe 00 00 00 .5._............................
6500 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 00 00 00 ................................
6520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
65e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6660 00 00 00 00 00 00 00 69 95 6b 6c 04 01 00 00 00 07 00 f5 18 00 00 00 2e 00 00 01 0c 00 00 00 fe .......i.kl.....................
6680 00 00 00 cf 00 00 00 16 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 ............if.(wm.sel_client)..
66a0 00 5b 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 .[........swc_window_set_border(
66c0 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 wm.sel_client->win,.cfg.border_c
66e0 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 ol_normal,.cfg.border_width);...
6700 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 4f 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f .....if.(c)...O........swc_windo
6720 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f w_set_border(c->win,.cfg.border_
6740 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 col_active,.cfg.border_width);..
6760 00 22 20 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 ."....if.(raise.&&.c.&&.c->float
6780 69 6e 67 29 00 00 00 24 20 20 20 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 ing)...$........set_floating(c,.
67a0 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 28 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 true,.true);...(....swc_window_f
67c0 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 16 20 20 20 20 ocus(c.?.c->win.:.NULL);........
67e0 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 73 wm.sel_client.=.c;....}.......+s
6800 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 tatic.void.on_screen_destroy(voi
6820 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1c 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 d.*data).{........struct.screen.
6840 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 13 20 20 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e *s.=.data;........if.(!s).return
6860 3b 00 00 00 1d 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b ;........wl_list_remove(&s->link
6880 29 3b 00 00 00 1d 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 );........if.(wm.sel_screen.==.s
68a0 29 20 7b 00 00 00 27 20 20 20 20 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 ).{...'........if.(wl_list_empty
68c0 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 21 20 20 20 20 20 20 20 20 20 20 20 20 77 6d (&wm.screens))...!............wm
68e0 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 0c 20 20 20 20 20 20 20 20 65 .sel_screen.=.NULL;............e
6900 6c 73 65 00 00 00 52 20 20 20 20 20 20 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e lse...R............wm.sel_screen
6920 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 .=.wl_container_of(wm.screens.ne
6940 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 xt,.wm.sel_screen,.link);.......
6960 20 7d 00 00 00 0c 20 20 20 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 73 .}........free(s);....}.......;s
6980 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d tatic.void.on_screen_usable_geom
69a0 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1c 20 20 etry_changed(void.*data).{......
69c0 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 0c 20 20 ..struct.screen.*s.=.data;......
69e0 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f ..tile(s);....}.......(static.vo
6a00 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 id.on_win_destroy(void.*data).{.
6a20 00 00 1c 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 .......struct.client.*c.=.data;.
6a40 00 00 18 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 00 13 20 .......struct.client.*next;.....
6a60 20 20 20 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 2b 20 20 20 20 69 66 20 28 77 6d ...if.(!c).return;...+....if.(wm
6a80 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 .grab.active.&&.wm.grab.c.==.c).
6aa0 7b 00 00 00 1f 20 20 20 20 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 {............wm.grab.active.=.fa
6ac0 6c 73 65 3b 00 00 00 19 20 20 20 20 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c lse;............wm.grab.c.=.NULL
6ae0 3b 00 00 00 05 20 20 20 20 7d 00 00 00 14 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e ;........}........if.(c->floatin
6b00 67 29 00 00 00 27 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d g)...'........wl_list_remove(&c-
6b20 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 27 20 20 20 >float_link);........else...'...
6b40 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 .....wl_list_remove(&c->tiled_li
6b60 6e 6b 29 3b 00 00 00 1d 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d nk);........if.(wm.sel_client.==
6b80 20 63 29 20 7b 00 00 00 1d 20 20 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d .c).{............wm.sel_client.=
6ba0 20 4e 55 4c 4c 3b 00 00 00 23 20 20 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 66 .NULL;...#........next.=.first_f
6bc0 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 12 20 20 20 20 20 20 20 20 69 66 20 28 21 6e 65 loat(c->scr);............if.(!ne
6be0 78 74 29 00 00 00 27 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f xt)...'............next.=.first_
6c00 74 69 6c 65 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 1a 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 tiled(c->scr);............focus(
6c20 6e 65 78 74 2c 20 74 72 75 65 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 11 20 20 20 20 74 69 6c next,.true);........}........til
6c40 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0c 20 20 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 e(c->scr);........free(c);....}.
6c60 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 ......(static.void.on_win_entere
6c80 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1f 20 20 20 20 69 66 20 28 77 6d 2e 67 72 d(void.*data).{........if.(wm.gr
6ca0 61 62 2e 61 63 74 69 76 65 29 20 72 65 74 75 72 6e 3b 00 00 00 1c 20 20 20 20 73 74 72 75 63 74 ab.active).return;........struct
6cc0 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 13 20 20 20 20 66 6f 63 75 73 28 .client.*c.=.data;........focus(
6ce0 63 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 c,.true);....}........static.voi
6d00 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 21 20 20 20 20 77 6d 2e 64 70 79 20 3d 20 d.setup(void).{...!....wm.dpy.=.
6d20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 3f 20 20 20 20 69 66 20 28 wl_display_create();...?....if.(
6d40 21 77 6d 2e 64 70 79 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 !wm.dpy).die(EXIT_FAILURE,."wl_d
6d60 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1e 20 20 20 20 77 isplay_create.failed");........w
6d80 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1c 20 20 20 l_list_init(&wm.screens);.......
6da0 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1f 20 20 20 .wl_list_init(&wm.tiled);.......
6dc0 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 19 .wl_list_init(&wm.floating);....
6de0 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 20 20 20 ....wm.sel_client.=.NULL;.......
6e00 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 1b 20 20 20 20 77 6d .wm.sel_screen.=.NULL;........wm
6e20 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 1b 20 20 20 20 77 6d 2e .grab.active.=.false;........wm.
6e40 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 grab.resize.=.false;........wm.g
6e60 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 33 20 20 20 20 77 6d 2e 65 76 5f 6c 6f 6f 70 20 rab.c.=.NULL;...3....wm.ev_loop.
6e80 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d 2e 64 =.wl_display_get_event_loop(wm.d
6ea0 70 79 29 3b 00 00 00 36 20 20 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 py);...6....if.(!swc_initialize(
6ec0 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 00 00 wm.dpy,.wm.ev_loop,.&manager))..
6ee0 00 33 20 20 20 20 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 .3........die(EXIT_FAILURE,."swc
6f00 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 12 20 20 20 20 73 65 74 _initialize.failed");........set
6f20 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 3a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 up_binds();...:....const.char.*s
6f40 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f ock.=.wl_display_add_socket_auto
6f60 28 77 6d 2e 64 70 79 29 3b 00 00 00 46 20 20 20 20 69 66 20 28 21 73 6f 63 6b 29 20 64 69 65 28 (wm.dpy);...F....if.(!sock).die(
6f80 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f EXIT_FAILURE,."wl_display_add_so
6fa0 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 29 3b 00 00 00 27 20 20 20 20 73 65 74 65 6e cket_auto.failed");...'....seten
6fc0 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 v("WAYLAND_DISPLAY",.sock,.1);..
6fe0 00 2f 20 20 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 ./...._log(stderr,."WAYLAND_DISP
7000 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 20 20 20 20 20 73 69 67 6e 61 6c 28 LAY=%s\n",.sock);........signal(
7020 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 21 20 20 20 20 73 69 67 SIGINT,.sig_handler);...!....sig
7040 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 21 20 20 nal(SIGTERM,.sig_handler);...!..
7060 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 ..signal(SIGQUIT,.sig_handler);.
7080 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 ...}........static.void.setup_bi
70a0 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 30 20 20 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 nds(void).{...0....for.(size_t.i
70c0 20 3d 20 30 3b 20 69 20 3c 20 4c 45 4e 47 54 48 28 62 69 6e 64 73 29 3b 20 69 2b 2b 29 20 7b 00 .=.0;.i.<.LENGTH(binds);.i++).{.
70e0 00 00 29 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 ..)........const.struct.bind.*b.
7100 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 4b 20 20 20 20 20 20 20 20 73 77 63 5f 61 64 64 5f =.&binds[i];...K........swc_add_
7120 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 binding(b->type,.b->mods,.b->ksy
7140 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 05 20 m,.b->fn,.(void.*)&b->arg);.....
7160 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 ...}....}.......Gstatic.void.set
7180 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c _floating(struct.client.*c,.bool
71a0 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 13 20 20 20 20 .floating,.bool.raise).{........
71c0 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 13 20 20 20 20 69 66 20 28 66 6c 6f 61 74 if.(!c).return;........if.(float
71e0 69 6e 67 29 20 7b 00 00 00 1b 20 20 20 20 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 ing).{............if.(!c->floati
7200 6e 67 29 20 7b 00 00 00 1f 20 20 20 20 20 20 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 ng).{................c->floating
7220 20 3d 20 74 72 75 65 3b 00 00 00 2b 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f .=.true;...+............wl_list_
7240 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 39 20 20 20 20 20 remove(&c->tiled_link);...9.....
7260 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 .......wl_list_insert(&wm.floati
7280 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 20 20 20 20 20 20 ng,.&c->float_link);............
72a0 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 2b 20 20 20 20 20 20 20 20 20 }.else.if.(raise).{...+.........
72c0 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b ...wl_list_remove(&c->float_link
72e0 29 3b 00 00 00 39 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 );...9............wl_list_insert
7300 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 (&wm.floating,.&c->float_link);.
7320 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 27 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 ...........}...'........swc_wind
7340 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0c 20 20 20 20 7d ow_set_stacked(c->win);........}
7360 20 65 6c 73 65 20 7b 00 00 00 1a 20 20 20 20 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 .else.{............if.(c->floati
7380 6e 67 29 20 7b 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 ng).{................c->floating
73a0 20 3d 20 66 61 6c 73 65 3b 00 00 00 2b 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 .=.false;...+............wl_list
73c0 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 36 20 20 20 20 _remove(&c->float_link);...6....
73e0 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 ........wl_list_insert(&wm.tiled
7400 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 ,.&c->tiled_link);............}.
7420 00 00 25 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 ..%........swc_window_set_tiled(
7440 63 2d 3e 77 69 6e 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 c->win);........}....}.......$st
7460 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 atic.void.tile(struct.screen.*s)
7480 20 7b 00 00 00 15 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1e 20 .{........struct.client.*c;.....
74a0 20 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 ...struct.swc_rectangle.geom;...
74c0 23 20 20 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 #....struct.swc_rectangle.*scr_g
74e0 65 6f 6d 3b 00 00 00 33 20 20 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 eom;...3....int32_t.out_gaps.=.c
7500 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 38 20 fg.gaps.+.cfg.border_width;...8.
7520 20 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 ...int32_t.in_gaps.=.cfg.gaps.+.
7540 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 11 20 20 20 20 69 (cfg.border_width.*.2);........i
7560 6e 74 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 12 20 20 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 nt32_t.x,.y;........uint32_t.w,.
7580 68 3b 00 00 00 13 20 20 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e 3b 00 00 00 28 20 20 20 h;........if.(!s).return;...(...
75a0 20 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d .scr_geom.=.&s->scr->usable_geom
75c0 65 74 72 79 3b 00 00 00 11 20 20 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 47 20 20 etry;........size_t.n.=.0;...G..
75e0 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c ..wl_list_for_each(c,.&wm.tiled,
7600 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 .tiled_link).if.(is_tiled(c,.s))
7620 20 6e 2b 2b 3b 00 00 00 17 20 20 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 20 72 65 74 75 72 6e 3b .n++;........if.(n.==.0).return;
7640 00 00 00 1f 20 20 20 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 ........x.=.scr_geom->x.+.out_ga
7660 70 73 3b 00 00 00 1f 20 20 20 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 ps;........y.=.scr_geom->y.+.out
7680 5f 67 61 70 73 3b 00 00 00 29 20 20 20 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 _gaps;...)....w.=.scr_geom->widt
76a0 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 2a 20 20 20 20 68 20 3d 20 73 h.-.(out_gaps.*.2);...*....h.=.s
76c0 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 cr_geom->height.-.(out_gaps.*.2)
76e0 3b 00 00 00 11 20 20 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 34 20 20 20 20 20 20 ;........if.(n.==.1).{...4......
7700 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c ..wl_list_for_each(c,.&wm.tiled,
7720 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 2a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 .tiled_link).{...*............if
7740 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 17 .(!is_tiled(c,.s)).continue;....
7760 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 17 20 20 20 20 20 ............geom.x.=.x;.........
7780 20 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 1b 20 20 20 20 20 20 20 20 20 20 .......geom.y.=.y;..............
77a0 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 1c 20 20 20 20 20 20 20 20 20 20 20 ..geom.width.=.w;...............
77c0 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 33 20 20 20 20 20 20 20 20 20 20 20 .geom.height.=.h;...3...........
77e0 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c .swc_window_set_geometry(c->win,
7800 20 26 67 65 6f 6d 29 3b 00 00 00 13 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 .&geom);................return;.
7820 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 20 20 7d 00 00 00 11 20 20 20 20 73 69 7a ...........}........}........siz
7840 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 e_t.i.=.0;...0....wl_list_for_ea
7860 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 ch(c,.&wm.tiled,.tiled_link).{..
7880 00 26 20 20 20 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 .&........if.(!is_tiled(c,.s)).c
78a0 6f 6e 74 69 6e 75 65 3b 00 00 00 1e 20 20 20 20 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 ontinue;............if.(master_w
78c0 69 64 74 68 20 3d 3d 20 30 29 00 00 00 44 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 73 74 65 72 idth.==.0)...D............master
78e0 5f 77 69 64 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 _width.=.((w.-.in_gaps).*.cfg.ma
7900 73 74 65 72 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 15 20 20 20 20 20 20 20 20 69 66 ster_width)./.100;............if
7920 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 17 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e .(i.==.0).{................geom.
7940 78 20 3d 20 78 3b 00 00 00 17 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 x.=.x;................geom.y.=.y
7960 3b 00 00 00 26 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 ;...&............geom.width.=.ma
7980 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 1c 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e ster_width;................geom.
79a0 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 10 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 height.=.h;............}.else.{.
79c0 00 00 24 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d ..$............uint32_t.stackn.=
79e0 20 6e 20 2d 20 31 3b 00 00 00 21 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 .n.-.1;...!............uint32_t.
7a00 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 4a 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 idx.=.i.-.1;...J............uint
7a20 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 32_t.stack_height.=.(h.-.in_gaps
7a40 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b 00 00 00 30 20 20 .*.(stackn.-.1))./.stackn;...0..
7a60 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 ..........geom.x.=.x.+.master_wi
7a80 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 3a 20 20 20 20 20 20 20 20 20 20 20 20 67 65 dth.+.in_gaps;...:............ge
7aa0 6f 6d 2e 79 20 3d 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 om.y.=.y.+.(idx.*.(stack_height.
7ac0 2b 20 69 6e 5f 67 61 70 73 29 29 3b 00 00 00 34 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d +.in_gaps));...4............geom
7ae0 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 .width.=.w.-.master_width.-.in_g
7b00 61 70 73 3b 00 00 00 27 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 aps;...'............geom.height.
7b20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 2f =.stack_height;............}.../
7b40 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 ........swc_window_set_geometry(
7b60 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0c 20 20 20 20 20 20 20 20 69 2b 2b 3b 00 c->win,.&geom);............i++;.
7b80 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 .......}....}.......)void.new_sc
7ba0 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 reen(struct.swc_screen.*scr).{..
7bc0 00 2a 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 .*....struct.screen.*s.=.malloc(
7be0 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 3a 20 20 20 20 69 66 20 28 21 73 29 20 64 69 65 28 sizeof(*s));...:....if.(!s).die(
7c00 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f 63 EXIT_FAILURE,."new.screen.malloc
7c20 20 66 61 69 6c 65 64 22 29 3b 00 00 00 11 20 20 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 .failed");........s->scr.=.scr;.
7c40 00 00 22 20 20 20 20 73 2d 3e 78 20 3d 20 73 2d 3e 79 20 3d 20 73 2d 3e 77 20 3d 20 73 2d 3e 68 .."....s->x.=.s->y.=.s->w.=.s->h
7c60 20 3d 20 30 3b 00 00 00 2a 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e .=.0;...*....wl_list_insert(&wm.
7c80 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 2a 20 20 20 20 69 66 20 28 21 screens,.&s->link);...*....if.(!
7ca0 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 wm.sel_screen).wm.sel_screen.=.s
7cc0 3b 00 00 00 34 20 20 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 ;...4....swc_screen_set_handler(
7ce0 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 31 20 20 20 scr,.&screen_handler,.s);...1...
7d00 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c ._log(stderr,."new_screen=%p\n",
7d20 20 28 76 6f 69 64 20 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 .(void.*)scr);....}.......)void.
7d40 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 new_window(struct.swc_window.*wi
7d60 6e 29 20 7b 00 00 00 2a 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d n).{...*....struct.client.*c.=.m
7d80 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 36 20 20 20 20 69 66 20 28 21 63 alloc(sizeof(*c));...6....if.(!c
7da0 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 ).die(EXIT_FAILURE,."malloc.clie
7dc0 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 11 20 20 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e nt.failed");........c->win.=.win
7de0 3b 00 00 00 1b 20 20 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b ;........c->scr.=.wm.sel_screen;
7e00 00 00 00 16 20 20 20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 20 ........c->mapped.=.false;...%..
7e20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 ..c->floating.=.wm.global_floati
7e40 6e 67 3b 00 00 00 1a 20 20 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 ng;........c->fullscreen.=.false
7e60 3b 00 00 00 12 20 20 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 16 20 20 20 20 69 ;........c->ws.=.false;........i
7e80 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 35 20 20 20 20 20 20 20 20 77 6c 5f f.(c->floating).{...5........wl_
7ea0 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c list_insert(&wm.floating,.&c->fl
7ec0 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 25 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e oat_link);...%........wl_list_in
7ee0 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 38 20 20 20 20 20 20 20 20 73 it(&c->tiled_link);...8........s
7f00 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 wc_window_set_handler(win,.&wind
7f20 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 24 20 20 20 20 20 20 20 20 73 77 63 5f 77 ow_handler,.c);...$........swc_w
7f40 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0c 20 20 20 20 7d indow_set_stacked(win);........}
7f60 20 65 6c 73 65 20 7b 00 00 00 32 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 .else.{...2........wl_list_inser
7f80 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 t(&wm.tiled,.&c->tiled_link);...
7fa0 25 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 74 5f %........wl_list_init(&c->float_
7fc0 6c 69 6e 6b 29 3b 00 00 00 38 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 link);...8........swc_window_set
7fe0 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 _handler(win,.&window_handler,.c
8000 29 3b 00 00 00 22 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c );..."........swc_window_set_til
8020 65 64 28 77 69 6e 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 19 20 20 20 20 73 77 63 5f 77 69 6e ed(win);........}........swc_win
8040 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 13 20 20 20 20 66 6f 63 75 73 28 63 2c 20 74 dow_show(win);........focus(c,.t
8060 72 75 65 29 3b 00 00 00 18 20 20 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 rue);........tile(wm.sel_screen)
8080 3b 00 00 00 31 20 20 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e 64 6f ;...1...._log(stderr,."new_windo
80a0 77 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 w=%p\n",.(void.*)win);....}.....
80c0 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 ..;void.new_device(struct.libinp
80e0 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 ut_device.*dev).{.(void)dev;.}..
8100 00 00 00 00 00 10 69 6e 74 20 6d 61 69 6e 28 76 6f 69 64 29 20 7b 00 00 00 0c 20 20 20 20 73 65 ......int.main(void).{........se
8120 74 75 70 28 29 3b 00 00 00 1b 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e tup();........wl_display_run(wm.
8140 64 70 79 29 3b 00 00 00 13 20 20 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1f dpy);........swc_finalize();....
8160 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 ....wl_display_destroy(wm.dpy);.
8180 00 00 18 20 20 20 20 72 65 74 75 72 6e 20 45 58 49 54 5f 53 55 43 43 45 53 53 3b 35 81 f5 18 00 .......return.EXIT_SUCCESS;5....
81a0 00 00 00 2e 00 00 00 02 00 00 00 ce 00 00 00 02 00 00 00 dc 00 00 00 00 00 00 00 03 05 00 00 00 ................................
81c0 00 00 00 91 18 00 00 00 00 00 00 c5 16 00 00 00 00 00 00 35 81 5f d0 00 00 00 0f 00 00 00 11 00 ...................5._..........
81e0 00 00 00 00 00 00 00 00 00 00 10 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 ................................
8200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
82a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
82c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
82e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6b a2 04 01 00 .........................i.k....
8360 00 00 00 00 f5 18 00 00 00 00 00 00 00 02 00 00 00 00 00 00 01 0c 00 00 00 13 23 69 6e 63 6c 75 ..........................#inclu
8380 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 de."config.h"....#include."types
83a0 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 22 75 74 69 6c 2e 68 22 00 00 00 12 23 69 6e 63 .h"....#include."util.h"....#inc
83c0 6c 75 64 65 20 22 77 73 78 77 6d 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e lude."wsxwm.h"....#include.<sign
83e0 61 6c 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 00 00 13 23 al.h>....#include.<stdio.h>....#
8400 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c include.<stdlib.h>....#include.<
8420 73 77 63 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 swc.h>....#include.<unistd.h>...
8440 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 .#include.<wayland-server.h>....
8460 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e #include.<wayland-util.h>...(#in
8480 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 2d 6b 65 79 73 79 clude.<xkbcommon/xkbcommon-keysy
84a0 6d 73 2e 68 3e 00 00 00 00 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f ms.h>.......'static.void.on_win_
84c0 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 destroy(void.*data);...'static.v
84e0 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 oid.on_win_entered(void.*data);.
8500 00 00 2a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 ..*static.void.on_screen_destroy
8520 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f (void.*data);...:static.void.on_
8540 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 screen_usable_geometry_changed(v
8560 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 oid.*data);...0static.void.focus
8580 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 (struct.client.*c,.bool.raise);.
85a0 00 00 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 ...static.void.setup(void);....s
85c0 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 tatic.void.setup_binds(void);...
85e0 46 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 Fstatic.void.set_floating(struct
8600 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 .client.*c,.bool.floating,.bool.
8620 72 61 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 raise);...#static.void.tile(stru
8640 63 74 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 ct.screen.*s);...(void.new_scree
8660 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b 00 00 00 28 76 6f n(struct.swc_screen.*scr);...(vo
8680 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 id.new_window(struct.swc_window.
86a0 2a 77 69 6e 29 3b 00 00 00 2d 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 *win);...-void.new_device(struct
86c0 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 00 00 00 00 2c 73 .libinput_device.*dev);.......,s
86e0 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f truct.swc_window_handler.window_
8700 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e handler.=.{.........destroy.=.on
8720 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 _win_destroy,.........entered.=.
8740 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 on_win_entered,....};.......,str
8760 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 uct.swc_screen_handler.screen_ha
8780 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 ndler.=.{...!.....destroy.=.on_s
87a0 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 creen_destroy,...A.....usable_ge
87c0 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c ometry_changed.=.on_screen_usabl
87e0 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 e_geometry_changed,....};.......
8800 21 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 !static.uint32_t.master_width.=.
8820 30 3b 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 0;....struct.wm.wm;.......$const
8840 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 .struct.swc_manager.manager.=.{.
8860 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c ........new_screen.=.new_screen,
8880 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 .........new_window.=.new_window
88a0 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 ,.........new_device.=.new_devic
88c0 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 e,....};.......1static.void.focu
88e0 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 s(struct.client.*c,.bool.raise).
8900 7b 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 44 20 20 20 {......if.(wm.sel_client)...D...
8920 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c .swc_window_set_border(wm.sel_cl
8940 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c ient->win,.cfg.border_col_normal
8960 2c 00 00 00 2c 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 63 ,...,..........................c
8980 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 fg.border_width);......if.(c)...
89a0 4b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 K....swc_window_set_border(c->wi
89c0 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f n,.cfg.border_col_active,.cfg.bo
89e0 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 rder_width);......if.(raise.&&.c
8a00 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 .&&.c->floating)........set_floa
8a20 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 ting(c,.true,.true);...&..swc_wi
8a40 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 ndow_focus(c.?.c->win.:.NULL);..
8a60 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 ....wm.sel_client.=.c;....}.....
8a80 00 00 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 ..+static.void.on_screen_destroy
8aa0 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 (void.*data).{......struct.scree
8ac0 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 n.*s.=.data;......if.(!s).......
8ae0 20 72 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d .return;......wl_list_remove(&s-
8b00 3e 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d >link);......if.(wm.sel_screen.=
8b20 3d 20 73 29 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 =.s).{...#....if.(wl_list_empty(
8b40 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 &wm.screens))..........wm.sel_sc
8b60 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 reen.=.NULL;........else...L....
8b80 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f ..wm.sel_screen.=.wl_container_o
8ba0 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e f(wm.screens.next,.wm.sel_screen
8bc0 2c 20 6c 69 6e 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 ,.link);......}......free(s);...
8be0 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f .}.......;static.void.on_screen_
8c00 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 usable_geometry_changed(void.*da
8c20 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 ta).{......struct.screen.*s.=.da
8c40 74 61 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 ta;......tile(s);....}.......(st
8c60 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 atic.void.on_win_destroy(void.*d
8c80 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 ata).{......struct.client.*c.=.d
8ca0 61 74 61 3b 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 ata;......struct.client.*next;..
8cc0 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 29 20 20 ....if.(!c)........return;...)..
8ce0 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 if.(wm.grab.active.&&.wm.grab.c.
8d00 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 ==.c).{........wm.grab.active.=.
8d20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 false;........wm.grab.c.=.NULL;.
8d40 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 .....}......if.(c->floating)...#
8d60 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e ....wl_list_remove(&c->float_lin
8d80 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d k);......else...#....wl_list_rem
8da0 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d ove(&c->tiled_link);......if.(wm
8dc0 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 .sel_client.==.c).{........wm.se
8de0 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 20 3d 20 66 l_client.=.NULL;........next.=.f
8e00 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 irst_float(c->scr);........if.(!
8e20 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 next)...!......next.=.first_tile
8e40 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 d(c->scr);........focus(next,.tr
8e60 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 ue);......}......tile(c->scr);..
8e80 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 ....free(c);....}.......(static.
8ea0 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 void.on_win_entered(void.*data).
8ec0 7b 00 00 00 15 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 {......if.(wm.grab.active)......
8ee0 20 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 ..return;......struct.client.*c.
8f00 3d 20 64 61 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 01 =.data;......focus(c,.true);....
8f20 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 }........static.void.setup(void)
8f40 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 .{......wm.dpy.=.wl_display_crea
8f60 74 65 28 29 3b 00 00 00 0e 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 20 20 20 64 te();......if.(!wm.dpy)...2....d
8f80 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 ie(EXIT_FAILURE,."wl_display_cre
8fa0 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 ate.failed");......wl_list_init(
8fc0 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 &wm.screens);......wl_list_init(
8fe0 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 &wm.tiled);......wl_list_init(&w
9000 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 m.floating);......wm.sel_client.
9020 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c =.NULL;......wm.sel_screen.=.NUL
9040 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 L;......wm.grab.active.=.false;.
9060 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 .....wm.grab.resize.=.false;....
9080 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c ..wm.grab.c.=.NULL;...1..wm.ev_l
90a0 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 oop.=.wl_display_get_event_loop(
90c0 77 6d 2e 64 70 79 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a wm.dpy);...4..if.(!swc_initializ
90e0 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 e(wm.dpy,.wm.ev_loop,.&manager))
9100 00 00 00 2f 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 5f 69 .../....die(EXIT_FAILURE,."swc_i
9120 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 10 20 20 73 65 74 75 70 5f 62 nitialize.failed");......setup_b
9140 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 inds();...8..const.char.*sock.=.
9160 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 wl_display_add_socket_auto(wm.dp
9180 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f 63 6b 29 00 00 00 3b 20 20 20 20 64 69 65 28 45 y);......if.(!sock)...;....die(E
91a0 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 XIT_FAILURE,."wl_display_add_soc
91c0 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 29 3b 00 00 00 25 20 20 73 65 74 65 6e 76 28 22 ket_auto.failed");...%..setenv("
91e0 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2d 20 WAYLAND_DISPLAY",.sock,.1);...-.
9200 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 ._log(stderr,."WAYLAND_DISPLAY=%
9220 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c s\n",.sock);......signal(SIGINT,
9240 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 .sig_handler);......signal(SIGTE
9260 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 RM,.sig_handler);......signal(SI
9280 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 GQUIT,.sig_handler);....}.......
92a0 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b .static.void.setup_binds(void).{
92c0 00 00 00 2e 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 4c 45 4e ......for.(size_t.i.=.0;.i.<.LEN
92e0 47 54 48 28 62 69 6e 64 73 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 20 GTH(binds);.i++).{...%....const.
9300 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 20 struct.bind.*b.=.&binds[i];...G.
9320 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d ...swc_add_binding(b->type,.b->m
9340 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d ods,.b->ksym,.b->fn,.(void.*)&b-
9360 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 >arg);......}....}.......Gstatic
9380 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 .void.set_floating(struct.client
93a0 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 .*c,.bool.floating,.bool.raise).
93c0 7b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 {......if.(!c)........return;...
93e0 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 63 ...if.(floating).{........if.(!c
9400 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 ->floating).{..........c->floati
9420 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f ng.=.true;...%......wl_list_remo
9440 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f ve(&c->tiled_link);...3......wl_
9460 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c list_insert(&wm.floating,.&c->fl
9480 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 oat_link);........}.else.if.(rai
94a0 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 se).{...%......wl_list_remove(&c
94c0 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f ->float_link);...3......wl_list_
94e0 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c insert(&wm.floating,.&c->float_l
9500 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 ink);........}...#....swc_window
9520 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 _set_stacked(c->win);......}.els
9540 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 e.{........if.(c->floating).{...
9560 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 .......c->floating.=.false;...%.
9580 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 .....wl_list_remove(&c->float_li
95a0 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d nk);...0......wl_list_insert(&wm
95c0 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 .tiled,.&c->tiled_link);........
95e0 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d }...!....swc_window_set_tiled(c-
9600 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 74 69 63 >win);......}....}.......$static
9620 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 .void.tile(struct.screen.*s).{..
9640 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 74 72 75 63 ....struct.client.*c;......struc
9660 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 73 74 72 75 63 t.swc_rectangle.geom;...!..struc
9680 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 00 00 31 20 20 t.swc_rectangle.*scr_geom;...1..
96a0 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 int32_t.out_gaps.=.cfg.gaps.+.cf
96c0 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f g.border_width;...6..int32_t.in_
96e0 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 gaps.=.cfg.gaps.+.(cfg.border_wi
9700 64 74 68 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 10 dth.*.2);......int32_t.x,.y;....
9720 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 68 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 ..uint32_t.w,.h;......if.(!s)...
9740 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d .....return;...&..scr_geom.=.&s-
9760 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 20 73 69 7a 65 >scr->usable_geometry;......size
9780 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 _t.n.=.0;...E..wl_list_for_each(
97a0 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 c,.&wm.tiled,.tiled_link).if.(is
97c0 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 0d 20 20 69 66 20 28 6e 20 3d 3d _tiled(c,.s)).n++;......if.(n.==
97e0 20 30 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d 20 73 63 72 5f .0)........return;......x.=.scr_
9800 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 3d 20 73 63 72 geom->x.+.out_gaps;......y.=.scr
9820 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 20 3d 20 73 63 _geom->y.+.out_gaps;...'..w.=.sc
9840 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 r_geom->width.-.(out_gaps.*.2);.
9860 00 00 28 20 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 ..(..h.=.scr_geom->height.-.(out
9880 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 _gaps.*.2);......if.(n.==.1).{..
98a0 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 .0....wl_list_for_each(c,.&wm.ti
98c0 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 1a 20 20 20 20 20 20 69 66 20 28 led,.tiled_link).{..........if.(
98e0 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 11 20 20 20 20 20 20 20 20 63 6f 6e 74 !is_tiled(c,.s))............cont
9900 69 6e 75 65 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 inue;..........geom.x.=.x;......
9920 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 15 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 ....geom.y.=.y;..........geom.wi
9940 64 74 68 20 3d 20 77 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 dth.=.w;..........geom.height.=.
9960 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 h;...-......swc_window_set_geome
9980 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 try(c->win,.&geom);..........ret
99a0 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 7a 65 5f 74 urn;........}......}......size_t
99c0 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c .i.=.0;......wl_list_for_each(c,
99e0 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 18 20 20 20 .&wm.tiled,.tiled_link).{.......
9a00 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 0f 20 20 20 20 20 20 63 .if.(!is_tiled(c,.s))..........c
9a20 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 ontinue;........if.(master_width
9a40 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 .==.0)...>......master_width.=.(
9a60 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 68 (w.-.in_gaps).*.cfg.master_width
9a80 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 )./.100;........if.(i.==.0).{...
9aa0 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d .......geom.x.=.x;..........geom
9ac0 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 .y.=.y;..........geom.width.=.ma
9ae0 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 ster_width;..........geom.height
9b00 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 20 20 20 75 .=.h;........}.else.{..........u
9b20 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 20 20 20 20 int32_t.stackn.=.n.-.1;.........
9b40 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 20 20 20 20 .uint32_t.idx.=.i.-.1;...D......
9b60 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 6e 5f uint32_t.stack_height.=.(h.-.in_
9b80 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b 00 00 gaps.*.(stackn.-.1))./.stackn;..
9ba0 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 64 74 .*......geom.x.=.x.+.master_widt
9bc0 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 34 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 h.+.in_gaps;...4......geom.y.=.y
9be0 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e 5f 67 61 70 .+.(idx.*.(stack_height.+.in_gap
9c00 73 29 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d s));..........geom.width.=.w.-.m
9c20 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 20 20 20 20 aster_width.-.in_gaps;...!......
9c40 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 05 20 geom.height.=.stack_height;.....
9c60 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 ...}...+....swc_window_set_geome
9c80 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 2b 2b 3b 00 try(c->win,.&geom);........i++;.
9ca0 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 .....}....}.......)void.new_scre
9cc0 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 28 en(struct.swc_screen.*scr).{...(
9ce0 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 ..struct.screen.*s.=.malloc(size
9d00 6f 66 28 2a 73 29 29 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 32 20 20 20 20 64 69 65 of(*s));......if.(!s)...2....die
9d20 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f (EXIT_FAILURE,."new.screen.mallo
9d40 63 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 c.failed");......s->scr.=.scr;..
9d60 00 20 20 20 73 2d 3e 78 20 3d 20 73 2d 3e 79 20 3d 20 73 2d 3e 77 20 3d 20 73 2d 3e 68 20 3d 20 ....s->x.=.s->y.=.s->w.=.s->h.=.
9d80 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 0;...(..wl_list_insert(&wm.scree
9da0 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f ns,.&s->link);......if.(!wm.sel_
9dc0 73 63 72 65 65 6e 29 00 00 00 16 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 screen)........wm.sel_screen.=.s
9de0 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 ;...2..swc_screen_set_handler(sc
9e00 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f r,.&screen_handler,.s);.../.._lo
9e20 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f g(stderr,."new_screen=%p\n",.(vo
9e40 69 64 20 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f id.*)scr);....}.......)void.new_
9e60 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b window(struct.swc_window.*win).{
9e80 00 00 00 28 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 ...(..struct.client.*c.=.malloc(
9ea0 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 2e 20 20 20 sizeof(*c));......if.(!c).......
9ec0 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e .die(EXIT_FAILURE,."malloc.clien
9ee0 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 t.failed");......c->win.=.win;..
9f00 00 19 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 ....c->scr.=.wm.sel_screen;.....
9f20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 .c->mapped.=.false;...#..c->floa
9f40 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 ting.=.wm.global_floating;......
9f60 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 c->fullscreen.=.false;......c->w
9f80 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 s.=.false;......if.(c->floating)
9fa0 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f .{...1....wl_list_insert(&wm.flo
9fc0 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 ating,.&c->float_link);...!....w
9fe0 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 l_list_init(&c->tiled_link);...4
a000 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 ....swc_window_set_handler(win,.
a020 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f &window_handler,.c);........swc_
a040 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 window_set_stacked(win);......}.
a060 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d else.{........wl_list_insert(&wm
a080 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 .tiled,.&c->tiled_link);...!....
a0a0 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 wl_list_init(&c->float_link);...
a0c0 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 4....swc_window_set_handler(win,
a0e0 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 .&window_handler,.c);........swc
a100 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 _window_set_tiled(win);......}..
a120 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 ....swc_window_show(win);......f
a140 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f ocus(c,.true);......tile(wm.sel_
a160 73 63 72 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f screen);.../.._log(stderr,."new_
a180 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d window=%p\n",.(void.*)win);....}
a1a0 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c .......;void.new_device(struct.l
a1c0 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 ibinput_device.*dev).{.(void)dev
a1e0 3b 20 7d 00 00 00 00 00 00 00 10 69 6e 74 20 6d 61 69 6e 28 76 6f 69 64 29 20 7b 00 00 00 0a 20 ;.}........int.main(void).{.....
a200 20 73 65 74 75 70 28 29 3b 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d .setup();......wl_display_run(wm
a220 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d 20 .dpy);......swc_finalize();.....
a240 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 16 .wl_display_destroy(wm.dpy);....
a260 20 20 72 65 74 75 72 6e 20 45 58 49 54 5f 53 55 43 43 45 53 53 3b 00 00 00 01 7d 35 81 f5 18 00 ..return.EXIT_SUCCESS;....}5....
a280 00 00 00 00 00 00 00 00 00 00 00 0c 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a2a0 00 00 00 e1 1b 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 10 00 00 00 12 00 ...................5._..........
a2c0 00 00 00 00 00 00 00 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 03 00 00 00 ................................
a2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6c 13 04 01 00 .........................i.l....
a440 00 00 00 00 f5 18 00 00 01 8e 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 01 8f ................................
a460 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 77 00 00 00 00 00 00 00 00 00 00 00 01 00 00 .................w..............
a480 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 6c 61 73 74 2d 3e 74 69 6c 65 64 f5 ....wl_list_insert(&last->tiled.
a4a0 18 00 00 01 78 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 5c 00 00 00 00 00 00 00 00 00 ....x.................\.........
a4c0 00 00 01 00 00 00 04 20 20 77 6c f5 18 00 00 01 5d 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 .........wl.....]...............
a4e0 00 01 52 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 2e 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 ..R................void.toggle_f
a500 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 loat_global(void.*data,.uint32_t
a520 20 f5 18 00 00 01 53 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 25 00 00 00 00 00 00 00 ......S.................%.......
a540 00 00 00 00 01 00 00 00 1f 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d .............if.(!wm.sel_client-
a560 3e 66 6c 6f 61 74 69 6e f5 18 00 00 01 26 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 e3 >floatin.....&..................
a580 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 27 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 20 ...............'..c->win.=.win;.
a5a0 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b f5 18 00 00 00 e4 00 00 00 c->scr.=.wm.sel_screen;.........
a5c0 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 82 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 33 20 ..............................3.
a5e0 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 .const.char.*sock.=.wl_display_a
a600 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e f5 18 00 00 00 83 00 00 00 00 00 00 00 00 dd_socket_auto(wm...............
a620 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 f5 18 00 00 00 01 ................................
a640 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 00 00 00 00 00 00 ............5...................
a660 00 00 00 00 82 00 00 00 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 ........3.......................
a680 00 00 00 00 f5 18 00 00 00 00 82 00 00 00 33 00 00 00 00 00 00 00 00 00 00 00 61 00 00 00 27 00 ..............3...........a...'.
a6a0 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 00 f5 18 00 00 00 00 ................................
a6c0 e3 00 00 00 27 00 00 00 00 00 00 00 00 00 00 00 42 00 00 00 1f 00 00 00 00 1c 00 00 00 00 00 00 ....'...........B...............
a6e0 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 00 f5 18 00 00 00 00 25 01 00 00 1f 00 00 00 00 00 ......................%.........
a700 00 00 00 00 00 00 2d 00 00 00 2e 00 00 00 00 28 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 ......-........(................
a720 00 00 00 00 00 00 f5 18 00 00 00 00 52 01 00 00 2e 00 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 ............R...................
a740 04 00 00 00 00 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 f5 18 00 00 ...../..........................
a760 00 00 5c 01 00 00 04 00 00 00 00 00 00 00 00 00 00 00 1b 00 00 00 1d 00 00 00 00 30 00 00 00 00 ..\........................0....
a780 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 f5 18 00 00 00 00 77 01 00 00 1d 00 00 00 ........................w.......
a7a0 00 00 00 00 00 00 00 00 17 00 00 00 00 00 00 00 00 34 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .................4..............
a7c0 4e 03 00 00 00 00 00 00 35 81 5f d0 00 00 00 11 00 00 00 13 00 00 00 00 00 00 00 00 00 00 00 12 N.......5._.....................
a7e0 00 00 01 8f 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 ................................
a800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6c 14 04 01 00 00 00 00 00 f5 18 00 00 01 8e 00 ..............i.l...............
a960 00 01 8f 00 00 00 00 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 8e 01 00 00 00 00 00 00 01 ...............5................
a980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4e 37 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 ...............N7...............
a9a0 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 12 00 00 00 14 00 00 00 00 00 00 00 00 00 00 00 13 00 .......5._......................
a9c0 00 01 8e 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 ................................
a9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aa00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aa20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aa40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aa60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aa80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aaa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ab00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ab20 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6c 15 04 01 00 00 00 09 00 f5 18 00 00 00 21 00 00 .............i.l.............!..
ab40 02 22 00 00 01 8e 00 00 01 6a 00 00 00 54 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f .".......j...Tvoid.toggle_float_
ab60 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 global(void.*data,.uint32_t.time
ab80 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 ,.uint32_t.value,.uint32_t.state
aba0 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 );...Lvoid.master_next(void.*dat
abc0 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
abe0 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 ,.uint32_t.state);...Lvoid.maste
ac00 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 r_prev(void.*data,.uint32_t.time
ac20 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 ,.uint32_t.value,.uint32_t.state
ac40 29 3b 00 00 00 4e 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 );...Nvoid.master_resize(void.*d
ac60 61 74 61 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 76 61 6c ata,.uint32_t.time,.uint32_t.val
ac80 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 2c 73 74 72 75 ue,.uint32_t.state);.......,stru
aca0 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e ct.swc_window_handler.window_han
acc0 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 dler.=.{.........destroy.=.on_wi
ace0 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f n_destroy,.........entered.=.on_
ad00 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 win_entered,....};.......,struct
ad20 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c .swc_screen_handler.screen_handl
ad40 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 er.=.{...!.....destroy.=.on_scre
ad60 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 en_destroy,...A.....usable_geome
ad80 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 try_changed.=.on_screen_usable_g
ada0 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 21 73 74 eometry_changed,....};.......!st
adc0 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 atic.uint32_t.master_width.=.0;.
ade0 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 ...struct.wm.wm;.......$const.st
ae00 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d ruct.swc_manager.manager.=.{....
ae20 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 .....new_screen.=.new_screen,...
ae40 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 ......new_window.=.new_window,..
ae60 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 .......new_device.=.new_device,.
ae80 00 00 02 7d 3b 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 ...};.......1static.void.focus(s
aea0 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 truct.client.*c,.bool.raise).{..
aec0 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 57 20 20 20 20 73 77 ....if.(wm.sel_client)...W....sw
aee0 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e c_window_set_border(wm.sel_clien
af00 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 t->win,.cfg.border_col_normal,.c
af20 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 fg.border_width);......if.(c)...
af40 4b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 K....swc_window_set_border(c->wi
af60 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f n,.cfg.border_col_active,.cfg.bo
af80 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 rder_width);......if.(raise.&&.c
afa0 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 .&&.c->floating)........set_floa
afc0 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 ting(c,.true,.true);...&..swc_wi
afe0 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 ndow_focus(c.?.c->win.:.NULL);..
b000 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 ....wm.sel_client.=.c;....}.....
b020 00 00 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 ..+static.void.on_screen_destroy
b040 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 (void.*data).{......struct.scree
b060 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 11 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e n.*s.=.data;......if.(!s).return
b080 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b ;......wl_list_remove(&s->link);
b0a0 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b 00 ......if.(wm.sel_screen.==.s).{.
b0c0 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 ..#....if.(wl_list_empty(&wm.scr
b0e0 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 eens))..........wm.sel_screen.=.
b100 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 20 20 77 6d 2e 73 65 NULL;........else...L......wm.se
b120 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 l_screen.=.wl_container_of(wm.sc
b140 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b 29 reens.next,.wm.sel_screen,.link)
b160 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 ;......}......free(s);....}.....
b180 00 00 3b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f ..;static.void.on_screen_usable_
b1a0 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 geometry_changed(void.*data).{..
b1c0 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 0a ....struct.screen.*s.=.data;....
b1e0 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f ..tile(s);....}.......(static.vo
b200 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 id.on_win_destroy(void.*data).{.
b220 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 .....struct.client.*c.=.data;...
b240 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 00 11 20 20 69 66 20 ...struct.client.*next;......if.
b260 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 29 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 (!c).return;...)..if.(wm.grab.ac
b280 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 tive.&&.wm.grab.c.==.c).{.......
b2a0 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 .wm.grab.active.=.false;........
b2c0 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 wm.grab.c.=.NULL;......}......if
b2e0 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 .(c->floating)...#....wl_list_re
b300 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 move(&c->float_link);......else.
b320 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f ..#....wl_list_remove(&c->tiled_
b340 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d link);......if.(wm.sel_client.==
b360 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c .c).{........wm.sel_client.=.NUL
b380 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e L;........next.=.first_float(c->
b3a0 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 scr);........if.(!next)...!.....
b3c0 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 .next.=.first_tiled(c->scr);....
b3e0 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 ....focus(next,.true);......}...
b400 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 ...tile(c->scr);......free(c);..
b420 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e ..}.......(static.void.on_win_en
b440 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1d 20 20 69 66 20 28 77 6d 2e tered(void.*data).{......if.(wm.
b460 67 72 61 62 2e 61 63 74 69 76 65 29 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 grab.active).return;......struct
b480 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c .client.*c.=.data;......focus(c,
b4a0 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 .true);....}........static.void.
b4c0 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 setup(void).{......wm.dpy.=.wl_d
b4e0 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 3d 20 20 69 66 20 28 21 77 6d 2e 64 70 isplay_create();...=..if.(!wm.dp
b500 79 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 y).die(EXIT_FAILURE,."wl_display
b520 5f 63 72 65 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 _create.failed");......wl_list_i
b540 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 nit(&wm.screens);......wl_list_i
b560 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 nit(&wm.tiled);......wl_list_ini
b580 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 t(&wm.floating);......wm.sel_cli
b5a0 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d ent.=.NULL;......wm.sel_screen.=
b5c0 20 4e 55 4c 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c .NULL;......wm.grab.active.=.fal
b5e0 73 65 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b se;......wm.grab.resize.=.false;
b600 00 00 00 13 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e ......wm.grab.c.=.NULL;...1..wm.
b620 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c ev_loop.=.wl_display_get_event_l
b640 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 oop(wm.dpy);...4..if.(!swc_initi
b660 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 alize(wm.dpy,.wm.ev_loop,.&manag
b680 65 72 29 29 00 00 00 31 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 er))...1....die(EXIT_FAILURE,."s
b6a0 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 10 20 20 73 wc_initialize.failed\n");......s
b6c0 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 etup_binds();...8..const.char.*s
b6e0 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f ock.=.wl_display_add_socket_auto
b700 28 77 6d 2e 64 70 79 29 3b 00 00 00 46 20 20 69 66 20 28 21 73 6f 63 6b 29 20 64 69 65 28 45 58 (wm.dpy);...F..if.(!sock).die(EX
b720 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b IT_FAILURE,."wl_display_add_sock
b740 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 25 20 20 73 65 74 65 6e 76 28 et_auto.failed\n");...%..setenv(
b760 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2d "WAYLAND_DISPLAY",.sock,.1);...-
b780 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d .._log(stderr,."WAYLAND_DISPLAY=
b7a0 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 %s\n",.sock);......signal(SIGINT
b7c0 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 ,.sig_handler);......signal(SIGT
b7e0 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 ERM,.sig_handler);......signal(S
b800 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 IGQUIT,.sig_handler);....}......
b820 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 ..static.void.setup_binds(void).
b840 7b 00 00 00 2e 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 4c 45 {......for.(size_t.i.=.0;.i.<.LE
b860 4e 47 54 48 28 62 69 6e 64 73 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 NGTH(binds);.i++).{...%....const
b880 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 .struct.bind.*b.=.&binds[i];...G
b8a0 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e ....swc_add_binding(b->type,.b->
b8c0 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 mods,.b->ksym,.b->fn,.(void.*)&b
b8e0 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 ->arg);......}....}.......Gstati
b900 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e c.void.set_floating(struct.clien
b920 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 t.*c,.bool.floating,.bool.raise)
b940 20 7b 00 00 00 11 20 20 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 11 20 20 69 66 20 .{......if.(!c).return;......if.
b960 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 (floating).{........if.(!c->floa
b980 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 74 ting).{..........c->floating.=.t
b9a0 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d rue;...%......wl_list_remove(&c-
b9c0 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 >tiled_link);...3......wl_list_i
b9e0 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 nsert(&wm.floating,.&c->float_li
ba00 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 nk);........}.else.if.(raise).{.
ba20 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 ..%......wl_list_remove(&c->floa
ba40 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 t_link);...3......wl_list_insert
ba60 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 (&wm.floating,.&c->float_link);.
ba80 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 .......}...#....swc_window_set_s
baa0 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 tacked(c->win);......}.else.{...
bac0 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 1a 20 20 20 20 20 .....if.(c->floating).{.........
bae0 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 20 20 20 20 20 77 .c->floating.=.false;...%......w
bb00 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 l_list_remove(&c->float_link);..
bb20 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 .0......wl_list_insert(&wm.tiled
bb40 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 21 20 ,.&c->tiled_link);........}...!.
bb60 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b ...swc_window_set_tiled(c->win);
bb80 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 ......}....}.......$static.void.
bba0 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 13 20 20 73 74 tile(struct.screen.*s).{......st
bbc0 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 74 72 75 63 74 20 73 77 63 5f ruct.client.*c;......struct.swc_
bbe0 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 73 74 72 75 63 74 20 73 77 63 5f rectangle.geom;...!..struct.swc_
bc00 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 00 00 31 20 20 69 6e 74 33 32 5f rectangle.*scr_geom;...1..int32_
bc20 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 t.out_gaps.=.cfg.gaps.+.cfg.bord
bc40 65 72 5f 77 69 64 74 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d er_width;...6..int32_t.in_gaps.=
bc60 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 .cfg.gaps.+.(cfg.border_width.*.
bc80 32 29 3b 00 00 00 0f 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 10 20 20 75 69 6e 74 2);......int32_t.x,.y;......uint
bca0 33 32 5f 74 20 77 2c 20 68 3b 00 00 00 11 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e 3b 00 32_t.w,.h;......if.(!s).return;.
bcc0 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f ..&..scr_geom.=.&s->scr->usable_
bce0 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 geometry;......size_t.n.=.0;...E
bd00 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c ..wl_list_for_each(c,.&wm.tiled,
bd20 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 .tiled_link).if.(is_tiled(c,.s))
bd40 20 6e 2b 2b 3b 00 00 00 15 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 20 72 65 74 75 72 6e 3b 00 00 .n++;......if.(n.==.0).return;..
bd60 00 1d 20 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 ....x.=.scr_geom->x.+.out_gaps;.
bd80 00 00 1d 20 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b .....y.=.scr_geom->y.+.out_gaps;
bda0 00 00 00 27 20 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 28 6f 75 74 ...'..w.=.scr_geom->width.-.(out
bdc0 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 28 20 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 _gaps.*.2);...(..h.=.scr_geom->h
bde0 65 69 67 68 74 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 66 20 eight.-.(out_gaps.*.2);......if.
be00 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 (n.==.1).{...0....wl_list_for_ea
be20 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 ch(c,.&wm.tiled,.tiled_link).{..
be40 00 24 20 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e .$......if.(!is_tiled(c,.s)).con
be60 74 69 6e 75 65 3b 00 00 00 3e 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 20 67 65 6f 6d tinue;...>......geom.x.=.x;.geom
be80 2e 79 20 3d 20 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 20 67 65 6f 6d 2e 68 65 69 .y.=.y;.geom.width.=.w;.geom.hei
bea0 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 ght.=.h;...-......swc_window_set
bec0 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 _geometry(c->win,.&geom);.......
bee0 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 ...return;........}......}......
bf00 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 size_t.i.=.0;......wl_list_for_e
bf20 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 ach(c,.&wm.tiled,.tiled_link).{.
bf40 00 00 22 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 .."....if.(!is_tiled(c,.s)).cont
bf60 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d inue;........if.(master_width.==
bf80 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 28 77 20 .0)...>......master_width.=.((w.
bfa0 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 68 29 20 2f -.in_gaps).*.cfg.master_width)./
bfc0 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 49 20 20 .100;........if.(i.==.0).{...I..
bfe0 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 20 67 65 6f 6d ....geom.x.=.x;.geom.y.=.y;.geom
c000 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 20 67 65 6f 6d 2e 68 65 69 67 .width.=.master_width;.geom.heig
c020 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 20 20 ht.=.h;........}.else.{.........
c040 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 20 20 .uint32_t.stackn.=.n.-.1;.......
c060 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 20 20 ...uint32_t.idx.=.i.-.1;...D....
c080 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 ..uint32_t.stack_height.=.(h.-.i
c0a0 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b n_gaps.*.(stackn.-.1))./.stackn;
c0c0 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 ...*......geom.x.=.x.+.master_wi
c0e0 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 34 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d dth.+.in_gaps;...4......geom.y.=
c100 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e 5f 67 .y.+.(idx.*.(stack_height.+.in_g
c120 61 70 73 29 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 20 2d aps));..........geom.width.=.w.-
c140 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 20 20 .master_width.-.in_gaps;...!....
c160 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 ..geom.height.=.stack_height;...
c180 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f .....}...+....swc_window_set_geo
c1a0 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 2b 2b metry(c->win,.&geom);........i++
c1c0 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 ;......}....}.......)void.new_sc
c1e0 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 reen(struct.swc_screen.*scr).{..
c200 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 .(..struct.screen.*s.=.malloc(si
c220 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 38 20 20 69 66 20 28 21 73 29 20 64 69 65 28 45 58 49 54 zeof(*s));...8..if.(!s).die(EXIT
c240 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f 63 20 66 61 69 _FAILURE,."new.screen.malloc.fai
c260 6c 65 64 22 29 3b 00 00 00 37 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 20 73 2d 3e 78 20 3d led");...7..s->scr.=.scr;.s->x.=
c280 20 30 3b 20 73 2d 3e 79 20 3d 20 30 3b 20 73 2d 3e 77 20 3d 20 30 3b 20 73 2d 3e 68 20 3d 20 30 .0;.s->y.=.0;.s->w.=.0;.s->h.=.0
c2a0 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e ;...(..wl_list_insert(&wm.screen
c2c0 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 28 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 s,.&s->link);...(..if.(!wm.sel_s
c2e0 63 72 65 65 6e 29 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 creen).wm.sel_screen.=.s;...2..s
c300 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 wc_screen_set_handler(scr,.&scre
c320 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 en_handler,.s);.../.._log(stderr
c340 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 73 63 72 ,."new_screen=%p\n",.(void.*)scr
c360 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 );....}.......)void.new_window(s
c380 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 truct.swc_window.*win).{...(..st
c3a0 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a ruct.client.*c.=.malloc(sizeof(*
c3c0 63 29 29 3b 00 00 00 34 20 20 69 66 20 28 21 63 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 c));...4..if.(!c).die(EXIT_FAILU
c3e0 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 3a RE,."malloc.client.failed");...:
c400 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f ..c->win.=.win;.c->scr.=.wm.sel_
c420 73 63 72 65 65 6e 3b 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 00 49 20 20 screen;.c->mapped.=.false;...I..
c440 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 c->floating.=.wm.global_floating
c460 3b 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 3b 20 63 2d 3e 77 73 20 3d ;.c->fullscreen.=.false;.c->ws.=
c480 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 .false;......if.(c->floating).{.
c4a0 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 ..1....wl_list_insert(&wm.floati
c4c0 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c ng,.&c->float_link);...!....wl_l
c4e0 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 ist_init(&c->tiled_link);...4...
c500 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 .swc_window_set_handler(win,.&wi
c520 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e ndow_handler,.c);........swc_win
c540 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 dow_set_stacked(win);......}.els
c560 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 e.{........wl_list_insert(&wm.ti
c580 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f led,.&c->tiled_link);...!....wl_
c5a0 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 list_init(&c->float_link);...4..
c5c0 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 ..swc_window_set_handler(win,.&w
c5e0 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 indow_handler,.c);........swc_wi
c600 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 ndow_set_tiled(win);......}.....
c620 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 .swc_window_show(win);......focu
c640 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 s(c,.true);......tile(wm.sel_scr
c660 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e een);.../.._log(stderr,."new_win
c680 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 dow=%p\n",.(void.*)win);....}...
c6a0 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 ....;void.new_device(struct.libi
c6c0 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d nput_device.*dev).{.(void)dev;.}
c6e0 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 .......Lvoid.focus_next(void.*da
c700 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
c720 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 26 20 20 28 76 6f 69 64 29 e,.uint32_t.state).{...&..(void)
c740 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 data;.(void)time;.(void)value;..
c760 00 25 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 20 73 74 72 75 63 74 20 73 63 72 .%..struct.client.*c;.struct.scr
c780 65 65 6e 20 2a 73 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 een.*s;...5..if.(state.!=.WL_KEY
c7a0 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b BOARD_KEY_STATE_PRESSED).return;
c7c0 00 00 00 1d 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e ......if.(!wm.sel_screen).return
c7e0 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 62 20 20 69 ;......s.=.wm.sel_screen;...b..i
c800 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 20 63 20 3d 20 66 69 72 73 74 5f 66 f.(!wm.sel_client).{.c.=.first_f
c820 6c 6f 61 74 28 73 29 3b 20 69 66 20 28 21 63 29 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 loat(s);.if.(!c).c.=.first_tiled
c840 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 20 7d 00 (s);.focus(c,.false);.return;.}.
c860 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 .....if.(wm.sel_client->floating
c880 29 20 7b 00 00 00 a4 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 ).{........for.(c.=.wl_container
c8a0 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 _of(wm.sel_client->float_link.ne
c8c0 78 74 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 xt,.c,.float_link);.&c->float_li
c8e0 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 nk.!=.&wm.floating;.c.=.wl_conta
c900 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 66 iner_of(c->float_link.next,.c,.f
c920 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 36 20 20 20 20 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 loat_link))...6......if.(is_floa
c940 74 28 63 2c 20 73 29 29 20 7b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 65 74 75 t(c,.s)).{.focus(c,.false);.retu
c960 72 6e 3b 20 7d 00 00 00 53 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b rn;.}...S....c.=.first_tiled(s);
c980 20 69 66 20 28 21 63 29 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 20 .if.(!c).c.=.first_float(s);.if.
c9a0 28 63 29 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 00 00 00 03 (c).focus(c,.false);.return;....
c9c0 20 20 7d 00 00 00 9f 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f ..}......for.(c.=.wl_container_o
c9e0 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 f(wm.sel_client->tiled_link.next
ca00 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b ,.c,.tiled_link);.&c->tiled_link
ca20 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f .!=.&wm.tiled;.c.=.wl_container_
ca40 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 74 69 6c 65 64 5f of(c->tiled_link.next,.c,.tiled_
ca60 6c 69 6e 6b 29 29 00 00 00 34 20 20 20 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 link))...4....if.(is_tiled(c,.s)
ca80 29 20 7b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 20 7d 00 00 ).{.focus(c,.false);.return;.}..
caa0 00 42 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 20 28 21 63 29 20 .B..c.=.first_float(s);.if.(!c).
cac0 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c c.=.first_tiled(s);.focus(c,.fal
cae0 73 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 se);....}.......Lvoid.focus_prev
cb00 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 (void.*data,.uint32_t.time,.uint
cb20 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 32_t.value,.uint32_t.state).{...
cb40 26 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 &..(void)data;.(void)time;.(void
cb60 29 76 61 6c 75 65 3b 00 00 00 25 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 20 73 )value;...%..struct.client.*c;.s
cb80 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 truct.screen.*s;...5..if.(state.
cba0 21 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 44 !=.WL_KEYBOARD_KEY_STATE_PRESSED
cbc0 29 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 ).return;......if.(!wm.sel_scree
cbe0 6e 29 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 n).return;......s.=.wm.sel_scree
cc00 6e 3b 00 00 00 62 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 20 63 20 n;...b..if.(!wm.sel_client).{.c.
cc20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 20 28 21 63 29 20 63 20 3d 20 66 69 =.first_float(s);.if.(!c).c.=.fi
cc40 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 rst_tiled(s);.focus(c,.false);.r
cc60 65 74 75 72 6e 3b 20 7d 00 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d eturn;.}......if.(wm.sel_client-
cc80 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 a4 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f >floating).{........for.(c.=.wl_
cca0 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 container_of(wm.sel_client->floa
ccc0 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 26 63 2d t_link.prev,.c,.float_link);.&c-
cce0 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 20 63 20 3d >float_link.!=.&wm.floating;.c.=
cd00 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 .wl_container_of(c->float_link.p
cd20 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 36 20 20 20 20 20 20 69 66 rev,.c,.float_link))...6......if
cd40 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 73 29 29 20 7b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c .(is_float(c,.s)).{.focus(c,.fal
cd60 73 65 29 3b 20 72 65 74 75 72 6e 3b 20 7d 00 00 00 51 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 se);.return;.}...Q....c.=.last_t
cd80 69 6c 65 64 28 73 29 3b 20 69 66 20 28 21 63 29 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 iled(s);.if.(!c).c.=.last_float(
cda0 73 29 3b 20 69 66 20 28 63 29 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 65 74 75 s);.if.(c).focus(c,.false);.retu
cdc0 72 6e 3b 00 00 00 03 20 20 7d 00 00 00 9f 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 rn;......}......for.(c.=.wl_cont
cde0 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 ainer_of(wm.sel_client->tiled_li
ce00 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 26 63 2d 3e 74 69 6c nk.prev,.c,.tiled_link);.&c->til
ce20 65 64 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 20 63 20 3d 20 77 6c 5f 63 6f 6e ed_link.!=.&wm.tiled;.c.=.wl_con
ce40 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 63 2c tainer_of(c->tiled_link.prev,.c,
ce60 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 34 20 20 20 20 69 66 20 28 69 73 5f 74 69 6c 65 .tiled_link))...4....if.(is_tile
ce80 64 28 63 2c 20 73 29 29 20 7b 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 20 72 65 74 75 d(c,.s)).{.focus(c,.false);.retu
cea0 72 6e 3b 20 7d 00 00 00 40 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 rn;.}...@..c.=.last_float(s);.if
cec0 20 28 21 63 29 20 63 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 .(!c).c.=.last_tiled(s);.focus(c
cee0 2c 20 66 61 6c 73 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4a 76 6f 69 64 20 6b 69 6c 6c 5f ,.false);....}.......Jvoid.kill_
cf00 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 sel(void.*data,.uint32_t.time,.u
cf20 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b int32_t.value,.uint32_t.state).{
cf40 00 00 00 26 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 ...&..(void)data;.(void)time;.(v
cf60 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f oid)value;...5..if.(state.!=.WL_
cf80 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 44 29 20 72 65 74 75 KEYBOARD_KEY_STATE_PRESSED).retu
cfa0 72 6e 3b 00 00 00 1d 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 rn;......if.(!wm.sel_client).ret
cfc0 75 72 6e 3b 00 00 00 27 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 urn;...'..swc_window_close(wm.se
cfe0 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 l_client->win);....}.......Lvoid
d000 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 .mouse_move(void.*data,.uint32_t
d020 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 .time,.uint32_t.value,.uint32_t.
d040 73 74 61 74 65 29 20 7b 00 00 00 26 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 state).{...&..(void)data;.(void)
d060 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 time;.(void)value;...1..if.(stat
d080 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 50 52 45 e.==.WL_POINTER_BUTTON_STATE_PRE
d0a0 53 53 45 44 29 20 7b 00 00 00 1f 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e SSED).{........if.(!wm.sel_clien
d0c0 74 29 20 72 65 74 75 72 6e 3b 00 00 00 69 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c t).return;...i....if.(!wm.sel_cl
d0e0 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 ient->floating).{.set_floating(w
d100 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 29 3b 20 74 69 6c 65 m.sel_client,.true,.false);.tile
d120 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 20 7d 00 00 00 4d 20 20 20 20 77 (wm.sel_client->scr);.}...M....w
d140 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 72 65 m.grab.active.=.true;.wm.grab.re
d160 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 77 6d 2e 73 65 6c size.=.false;.wm.grab.c.=.wm.sel
d180 5f 63 6c 69 65 6e 74 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e _client;...*....swc_window_begin
d1a0 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c _move(wm.grab.c->win);......}.el
d1c0 73 65 20 7b 00 00 00 40 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 se.{...@....if.(!wm.grab.active.
d1e0 7c 7c 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 ||.wm.grab.resize.||.!wm.grab.c)
d200 20 72 65 74 75 72 6e 3b 00 00 00 28 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 6d .return;...(....swc_window_end_m
d220 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 00 00 00 2d 20 20 20 20 77 6d 2e 67 ove(wm.grab.c->win);...-....wm.g
d240 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 rab.active.=.false;.wm.grab.c.=.
d260 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4e 76 6f 69 64 20 6d 6f NULL;......}....}.......Nvoid.mo
d280 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 use_resize(void.*data,.uint32_t.
d2a0 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 time,.uint32_t.value,.uint32_t.s
d2c0 74 61 74 65 29 20 7b 00 00 00 26 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 tate).{...&..(void)data;.(void)t
d2e0 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 65 ime;.(void)value;...1..if.(state
d300 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 50 52 45 53 .==.WL_POINTER_BUTTON_STATE_PRES
d320 53 45 44 29 20 7b 00 00 00 1f 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 SED).{........if.(!wm.sel_client
d340 29 20 72 65 74 75 72 6e 3b 00 00 00 69 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 ).return;...i....if.(!wm.sel_cli
d360 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d ent->floating).{.set_floating(wm
d380 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 74 72 75 65 2c 20 66 61 6c 73 65 29 3b 20 74 69 6c 65 28 .sel_client,.true,.false);.tile(
d3a0 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 20 7d 00 00 00 4c 20 20 20 20 77 6d wm.sel_client->scr);.}...L....wm
d3c0 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 72 65 73 .grab.active.=.true;.wm.grab.res
d3e0 69 7a 65 20 3d 20 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 77 6d 2e 73 65 6c 5f 63 ize.=.true;.wm.grab.c.=.wm.sel_c
d400 6c 69 65 6e 74 3b 00 00 00 5c 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 72 lient;...\....swc_window_begin_r
d420 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 2c 20 53 57 43 5f 57 49 4e 44 4f 57 esize(wm.grab.c->win,.SWC_WINDOW
d440 5f 45 44 47 45 5f 52 49 47 48 54 20 7c 20 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 42 4f _EDGE_RIGHT.|.SWC_WINDOW_EDGE_BO
d460 54 54 4f 4d 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 41 20 20 20 20 69 66 20 28 TTOM);......}.else.{...A....if.(
d480 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 72 65 73 69 !wm.grab.active.||.!wm.grab.resi
d4a0 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 20 72 65 74 75 72 6e 3b 00 00 00 2a 20 20 20 ze.||.!wm.grab.c).return;...*...
d4c0 20 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 .swc_window_end_resize(wm.grab.c
d4e0 2d 3e 77 69 6e 29 3b 00 00 00 2d 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 ->win);...-....wm.grab.active.=.
d500 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 false;.wm.grab.c.=.NULL;......}.
d520 00 00 01 7d 00 00 00 00 00 00 00 46 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 ...}.......Fvoid.quit(void.*data
d540 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 76 61 6c 75 65 2c ,.uint32_t.time,.uint32_t.value,
d560 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 33 20 20 28 76 6f 69 64 29 64 61 .uint32_t.state).{...3..(void)da
d580 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 20 28 76 6f ta;.(void)time;.(void)value;.(vo
d5a0 69 64 29 73 74 61 74 65 3b 00 00 00 1f 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e id)state;......wl_display_termin
d5c0 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 47 76 6f 69 64 20 73 70 ate(wm.dpy);....}.......Gvoid.sp
d5e0 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 awn(void.*data,.uint32_t.time,.u
d600 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b int32_t.value,.uint32_t.state).{
d620 00 00 00 16 20 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 20 3d 20 64 61 74 61 3b 00 00 00 29 20 20 ......union.arg.*a.=.data;...)..
d640 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a 63 6d 64 20 3d 20 28 63 68 61 72 20 2a 63 6f 6e 73 74 20 char.*const.*cmd.=.(char.*const.
d660 2a 29 61 2d 3e 76 3b 00 00 00 1a 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 *)a->v;......(void)time;.(void)v
d680 61 6c 75 65 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f alue;...5..if.(state.!=.WL_KEYBO
d6a0 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 ARD_KEY_STATE_PRESSED).return;..
d6c0 00 37 20 20 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 7b 20 65 78 65 63 76 70 28 63 6d .7..if.(fork().==.0).{.execvp(cm
d6e0 64 5b 30 5d 2c 20 63 6d 64 29 3b 20 5f 65 78 69 74 28 31 32 37 29 3b 20 7d 00 00 00 01 7d 00 00 d[0],.cmd);._exit(127);.}....}..
d700 00 00 00 00 00 4e 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 .....Nvoid.toggle_float(void.*da
d720 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
d740 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 26 20 20 28 76 6f 69 64 29 e,.uint32_t.state).{...&..(void)
d760 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 data;.(void)time;.(void)value;..
d780 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 .5..if.(state.!=.WL_KEYBOARD_KEY
d7a0 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 69 66 20 _STATE_PRESSED).return;......if.
d7c0 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 75 72 6e 3b 00 00 00 3e 20 20 73 65 (!wm.sel_client).return;...>..se
d7e0 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 21 77 6d 2e 73 65 t_floating(wm.sel_client,.!wm.se
d800 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 2c 20 74 72 75 65 29 3b 00 00 00 1b 20 20 l_client->floating,.true);......
d820 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 00 00 00 01 7d 00 00 tile(wm.sel_client->scr);....}..
d840 00 00 00 00 00 55 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 .....Uvoid.toggle_float_global(v
d860 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 oid.*data,.uint32_t.time,.uint32
d880 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 26 20 _t.value,.uint32_t.state).{...&.
d8a0 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 .(void)data;.(void)time;.(void)v
d8c0 61 6c 75 65 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f alue;...5..if.(state.!=.WL_KEYBO
d8e0 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 ARD_KEY_STATE_PRESSED).return;..
d900 00 2b 20 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 20 3d 20 21 77 6d 2e 67 6c 6f .+..wm.global_floating.=.!wm.glo
d920 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 01 7d 00 00 00 00 00 00 00 10 69 6e 74 20 6d 61 bal_floating;....}........int.ma
d940 69 6e 28 76 6f 69 64 29 20 7b 00 00 00 0a 20 20 73 65 74 75 70 28 29 3b 00 00 00 19 20 20 77 6c in(void).{......setup();......wl
d960 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 63 5f 66 _display_run(wm.dpy);......swc_f
d980 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 inalize();......wl_display_destr
d9a0 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 16 20 20 72 65 74 75 72 6e 20 45 58 49 54 5f 53 55 43 oy(wm.dpy);......return.EXIT_SUC
d9c0 43 45 53 53 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 CESS;....}.......Mvoid.master_ne
d9e0 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 xt(void.*data,.uint32_t.time,.ui
da00 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 nt32_t.value,.uint32_t.state).{.
da20 00 00 26 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f ..&..(void)data;.(void)time;.(vo
da40 69 64 29 76 61 6c 75 65 3b 00 00 00 3e 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 66 69 id)value;...>..struct.client.*fi
da60 72 73 74 3b 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6c 61 73 74 3b 20 73 74 72 75 63 74 rst;.struct.client.*last;.struct
da80 20 73 63 72 65 65 6e 20 2a 73 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c .screen.*s;...5..if.(state.!=.WL
daa0 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 44 29 20 72 65 74 _KEYBOARD_KEY_STATE_PRESSED).ret
dac0 75 72 6e 3b 00 00 00 1d 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 urn;......if.(!wm.sel_screen).re
dae0 74 75 72 6e 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 turn;......s.=.wm.sel_screen;...
db00 2f 20 20 66 69 72 73 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 6c 61 73 74 20 /..first.=.first_tiled(s);.last.
db20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 2f 20 20 69 66 20 28 21 66 69 72 73 74 =.last_tiled(s);.../..if.(!first
db40 20 7c 7c 20 21 6c 61 73 74 20 7c 7c 20 66 69 72 73 74 20 3d 3d 20 6c 61 73 74 29 20 72 65 74 75 .||.!last.||.first.==.last).retu
db60 72 6e 3b 00 00 00 24 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 6c 61 73 74 2d 3e 74 rn;...$..wl_list_remove(&last->t
db80 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 3c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 iled_link);...<..wl_list_insert(
dba0 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 26 6c 61 73 74 2d 3e 74 first->tiled_link.prev,.&last->t
dbc0 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1e 20 20 66 6f 63 75 73 28 66 69 72 73 74 5f 74 69 6c iled_link);......focus(first_til
dbe0 65 64 28 73 29 2c 20 74 72 75 65 29 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d ed(s),.true);......tile(s);....}
dc00 00 00 00 00 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 .......Mvoid.master_prev(void.*d
dc20 61 74 61 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 76 61 6c ata,.uint32_t.time,.uint32_t.val
dc40 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 26 20 20 28 76 6f 69 64 ue,.uint32_t.state).{...&..(void
dc60 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 )data;.(void)time;.(void)value;.
dc80 00 00 3e 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 66 69 72 73 74 3b 20 73 74 72 75 63 ..>..struct.client.*first;.struc
dca0 74 20 63 6c 69 65 6e 74 20 2a 6c 61 73 74 3b 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 t.client.*last;.struct.screen.*s
dcc0 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f ;...5..if.(state.!=.WL_KEYBOARD_
dce0 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 KEY_STATE_PRESSED).return;......
dd00 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e 3b 00 00 00 14 20 if.(!wm.sel_screen).return;.....
dd20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 2f 20 20 66 69 72 73 74 20 3d .s.=.wm.sel_screen;.../..first.=
dd40 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 6c 61 73 74 20 3d 20 6c 61 73 74 5f 74 69 6c .first_tiled(s);.last.=.last_til
dd60 65 64 28 73 29 3b 00 00 00 2f 20 20 69 66 20 28 21 66 69 72 73 74 20 7c 7c 20 21 6c 61 73 74 20 ed(s);.../..if.(!first.||.!last.
dd80 7c 7c 20 66 69 72 73 74 20 3d 3d 20 6c 61 73 74 29 20 72 65 74 75 72 6e 3b 00 00 00 25 20 20 77 ||.first.==.last).return;...%..w
dda0 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b l_list_remove(&first->tiled_link
ddc0 29 3b 00 00 00 38 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 6c 61 73 74 2d 3e 74 69 );...8..wl_list_insert(&last->ti
dde0 6c 65 64 5f 6c 69 6e 6b 2c 20 26 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 led_link,.&first->tiled_link);..
de00 00 1e 20 20 66 6f 63 75 73 28 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 2c 20 74 72 75 65 29 3b ....focus(first_tiled(s),.true);
de20 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4f 76 6f 69 64 20 ......tile(s);....}.......Ovoid.
de40 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 master_resize(void.*data,.uint32
de60 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f _t.time,.uint32_t.value,.uint32_
de80 74 20 73 74 61 74 65 29 20 7b 00 00 00 1a 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 t.state).{......(void)time;.(voi
dea0 64 29 76 61 6c 75 65 3b 00 00 00 16 20 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 20 3d 20 64 61 74 d)value;......union.arg.*a.=.dat
dec0 61 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 a;...5..if.(state.!=.WL_KEYBOARD
dee0 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 _KEY_STATE_PRESSED).return;.....
df00 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e 3b 00 00 00 41 .if.(!wm.sel_screen).return;...A
df20 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 67 20 3d 20 26 77 6d 2e ..struct.swc_rectangle.*g.=.&wm.
df40 73 65 6c 5f 73 63 72 65 65 6e 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 sel_screen->scr->usable_geometry
df60 3b 00 00 00 32 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 ;...2..uint32_t.out_gaps.=.cfg.g
df80 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 37 20 20 75 69 6e aps.+.cfg.border_width;...7..uin
dfa0 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e t32_t.in_gaps.=.cfg.gaps.+.(cfg.
dfc0 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 3e 20 20 69 6e 74 33 32 5f 74 20 border_width.*.2);...>..int32_t.
dfe0 74 6f 74 61 6c 20 3d 20 28 69 6e 74 33 32 5f 74 29 67 2d 3e 77 69 64 74 68 20 2d 20 28 69 6e 74 total.=.(int32_t)g->width.-.(int
e000 33 32 5f 74 29 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 1a 20 20 69 6e 74 33 32 5f 32_t)(out_gaps.*.2);......int32_
e020 74 20 6d 69 6e 5f 6d 61 73 74 65 72 20 3d 20 32 30 3b 00 00 00 35 20 20 69 6e 74 33 32 5f 74 20 t.min_master.=.20;...5..int32_t.
e040 6d 61 78 5f 6d 61 73 74 65 72 20 3d 20 74 6f 74 61 6c 20 2d 20 28 69 6e 74 33 32 5f 74 29 69 6e max_master.=.total.-.(int32_t)in
e060 5f 67 61 70 73 20 2d 20 32 30 3b 00 00 00 37 20 20 69 66 20 28 6d 61 78 5f 6d 61 73 74 65 72 20 _gaps.-.20;...7..if.(max_master.
e080 3c 20 6d 69 6e 5f 6d 61 73 74 65 72 29 20 6d 61 78 5f 6d 61 73 74 65 72 20 3d 20 6d 69 6e 5f 6d <.min_master).max_master.=.min_m
e0a0 61 73 74 65 72 3b 00 00 00 2c 20 20 69 6e 74 33 32 5f 74 20 6d 77 20 3d 20 28 69 6e 74 33 32 5f aster;...,..int32_t.mw.=.(int32_
e0c0 74 29 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 61 2d 3e 69 3b 00 00 00 27 20 20 69 66 20 28 t)master_width.+.a->i;...'..if.(
e0e0 6d 77 20 3c 20 6d 69 6e 5f 6d 61 73 74 65 72 29 20 6d 77 20 3d 20 6d 69 6e 5f 6d 61 73 74 65 72 mw.<.min_master).mw.=.min_master
e100 3b 00 00 00 2c 20 20 65 6c 73 65 20 69 66 20 28 6d 77 20 3e 20 6d 61 78 5f 6d 61 73 74 65 72 29 ;...,..else.if.(mw.>.max_master)
e120 20 6d 77 20 3d 20 6d 61 78 5f 6d 61 73 74 65 72 3b 35 81 f5 18 00 00 00 00 21 00 00 00 43 00 00 .mw.=.max_master;5.......!...C..
e140 00 69 01 00 00 1b 00 00 00 ff 01 00 00 03 00 00 00 b0 05 00 00 00 00 00 00 54 31 00 00 00 00 00 .i.......................T1.....
e160 00 12 34 00 00 00 00 00 00 35 81 5f d0 00 00 00 13 00 00 00 15 00 00 00 00 00 00 00 00 00 00 00 ..4......5._....................
e180 14 00 00 00 0c 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 ................................
e1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6e 76 04 01 00 00 00 00 00 f5 18 00 00 00 0c ...............i.nv.............
e300 00 00 00 0e 00 00 02 25 00 00 00 01 00 00 00 00 f5 18 00 00 00 0c 00 00 00 0e 00 00 02 24 00 00 .......%.....................$..
e320 00 00 35 81 f5 18 00 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 ..5.............................
e340 00 00 0b 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 ................................
e360 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 0b 01 00 00 00 00 00 00 ................................
e380 00 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 f5 18 00 00 00 00 0c 00 00 00 09 00 00 00 00 00 ................................
e3a0 00 00 01 00 00 00 00 00 00 00 00 00 00 00 14 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 ................................
e3c0 00 00 00 00 00 00 35 81 5f d0 00 00 00 14 00 00 00 16 00 00 00 00 00 00 00 00 00 00 00 15 00 00 ......5._.......................
e3e0 00 0d 00 00 00 09 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 ................................
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 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e540 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6e 7a 04 01 00 00 00 00 00 f5 18 00 00 00 0c 00 00 00 ............i.nz................
e560 0e 00 00 02 25 00 00 00 01 00 00 00 09 23 69 6e 63 6c 75 64 65 20 35 81 f5 18 00 00 00 00 0c 00 ....%........#include.5.........
e580 00 00 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 14 01 00 00 00 00 00 00 00 00 ................................
e5a0 00 00 00 00 00 00 02 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 15 00 00 00 17 00 00 00 00 00 00 ..............5._...............
e5c0 00 00 00 00 00 16 00 00 00 0d 00 00 00 0a 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 ................................
e5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6e 7a 04 01 00 00 00 00 00 f5 ....................i.nz........
e740 18 00 00 00 0c 00 00 00 0e 00 00 02 25 00 00 00 01 00 00 00 0b 23 69 6e 63 6c 75 64 65 20 22 22 ............%........#include.""
e760 35 81 f5 18 00 00 00 00 0c 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 5...............................
e780 15 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 f5 18 00 00 00 00 0c 00 ................................
e7a0 00 00 0a 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 0a 00 00 00 15 01 00 00 00 00 00 00 03 00 ................................
e7c0 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 f5 18 00 00 00 00 0c 00 00 00 0a 00 00 00 00 00 00 00 ................................
e7e0 0a 00 00 00 00 00 00 00 01 00 00 00 15 01 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 01 00 00 00 ................................
e800 00 00 00 00 f5 18 00 00 00 00 0c 00 00 00 0a 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 0b 00 ................................
e820 00 00 15 01 00 00 00 00 00 00 02 00 00 00 00 00 00 00 0b 00 00 00 00 00 00 00 35 81 5f d0 00 00 ..........................5._...
e840 00 16 00 00 00 18 00 00 00 00 00 00 00 00 00 00 00 17 00 00 00 0d 00 00 00 14 00 00 00 00 ff ff ................................
e860 ff 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 ................................
e880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e9c0 69 95 6e 7c 04 01 00 00 00 0a 00 f5 18 00 00 00 01 00 00 00 0e 00 00 02 25 00 00 00 0c 00 00 00 i.n|....................%.......
e9e0 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 .#include."types.h"....#include.
ea00 22 75 74 69 6c 2e 68 22 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 77 73 78 77 6d 2e 68 22 00 00 "util.h"....#include."wsxwm.h"..
ea20 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 ..#include.<signal.h>....#includ
ea40 65 20 3c 73 74 64 69 6f 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e e.<stdio.h>....#include.<stdlib.
ea60 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 h>....#include.<swc.h>....#inclu
ea80 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 de.<unistd.h>....#include.<wayla
eaa0 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e nd-server.h>....#include.<waylan
eac0 64 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e d-util.h>...(#include.<xkbcommon
eae0 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 63 6c 75 64 /xkbcommon-keysyms.h>....#includ
eb00 65 20 22 6b 65 79 62 69 6e 64 73 2e 68 22 35 81 f5 18 00 00 00 00 01 00 00 00 0a 00 00 00 0b 00 e."keybinds.h"5.................
eb20 00 00 15 00 00 00 0b 00 00 00 28 00 00 00 1e 00 00 00 00 00 00 00 02 01 00 00 00 00 00 00 02 01 ..........(.....................
eb40 00 00 00 00 00 00 35 81 5f d0 00 00 00 17 00 00 00 19 00 00 00 00 00 00 00 00 00 00 00 18 00 00 ......5._.......................
eb60 00 94 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 ................................
eb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ebc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ebe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eca0 00 00 00 00 00 00 00 00 00 00 00 94 00 00 00 0c 00 00 00 00 00 00 00 99 00 00 00 01 00 00 00 00 ................................
ecc0 00 00 00 56 00 00 00 0a 00 00 00 00 69 95 6e 89 04 01 00 00 00 00 00 f5 18 00 00 00 93 00 00 00 ...V........i.n.................
ece0 94 00 00 00 00 00 00 00 06 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 .............static.void.setup_b
ed00 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 2e 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 inds(void).{......for.(size_t.i.
ed20 3d 20 30 3b 20 69 20 3c 20 4c 45 4e 47 54 48 28 62 69 6e 64 73 29 3b 20 69 2b 2b 29 20 7b 00 00 =.0;.i.<.LENGTH(binds);.i++).{..
ed40 00 25 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 .%....const.struct.bind.*b.=.&bi
ed60 6e 64 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 nds[i];...G....swc_add_binding(b
ed80 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c ->type,.b->mods,.b->ksym,.b->fn,
eda0 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 35 81 .(void.*)&b->arg);......}....}5.
edc0 f5 18 00 00 00 00 93 00 00 00 00 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60 11 ..............................`.
ede0 00 00 00 00 00 00 c3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 18 00 00 ......................5._.......
ee00 00 1a 00 00 00 00 00 00 00 00 00 00 00 19 00 00 00 94 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 ................................
ee20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 94 00 00 00 0c ................................
ef60 00 00 00 00 00 00 00 94 00 00 00 01 00 00 00 00 00 00 00 56 00 00 00 0a 00 00 00 00 69 95 6e 8c ...................V........i.n.
ef80 04 01 00 00 00 00 00 f5 18 00 00 00 99 00 00 00 9a 00 00 02 26 00 00 00 01 00 00 00 00 f5 18 00 ....................&...........
efa0 00 00 93 00 00 00 9b 00 00 02 20 00 00 00 01 00 00 00 00 f5 18 00 00 00 94 00 00 00 95 00 00 02 ................................
efc0 20 00 00 00 00 f5 18 00 00 00 93 00 00 00 95 00 00 02 1f 00 00 00 00 35 81 f5 18 00 00 00 00 93 .......................5........
efe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 60 11 00 00 00 00 00 00 00 .......................`........
f000 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 93 00 00 00 00 00 00 00 00 00 00 ................................
f020 00 00 00 00 00 06 00 00 00 00 00 00 00 60 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0 00 00 .............`..................
f040 00 00 00 00 00 f5 18 00 00 00 00 98 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f060 00 00 00 3f 12 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 ...?.......................5._..
f080 00 00 19 00 00 00 1b 00 00 00 00 00 00 00 00 00 00 00 1a 00 00 00 99 00 00 00 00 00 00 00 00 ff ................................
f0a0 ff ff 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 ................................
f0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f1e0 9a 00 00 00 0c 00 00 00 00 00 00 00 9a 00 00 00 01 00 00 00 00 00 00 00 56 00 00 00 0a 00 00 00 ........................V.......
f200 00 69 95 6e 8d 04 01 00 00 00 0b 00 f5 18 00 00 00 94 00 00 00 99 00 00 02 25 00 00 00 04 00 00 .i.n.....................%......
f220 00 41 20 20 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a .A....for.(size_t.i.=.0;.i.<.siz
f240 65 6f 66 28 62 69 6e 64 73 29 2f 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b eof(binds)/sizeof(binds[0]);.i++
f260 29 20 7b 00 00 00 29 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 ).{...)........const.struct.bind
f280 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 4b 20 20 20 20 20 20 20 20 73 77 63 5f .*b.=.&binds[i];...K........swc_
f2a0 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d add_binding(b->type,.b->mods,.b-
f2c0 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 >ksym,.b->fn,.(void.*)&b->arg);.
f2e0 00 00 05 20 20 20 20 7d 35 81 f5 18 00 00 00 00 94 00 00 00 02 00 00 00 03 00 00 00 02 00 00 00 .......}5.......................
f300 03 00 00 00 00 00 00 00 82 11 00 00 00 00 00 00 b8 00 00 00 00 00 00 00 ae 00 00 00 00 00 00 00 ................................
f320 35 81 5f d0 00 00 00 1a 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 1b 00 00 00 05 00 00 00 0a 5._.............................
f340 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 00 00 00 00 ................................
f360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f4a0 00 00 00 00 00 00 69 95 6f 3d 04 01 00 00 00 00 00 f5 18 00 00 00 04 00 00 00 06 00 00 02 25 00 ......i.o=....................%.
f4c0 00 00 01 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 77 73 78 77 6d 2e 68 22 35 81 f5 18 00 00 00 .......#include."wsxwm.h"5......
f4e0 00 04 00 00 00 0a 00 00 00 00 00 00 00 05 00 00 00 00 00 00 00 0a 00 00 00 59 00 00 00 00 00 00 .........................Y......
f500 00 05 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 1b 00 00 00 1e 00 00 00 .................5._............
f520 00 00 00 00 00 00 00 00 1c 00 00 00 05 00 00 00 13 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ................................
f540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 6f 40 04 01 00 00 00 .......................i.o@.....
f6a0 0c 00 f5 18 00 00 00 00 00 00 00 06 00 00 02 25 00 00 00 05 00 00 00 13 23 69 6e 63 6c 75 64 65 ...............%........#include
f6c0 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 15 23 69 6e 63 6c 75 64 65 20 22 6b 65 79 62 69 6e 64 ."config.h"....#include."keybind
f6e0 73 2e 68 22 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 s.h"....#include."types.h"....#i
f700 6e 63 6c 75 64 65 20 22 75 74 69 6c 2e 68 22 00 00 00 17 23 69 6e 63 6c 75 64 65 20 22 63 6f 6d nclude."util.h"....#include."com
f720 70 6f 73 69 74 6f 72 2e 68 22 35 81 f5 18 00 00 00 00 00 00 00 00 0c 00 00 00 04 00 00 00 14 00 positor.h"5.....................
f740 00 00 04 00 00 00 0e 00 00 00 0c 00 00 00 00 00 00 00 57 00 00 00 00 00 00 00 57 00 00 00 00 00 ..................W.......W.....
f760 00 00 35 81 5f d0 00 00 00 1c 00 00 00 1f 00 00 00 1d 00 00 00 00 00 00 00 1e 00 00 00 03 00 00 ..5._...........................
f780 00 0a 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 00 00 ................................
f7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f8e0 00 00 00 00 00 00 00 00 69 95 6f 67 04 01 00 00 00 0d 00 f5 18 00 00 00 02 00 00 00 03 00 00 00 ........i.og....................
f900 00 00 00 00 01 00 00 00 15 23 69 6e 63 6c 75 64 65 20 22 6b 65 79 62 69 6e 64 73 2e 68 22 35 81 .........#include."keybinds.h"5.
f920 f5 18 00 00 00 00 02 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2c 00 ..............................,.
f940 00 00 00 00 00 00 16 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 1e 00 00 ......................5._.......
f960 00 20 00 00 00 00 00 00 00 00 00 00 00 1f 00 00 02 24 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 .................$..............
f980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
f9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fa80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
faa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
fac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 20 ............................i.v.
fae0 04 01 00 00 00 00 00 f5 18 00 00 02 25 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 20 73 74 72 ............%................str
fb00 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e f5 18 00 uct.screen.*s.=.wm.sel_screen...
fb20 00 02 24 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 02 24 00 00 00 00 00 00 00 ..$.....................$.......
fb40 00 00 00 00 00 35 81 f5 18 00 00 00 00 24 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 .....5.......$..................
fb60 00 00 00 00 00 24 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 .....$:.........................
fb80 00 00 00 24 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 24 3a 00 00 00 ...$.......................$:...
fba0 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 25 02 00 00 00 00 00 .........................%......
fbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 06 00 00 00 25 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 .................%:.............
fbe0 00 06 00 00 00 00 00 00 00 f5 18 00 00 00 00 25 02 00 00 04 00 00 00 00 00 00 00 02 00 00 00 00 ...............%................
fc00 00 00 00 14 00 00 00 29 3a 00 00 00 00 00 00 02 00 00 00 00 00 00 00 14 00 00 00 00 00 00 00 f5 .......):.......................
fc20 18 00 00 00 00 25 02 00 00 15 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 0b 00 00 00 3a 3a 00 .....%.......................::.
fc40 00 00 00 00 00 03 00 00 00 00 00 00 00 0b 00 00 00 00 00 00 00 f5 18 00 00 00 00 25 02 00 00 16 ...........................%....
fc60 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 0a 00 00 00 3b 3a 00 00 00 00 00 00 0a 00 00 00 00 ...................;:...........
fc80 00 00 00 0a 00 00 00 00 00 00 00 f5 18 00 00 00 00 25 02 00 00 16 00 00 00 00 00 00 00 0a 00 00 .................%..............
fca0 00 00 00 00 00 01 00 00 00 3b 3a 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 01 00 00 00 00 00 00 .........;:.....................
fcc0 00 f5 18 00 00 00 00 25 02 00 00 16 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 0a 00 00 00 3b .......%.......................;
fce0 3a 00 00 00 00 00 00 01 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 f5 18 00 00 00 00 25 02 00 :............................%..
fd00 00 1f 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 02 00 00 00 44 3a 00 00 00 00 00 00 01 00 00 .....................D:.........
fd20 00 00 00 00 00 02 00 00 00 00 00 00 00 f5 18 00 00 00 00 25 02 00 00 21 00 00 00 00 00 00 00 00 ...................%...!........
fd40 00 00 00 01 00 00 00 00 00 00 00 46 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 ...........F:...................
fd60 00 00 00 f5 18 00 00 00 00 26 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00 .........&......................
fd80 00 47 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00 00 00 00 00 f5 18 00 00 00 00 26 .G:............................&
fda0 02 00 00 04 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 26 00 00 00 4b 3a 00 00 00 00 00 00 01 ...................&...K:.......
fdc0 00 00 00 00 00 00 00 26 00 00 00 00 00 00 00 f5 18 00 00 00 00 26 02 00 00 2a 00 00 00 00 00 00 .......&.............&...*......
fde0 00 00 00 00 00 01 00 00 00 00 00 00 00 71 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 .............q:.................
fe00 00 00 00 00 00 f5 18 00 00 00 00 27 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0f ...........'....................
fe20 00 00 00 72 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 f5 18 00 00 00 ...r:...........................
fe40 00 27 02 00 00 0e 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 1e 00 00 00 80 3a 00 00 00 00 00 .'........................:.....
fe60 00 01 00 00 00 00 00 00 00 1e 00 00 00 00 00 00 00 f5 18 00 00 00 00 27 02 00 00 2b 00 00 00 00 .......................'...+....
fe80 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 9d 3a 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 ................:...............
fea0 00 00 00 00 00 00 00 f5 18 00 00 00 00 27 02 00 00 2c 00 00 00 00 00 00 00 00 00 00 00 01 00 00 .............'...,..............
fec0 00 00 00 00 00 9e 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 ......:.........................
fee0 00 00 00 28 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 9f 3a 00 00 00 ...(........................:...
ff00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 29 02 00 00 00 00 00 .........................)......
ff20 00 00 00 00 00 00 00 00 00 00 00 00 00 19 00 00 00 a0 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 ..................:.............
ff40 00 19 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 1f 00 00 00 21 00 00 00 00 00 00 00 00 00 00 00 .........5._........!...........
ff60 20 00 00 02 2a 00 00 00 19 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ....*...........................
ff80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ffe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
100c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 50 04 01 00 00 00 00 00 f5 18 00 00 02 29 ...............i.vP............)
100e0 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 19 75 69 6e 74 33 32 5f 74 20 2a 70 69 78 65 6c 73 ................uint32_t.*pixels
10100 20 3d 20 6d 61 6c 6c 6f 63 35 81 f5 18 00 00 00 00 29 02 00 00 19 00 00 00 00 00 00 00 00 00 00 .=.malloc5.......)..............
10120 00 00 00 00 00 02 00 00 00 b9 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 ..........:.....................
10140 00 35 81 5f d0 00 00 00 20 00 00 00 22 00 00 00 00 00 00 00 00 00 00 00 21 00 00 02 2a 00 00 00 .5._........"...........!...*...
10160 1a 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 00 00 00 ................................
10180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102c0 00 00 00 00 00 00 00 69 95 76 50 04 01 00 00 00 00 00 f5 18 00 00 02 29 00 00 00 00 00 00 00 00 .......i.vP............)........
102e0 00 00 00 01 00 00 00 1b 75 69 6e 74 33 32 5f 74 20 2a 70 69 78 65 6c 73 20 3d 20 6d 61 6c 6c 6f ........uint32_t.*pixels.=.mallo
10300 63 28 29 35 81 f5 18 00 00 00 00 29 02 00 00 1a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 c()5.......)....................
10320 00 00 00 ba 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00 f5 18 00 00 00 ....:...........................
10340 00 29 02 00 00 1f 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 0e 00 00 00 bf 3a 00 00 00 00 00 .)........................:.....
10360 00 02 00 00 00 00 00 00 00 0e 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 21 00 00 00 23 00 00 00 .................5._....!...#...
10380 00 00 00 00 00 00 00 00 22 00 00 02 2a 00 00 00 2d 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........"...*...-...............
103a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 55 04 01 00 00 00 .......................i.vU.....
10500 00 00 f5 18 00 00 02 29 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 2e 75 69 6e 74 33 32 5f 74 .......)................uint32_t
10520 20 2a 70 69 78 65 6c 73 20 3d 20 6d 61 6c 6c 6f 63 28 77 69 64 74 68 2a 68 65 69 67 68 74 2a 73 .*pixels.=.malloc(width*height*s
10540 69 7a 65 6f 66 29 35 81 f5 18 00 00 00 00 29 02 00 00 2d 00 00 00 00 00 00 00 00 00 00 00 00 00 izeof)5.......)...-.............
10560 00 00 02 00 00 00 cd 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 35 81 .......:......................5.
10580 5f d0 00 00 00 22 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 23 00 00 02 2a 00 00 00 2e 00 00 _...."...$...........#...*......
105a0 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 00 00 00 00 00 00 ................................
105c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10700 00 00 00 00 69 95 76 56 04 01 00 00 00 00 00 f5 18 00 00 02 29 00 00 00 00 00 00 00 00 00 00 00 ....i.vV............)...........
10720 01 00 00 00 30 75 69 6e 74 33 32 5f 74 20 2a 70 69 78 65 6c 73 20 3d 20 6d 61 6c 6c 6f 63 28 77 ....0uint32_t.*pixels.=.malloc(w
10740 69 64 74 68 2a 68 65 69 67 68 74 2a 73 69 7a 65 6f 66 28 29 29 35 81 f5 18 00 00 00 00 29 02 00 idth*height*sizeof())5.......)..
10760 00 2e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 ce 3a 00 00 00 00 00 00 00 00 00 ......................:.........
10780 00 00 00 00 00 02 00 00 00 00 00 00 00 f5 18 00 00 00 00 29 02 00 00 2f 00 00 00 00 00 00 00 01 ...................).../........
107a0 00 00 00 00 00 00 00 06 00 00 00 cf 3a 00 00 00 00 00 00 01 00 00 00 00 00 00 00 06 00 00 00 00 ............:...................
107c0 00 00 00 f5 18 00 00 00 00 29 02 00 00 34 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 02 00 00 .........)...4..................
107e0 00 d4 3a 00 00 00 00 00 00 01 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 ..:......................5._....
10800 23 00 00 00 25 00 00 00 00 00 00 00 00 00 00 00 24 00 00 02 2a 00 00 00 38 00 00 00 00 ff ff ff #...%...........$...*...8.......
10820 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 ................................
10840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 ...............................i
10980 95 76 5c 04 01 00 00 00 00 00 f5 18 00 00 02 29 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 38 .v\............)...............8
109a0 75 69 6e 74 33 32 5f 74 20 2a 70 69 78 65 6c 73 20 3d 20 6d 61 6c 6c 6f 63 28 77 69 64 74 68 2a uint32_t.*pixels.=.malloc(width*
109c0 68 65 69 67 68 74 2a 73 69 7a 65 6f 66 28 75 69 6e 74 33 32 5f 74 29 29 35 81 f5 18 00 00 00 00 height*sizeof(uint32_t))5.......
109e0 29 02 00 00 38 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 d8 3a 00 00 00 00 00 00 )...8....................:......
10a00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 29 02 00 00 39 00 00 00 00 00 ......................)...9.....
10a20 00 00 00 00 00 00 01 00 00 00 00 00 00 00 d9 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 ...............:................
10a40 00 00 00 00 00 00 f5 18 00 00 00 00 2a 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ............*...................
10a60 00 00 00 00 da 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 .....:..........................
10a80 00 00 2b 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 11 00 00 00 db 3a 00 00 00 00 ..+........................:....
10aa0 00 00 00 00 00 00 00 00 00 00 11 00 00 00 00 00 00 00 f5 18 00 00 00 00 2b 02 00 00 11 00 00 00 ........................+.......
10ac0 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ec 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .................:..............
10ae0 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 2c 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..............,.................
10b00 00 00 08 00 00 00 ed 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00 f5 18 .......:........................
10b20 00 00 00 00 2c 02 00 00 07 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 09 00 00 00 f4 3a 00 00 ....,........................:..
10b40 00 00 00 00 01 00 00 00 00 00 00 00 09 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 24 00 00 00 26 ....................5._....$...&
10b60 00 00 00 00 00 00 00 00 00 00 00 25 00 00 02 2d 00 00 00 10 00 00 00 00 ff ff ff ff 00 01 00 00 ...........%...-................
10b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 65 04 01 ..........................i.ve..
10ce0 00 00 00 00 00 f5 18 00 00 02 2c 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 10 77 6c 5f 6c 69 ..........,................wl_li
10d00 73 74 5f 66 6f 72 5f 65 61 63 68 35 81 f5 18 00 00 00 00 2c 02 00 00 10 00 00 00 00 00 00 00 00 st_for_each5.......,............
10d20 00 00 00 00 00 00 00 02 00 00 00 fd 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 ............:...................
10d40 00 00 00 35 81 5f d0 00 00 00 25 00 00 00 27 00 00 00 00 00 00 00 00 00 00 00 26 00 00 02 2d 00 ...5._....%...'...........&...-.
10d60 00 00 11 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 00 ................................
10d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ec0 00 00 00 00 00 00 00 00 00 69 95 76 65 04 01 00 00 00 00 00 f5 18 00 00 02 2c 00 00 00 00 00 00 .........i.ve............,......
10ee0 00 00 00 00 00 01 00 00 00 12 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 29 35 81 f5 18 ..........wl_list_for_each()5...
10f00 00 00 00 00 2c 02 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18 00 00 00 fe 3a 00 00 ....,........................:..
10f20 00 00 00 00 00 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 26 00 00 00 28 ....................5._....&...(
10f40 00 00 00 00 00 00 00 00 00 00 00 27 00 00 02 2d 00 00 00 2a 00 00 00 00 ff ff ff ff 00 01 00 00 ...........'...-...*............
10f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 6c 04 01 ..........................i.vl..
110c0 00 00 00 00 00 f5 18 00 00 02 2c 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 2a 77 6c 5f 6c 69 ..........,...............*wl_li
110e0 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f st_for_each(c,.&wm.tiled,.tiled_
11100 6c 69 6e 6b 29 35 81 f5 18 00 00 00 00 2c 02 00 00 2a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 link)5.......,...*..............
11120 00 01 00 00 00 17 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f ......;......................5._
11140 d0 00 00 00 27 00 00 00 29 00 00 00 00 00 00 00 00 00 00 00 28 00 00 02 2d 00 00 00 2b 00 00 00 ....'...)...........(...-...+...
11160 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 00 00 00 00 00 00 00 ................................
11180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112c0 00 00 00 69 95 76 6c 04 01 00 00 00 00 00 f5 18 00 00 02 2c 00 00 00 00 00 00 00 00 00 00 00 01 ...i.vl............,............
112e0 00 00 00 2b 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 ...+wl_list_for_each(c,.&wm.tile
11300 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 35 81 f5 18 00 00 00 00 2c 02 00 00 2b 00 00 00 00 d,.tiled_link).5.......,...+....
11320 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 18 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 ................;...............
11340 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 28 00 00 00 2a 00 00 00 00 00 00 00 00 00 00 00 29 00 .......5._....(...*...........).
11360 00 02 2d 00 00 00 2c 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 ..-...,.........................
11380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114c0 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 6d 04 01 00 00 00 00 00 f5 18 00 00 02 2c 00 00 .............i.vm............,..
114e0 02 2f 00 00 02 2e 00 00 00 01 00 00 00 2c 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 ./...........,wl_list_for_each(c
11500 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b f5 18 00 00 02 2d ,.&wm.tiled,.tiled_link).{.....-
11520 00 00 02 2f 00 00 00 00 00 00 00 01 00 00 00 01 7d f5 18 00 00 02 2c 00 00 00 00 00 00 00 00 00 .../............}.....,.........
11540 00 00 01 00 00 00 2d 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 ......-wl_list_for_each(c,.&wm.t
11560 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 7d 35 81 f5 18 00 00 00 00 2c 02 00 00 iled,.tiled_link).{}5.......,...
11580 2c 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 19 3b 00 00 00 00 00 00 00 00 00 00 ,....................;..........
115a0 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 2c 02 00 00 2c 00 00 00 00 00 00 00 00 00 ..................,...,.........
115c0 00 00 01 00 00 00 00 00 00 00 19 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 ...........;....................
115e0 00 00 f5 18 00 00 00 00 2d 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 13 00 00 00 ........-.......................
11600 1a 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 13 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 29 .;......................5._....)
11620 00 00 00 2b 00 00 00 00 00 00 00 00 00 00 00 2a 00 00 02 2e 00 00 00 13 00 00 00 00 ff ff ff ff ...+...........*................
11640 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 00 ................................
11660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 ..............................i.
117a0 76 72 04 01 00 00 00 00 00 f5 18 00 00 02 2d 00 00 02 2f 00 00 02 2f 00 00 00 01 00 00 00 13 09 vr............-.../.../.........
117c0 63 6f 70 79 5f 77 69 6e 64 6f 77 5f 70 69 78 65 6c 73 35 81 f5 18 00 00 00 00 2d 02 00 00 13 00 copy_window_pixels5.......-.....
117e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 2d 3b 00 00 00 00 00 00 00 00 00 00 00 00 ..................-;............
11800 00 00 02 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 2a 00 00 00 2c 00 00 00 00 00 00 00 00 00 00 ..........5._....*...,..........
11820 00 2b 00 00 02 2e 00 00 00 14 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 00 00 .+..............................
11840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
118a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
118c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
118e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 72 04 01 00 00 00 00 00 f5 18 00 00 02 ................i.vr............
119a0 2d 00 00 02 2f 00 00 02 2f 00 00 00 01 00 00 00 15 09 63 6f 70 79 5f 77 69 6e 64 6f 77 5f 70 69 -.../.../.........copy_window_pi
119c0 78 65 6c 73 28 29 35 81 f5 18 00 00 00 00 2d 02 00 00 14 00 00 00 00 00 00 00 00 00 00 00 00 00 xels()5.......-.................
119e0 00 00 01 00 00 00 2e 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 .......;........................
11a00 00 00 00 00 2d 02 00 00 14 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 0a 00 00 00 2e 3b 00 00 ....-........................;..
11a20 00 00 00 00 01 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 f5 18 00 00 00 00 2d 02 00 00 1d 00 ..........................-.....
11a40 00 00 00 00 00 00 01 00 00 00 00 00 00 00 08 00 00 00 37 3b 00 00 00 00 00 00 01 00 00 00 00 00 ..................7;............
11a60 00 00 08 00 00 00 00 00 00 00 f5 18 00 00 00 00 2d 02 00 00 24 00 00 00 00 00 00 00 01 00 00 00 ................-...$...........
11a80 00 00 00 00 08 00 00 00 3e 3b 00 00 00 00 00 00 01 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00 ........>;......................
11aa0 35 81 5f d0 00 00 00 2b 00 00 00 2d 00 00 00 00 00 00 00 00 00 00 00 2c 00 00 02 2e 00 00 00 2d 5._....+...-...........,.......-
11ac0 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 00 00 00 00 ................................
11ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c20 00 00 00 00 00 00 69 95 76 7a 04 01 00 00 00 00 00 f5 18 00 00 02 2d 00 00 02 2f 00 00 02 2f 00 ......i.vz............-.../.../.
11c40 00 00 01 00 00 00 2d 09 63 6f 70 79 5f 77 69 6e 64 6f 77 5f 70 69 78 65 6c 73 28 63 2c 20 70 69 ......-.copy_window_pixels(c,.pi
11c60 78 65 6c 73 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 29 35 81 f5 18 00 00 00 00 2d 02 00 00 xels,.width,.height)5.......-...
11c80 2d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 47 3b 00 00 00 00 00 00 00 00 00 00 -...................G;..........
11ca0 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 2c 00 00 00 2e 00 00 00 00 00 00 00 00 ............5._....,............
11cc0 00 00 00 2d 00 00 02 2f 00 00 00 01 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 ...-.../........................
11ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 7c 04 01 00 00 00 00 00 f5 18 00 ..................i.v|..........
11e40 00 02 2f 00 00 02 31 00 00 00 00 00 00 00 01 00 00 00 10 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 ../...1............wl_list_for_e
11e60 61 63 68 f5 18 00 00 02 2e 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 7d 35 81 f5 18 00 00 ach......................}5.....
11e80 00 00 2e 02 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 4a 3b 00 00 00 00 ..........................J;....
11ea0 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 2f 02 00 00 00 00 00 00 ......................../.......
11ec0 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 4b 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................K;..............
11ee0 0b 00 00 00 00 00 00 00 f5 18 00 00 00 00 2f 02 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 00 00 ............../.................
11f00 00 00 10 00 00 00 4b 3b 00 00 00 00 00 00 0b 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 f5 18 ......K;........................
11f20 00 00 00 00 2f 02 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 04 00 00 00 4b 3b 00 00 ..../.......................K;..
11f40 00 00 00 00 10 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 f5 18 00 00 00 00 2f 02 00 00 00 00 ........................../.....
11f60 00 00 00 00 00 00 04 00 00 00 00 00 00 00 12 00 00 00 4b 3b 00 00 00 00 00 00 04 00 00 00 00 00 ..................K;............
11f80 00 00 12 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 2d 00 00 00 2f 00 00 00 00 00 00 00 00 00 00 ..........5._....-.../..........
11fa0 00 2e 00 00 02 30 00 00 00 11 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 00 00 .....0..........................
11fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
120a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
120c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
120e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 81 04 01 00 00 00 00 00 f5 18 00 00 02 ................i.v.............
12120 2f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 12 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 /................wl_list_for_eac
12140 68 28 29 35 81 f5 18 00 00 00 00 2f 02 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 h()5......./....................
12160 00 00 00 5c 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 35 81 5f d0 00 ...\;......................5._..
12180 00 00 2e 00 00 00 30 00 00 00 00 00 00 00 00 00 00 00 2f 00 00 02 30 00 00 00 12 00 00 00 00 ff ......0.........../...0.........
121a0 ff ff 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 ................................
121c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
121e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
122a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
122c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
122e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12300 00 69 95 76 82 04 01 00 00 00 00 00 f5 18 00 00 02 2f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 .i.v............./..............
12320 00 14 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 28 29 29 35 81 f5 18 00 00 00 00 2f 02 ..wl_list_for_each(())5......./.
12340 00 00 11 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 1b 00 00 00 5c 3b 00 00 00 00 00 00 02 00 ......................\;........
12360 00 00 00 00 00 00 1b 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 2f 00 00 00 31 00 00 00 00 00 00 ..............5._..../...1......
12380 00 00 00 00 00 30 00 00 02 30 00 00 00 2d 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .....0...0...-..................
123a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
123c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
123e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
124a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
124c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
124e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 8b 04 01 00 00 00 00 00 f5 ....................i.v.........
12500 18 00 00 02 2f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 2d 77 6c 5f 6c 69 73 74 5f 66 6f 72 ..../...............-wl_list_for
12520 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 66 6c 6f 61 74 5f 6c 69 6e _each(c,.&wm.floating,.float_lin
12540 6b 29 35 81 f5 18 00 00 00 00 2f 02 00 00 2d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 k)5......./...-.................
12560 00 00 78 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 ..x;......................5._...
12580 00 30 00 00 00 32 00 00 00 00 00 00 00 00 00 00 00 31 00 00 02 30 00 00 00 2e 00 00 00 00 ff ff .0...2...........1...0..........
125a0 ff 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 ................................
125c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
125e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
126a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
126c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
126e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12700 69 95 76 8c 04 01 00 00 00 00 00 f5 18 00 00 02 2f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 i.v............./...............
12720 2e 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 66 6c 6f 61 74 69 6e .wl_list_for_each(c,.&wm.floatin
12740 67 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 20 35 81 f5 18 00 00 00 00 2f 02 00 00 2e 00 00 00 00 g,.float_link).5......./........
12760 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 79 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 ...............y;...............
12780 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 31 00 00 00 33 00 00 00 00 00 00 00 00 00 00 00 32 00 .......5._....1...3...........2.
127a0 00 02 30 00 00 00 2f 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 ..0.../.........................
127c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
127e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
128a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
128c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
128e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12900 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 8c 04 01 00 00 00 00 00 f5 18 00 00 02 2f 00 00 .............i.v............./..
12920 00 00 00 00 00 00 00 00 00 01 00 00 00 30 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 .............0wl_list_for_each(c
12940 2c 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 20 7b 7d 35 81 ,.&wm.floating,.float_link).{}5.
12960 f5 18 00 00 00 00 2f 02 00 00 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 7a 3b ....../.../...................z;
12980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 2f 02 00 00 ............................/...
129a0 2f 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 7a 3b 00 00 00 00 00 00 01 00 00 00 /...................z;..........
129c0 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 32 00 00 00 34 00 00 00 00 00 00 00 00 ............5._....2...4........
129e0 00 00 00 33 00 00 02 30 00 00 00 2f 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 ...3...0.../....................
12a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 8c 04 01 00 00 00 00 00 f5 18 00 ..................i.v...........
12b60 00 02 30 00 00 02 32 00 00 02 32 00 00 00 01 00 00 00 13 09 63 6f 70 79 5f 77 69 6e 64 6f 77 5f ..0...2...2.........copy_window_
12b80 70 69 78 65 6c 73 f5 18 00 00 02 2f 00 00 02 32 00 00 02 31 00 00 00 01 00 00 00 2f 77 6c 5f 6c pixels...../...2...1......./wl_l
12ba0 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 66 6c ist_for_each(c,.&wm.floating,.fl
12bc0 6f 61 74 5f 6c 69 6e 6b 29 20 7b f5 18 00 00 02 30 00 00 02 32 00 00 00 00 00 00 00 01 00 00 00 oat_link).{.....0...2...........
12be0 01 7d f5 18 00 00 02 2f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 30 77 6c 5f 6c 69 73 74 5f .}...../...............0wl_list_
12c00 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 66 6c 6f 61 74 5f for_each(c,.&wm.floating,.float_
12c20 6c 69 6e 6b 29 20 7b 7d 35 81 f5 18 00 00 00 00 2f 02 00 00 2f 00 00 00 00 00 00 00 00 00 00 00 link).{}5......./.../...........
12c40 01 00 00 00 00 00 00 00 7a 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ........z;......................
12c60 f5 18 00 00 00 00 2f 02 00 00 2f 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 7a 3b ....../.../...................z;
12c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 30 02 00 00 ............................0...
12ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 7b 3b 00 00 00 00 00 00 00 00 00 00 ....................{;..........
12cc0 00 00 00 00 0b 00 00 00 00 00 00 00 f5 18 00 00 00 00 30 02 00 00 01 00 00 00 00 00 00 00 0a 00 ..................0.............
12ce0 00 00 00 00 00 00 12 00 00 00 7c 3b 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 12 00 00 00 00 00 ..........|;....................
12d00 00 00 f5 18 00 00 00 00 30 02 00 00 01 00 00 00 00 00 00 00 12 00 00 00 00 00 00 00 01 00 00 00 ........0.......................
12d20 7c 3b 00 00 00 00 00 00 12 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 30 02 |;............................0.
12d40 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 12 00 00 00 7c 3b 00 00 00 00 00 00 01 00 ......................|;........
12d60 00 00 00 00 00 00 12 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 33 00 00 00 35 00 00 00 00 00 00 ..............5._....3...5......
12d80 00 00 00 00 00 34 00 00 02 31 00 00 00 13 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .....4...1......................
12da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 90 04 01 00 00 00 00 00 f5 ....................i.v.........
12f00 18 00 00 02 30 00 00 02 32 00 00 02 32 00 00 00 01 00 00 00 13 09 63 6f 70 79 5f 77 69 6e 64 6f ....0...2...2.........copy_windo
12f20 77 5f 70 69 78 65 6c 73 35 81 f5 18 00 00 00 00 30 02 00 00 13 00 00 00 00 00 00 00 00 00 00 00 w_pixels5.......0...............
12f40 00 00 00 00 02 00 00 00 8e 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 .........;......................
12f60 35 81 5f d0 00 00 00 34 00 00 00 36 00 00 00 00 00 00 00 00 00 00 00 35 00 00 02 31 00 00 00 14 5._....4...6...........5...1....
12f80 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 00 00 00 00 ................................
12fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
12fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
130a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
130c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
130e0 00 00 00 00 00 00 69 95 76 91 04 01 00 00 00 00 00 f5 18 00 00 02 30 00 00 02 32 00 00 02 32 00 ......i.v.............0...2...2.
13100 00 00 01 00 00 00 15 09 63 6f 70 79 5f 77 69 6e 64 6f 77 5f 70 69 78 65 6c 73 28 29 35 81 f5 18 ........copy_window_pixels()5...
13120 00 00 00 00 30 02 00 00 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18 00 00 00 8f 3b 00 00 ....0........................;..
13140 00 00 00 00 00 00 00 00 00 00 00 00 18 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 35 00 00 00 37 ....................5._....5...7
13160 00 00 00 00 00 00 00 00 00 00 00 36 00 00 02 31 00 00 00 2d 00 00 00 00 ff ff ff ff 00 01 00 00 ...........6...1...-............
13180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
131a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
131c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
131e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
132a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
132c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 76 9a 04 01 ..........................i.v...
132e0 00 00 00 00 00 f5 18 00 00 02 30 00 00 02 32 00 00 02 32 00 00 00 01 00 00 00 2d 09 63 6f 70 79 ..........0...2...2.......-.copy
13300 5f 77 69 6e 64 6f 77 5f 70 69 78 65 6c 73 28 63 2c 20 70 69 78 65 6c 73 2c 20 77 69 64 74 68 2c _window_pixels(c,.pixels,.width,
13320 20 68 65 69 67 68 74 29 35 81 f5 18 00 00 00 00 30 02 00 00 2d 00 00 00 00 00 00 00 00 00 00 00 .height)5.......0...-...........
13340 00 00 00 00 01 00 00 00 a8 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 .........;......................
13360 35 81 5f d0 00 00 00 36 00 00 00 38 00 00 00 00 00 00 00 00 00 00 00 37 00 00 02 31 00 00 00 2d 5._....6...8...........7...1...-
13380 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 00 00 00 00 ................................
133a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
133c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
133e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
134a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
134c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
134e0 00 00 00 00 00 00 69 95 76 9a 04 01 00 00 00 0f 00 f5 18 00 00 02 29 00 00 02 32 00 00 02 32 00 ......i.v.............)...2...2.
13500 00 00 08 00 00 00 39 75 69 6e 74 33 32 5f 74 20 2a 70 69 78 65 6c 73 20 3d 20 6d 61 6c 6c 6f 63 ......9uint32_t.*pixels.=.malloc
13520 28 77 69 64 74 68 2a 68 65 69 67 68 74 2a 73 69 7a 65 6f 66 28 75 69 6e 74 33 32 5f 74 29 29 3b (width*height*sizeof(uint32_t));
13540 00 00 00 00 00 00 00 11 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 2c 77 6c 5f ........struct.client.*c;...,wl_
13560 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 list_for_each(c,.&wm.tiled,.tile
13580 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 2e 09 63 6f 70 79 5f 77 69 6e 64 6f 77 5f 70 69 78 65 6c 73 d_link).{.....copy_window_pixels
135a0 28 63 2c 20 70 69 78 65 6c 73 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 29 3b 00 00 00 01 7d (c,.pixels,.width,.height);....}
135c0 00 00 00 2f 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 66 6c 6f 61 .../wl_list_for_each(c,.&wm.floa
135e0 74 69 6e 67 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 20 7b 00 00 00 2e 09 63 6f 70 79 5f 77 69 6e ting,.float_link).{.....copy_win
13600 64 6f 77 5f 70 69 78 65 6c 73 28 63 2c 20 70 69 78 65 6c 73 2c 20 77 69 64 74 68 2c 20 68 65 69 dow_pixels(c,.pixels,.width,.hei
13620 67 68 74 29 3b 35 81 f5 18 00 00 00 00 29 02 00 00 1f 00 00 00 07 00 00 00 01 00 00 00 07 00 00 ght);5.......)..................
13640 00 02 00 00 00 bf 3a 00 00 00 00 00 00 bd 00 00 00 00 00 00 00 c3 00 00 00 00 00 00 00 35 81 5f ......:......................5._
13660 d0 00 00 00 37 00 00 00 39 00 00 00 00 00 00 00 00 00 00 00 38 00 00 00 0c 00 00 00 02 00 00 00 ....7...9...........8...........
13680 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 00 00 00 00 00 00 00 ................................
136a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
136c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
136e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
137a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
137c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
137e0 00 00 00 69 95 76 da 04 01 00 00 00 10 00 f5 18 00 00 00 0b 00 00 00 0d 00 00 02 33 00 00 00 02 ...i.v.....................3....
13800 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
13820 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 00 f5 18 00 00 00 0c 00 00 00 0e 00 00 02 33 00 00 n-keysyms.h>.................3..
13840 00 01 00 00 00 00 f5 18 00 00 00 0c 00 00 00 0e 00 00 02 32 00 00 00 00 35 81 f5 18 00 00 00 00 ...................2....5.......
13860 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 10 01 00 00 00 00 00 00 ................................
13880 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 0c 00 00 00 00 00 00 00 00 00 ................................
138a0 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 10 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0a 00 ................................
138c0 00 00 00 00 00 00 f5 18 00 00 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 ................................
138e0 00 00 00 00 10 01 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 ................................
13900 00 00 0b 00 00 00 28 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0f 01 00 00 00 00 ......(.........................
13920 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 38 00 00 00 3a 00 00 ..................5._....8...:..
13940 00 00 00 00 00 00 00 00 00 39 00 00 02 26 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 .........9...&..................
13960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
139a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
139c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
139e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 32 00 00 00 00 00 00 00 00 .......................2........
13aa0 00 00 02 26 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 76 fa 04 01 00 00 ...&...........V........i.v.....
13ac0 00 00 00 f5 18 00 00 02 25 00 00 02 26 00 00 00 00 00 00 00 0d 00 00 00 21 73 74 72 75 63 74 20 ........%...&...........!struct.
13ae0 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 2a 69 6e screen.*s.=.wm.sel_screen;...*in
13b00 74 20 77 69 64 74 68 20 3d 20 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 t.width.=.s->scr->usable_geometr
13b20 79 2e 77 69 64 74 68 3b 00 00 00 2c 69 6e 74 20 68 65 69 67 68 74 20 3d 20 73 2d 3e 73 63 72 2d y.width;...,int.height.=.s->scr-
13b40 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 2e 68 65 69 67 68 74 3b 00 00 00 00 00 00 00 3d >usable_geometry.height;.......=
13b60 75 69 6e 74 33 32 5f 74 20 2a 70 69 78 65 6c 73 20 3d 20 6d 61 6c 6c 6f 63 28 77 69 64 74 68 20 uint32_t.*pixels.=.malloc(width.
13b80 2a 20 68 65 69 67 68 74 20 2a 20 73 69 7a 65 6f 66 28 75 69 6e 74 33 32 5f 74 29 29 3b 00 00 00 *.height.*.sizeof(uint32_t));...
13ba0 00 00 00 00 11 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 2c 77 6c 5f 6c 69 73 .....struct.client.*c;...,wl_lis
13bc0 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c t_for_each(c,.&wm.tiled,.tiled_l
13be0 69 6e 6b 29 20 7b 00 00 00 2f 20 20 63 6f 70 79 5f 77 69 6e 64 6f 77 5f 70 69 78 65 6c 73 28 63 ink).{.../..copy_window_pixels(c
13c00 2c 20 70 69 78 65 6c 73 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 29 3b 00 00 00 01 7d 00 00 ,.pixels,.width,.height);....}..
13c20 00 2f 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 66 6c 6f 61 74 69 ./wl_list_for_each(c,.&wm.floati
13c40 6e 67 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 20 7b 00 00 00 2f 20 20 63 6f 70 79 5f 77 69 6e 64 ng,.float_link).{.../..copy_wind
13c60 6f 77 5f 70 69 78 65 6c 73 28 63 2c 20 70 69 78 65 6c 73 2c 20 77 69 64 74 68 2c 20 68 65 69 67 ow_pixels(c,.pixels,.width,.heig
13c80 68 74 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 25 02 00 00 00 00 00 00 0d 00 00 00 00 00 00 ht);....}5.......%..............
13ca0 00 00 00 00 00 00 00 00 00 25 3a 00 00 00 00 00 00 8d 01 00 00 00 00 00 00 00 00 00 00 00 00 00 .........%:.....................
13cc0 00 35 81 5f d0 00 00 00 39 00 00 00 3b 00 00 00 00 00 00 00 00 00 00 00 3a 00 00 02 25 00 00 00 .5._....9...;...........:...%...
13ce0 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 00 00 00 ................................
13d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13e20 00 00 00 00 00 02 26 00 00 00 00 00 00 00 00 00 00 02 26 00 00 00 00 00 00 00 00 00 00 00 56 00 ......&...........&...........V.
13e40 00 00 00 00 00 00 00 69 95 76 fa 04 01 00 00 00 11 00 f5 18 00 00 02 24 00 00 02 25 00 00 00 00 .......i.v.............$...%....
13e60 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 24 02 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ........5.......$...............
13e80 00 00 00 00 00 00 00 00 24 3a 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........$:......................
13ea0 35 81 5f d0 00 00 00 3a 00 00 00 3c 00 00 00 00 00 00 00 00 00 00 00 3b 00 00 00 01 00 00 00 00 5._....:...<...........;........
13ec0 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 00 00 00 00 ................................
13ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
13fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14020 00 00 00 00 00 00 69 95 7c 23 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 03 00 00 02 25 00 ......i.|#....................%.
14040 00 00 01 00 00 00 00 f5 18 00 00 00 01 00 00 00 03 00 00 02 24 00 00 00 00 35 81 f5 18 00 00 00 ....................$....5......
14060 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 18 00 00 00 00 00 00 ................................
14080 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 01 00 00 00 00 00 00 00 00 ................................
140a0 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0f ................................
140c0 00 00 00 00 00 00 00 f5 18 00 00 00 00 01 00 00 00 09 00 00 00 00 00 00 00 06 00 00 00 00 00 00 ................................
140e0 00 00 00 00 00 21 00 00 00 00 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f .....!.......................5._
14100 d0 00 00 00 3b 00 00 00 3d 00 00 00 00 00 00 00 00 00 00 00 3c 00 00 00 02 00 00 00 09 00 00 00 ....;...=...........<...........
14120 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 00 00 00 00 00 00 00 ................................
14140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
141a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
141c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
141e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14280 00 00 00 69 95 7c 28 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 03 00 00 02 25 00 00 00 01 ...i.|(....................%....
142a0 00 00 00 09 23 69 6e 63 6c 75 64 65 20 35 81 f5 18 00 00 00 00 01 00 00 00 09 00 00 00 00 00 00 ....#include.5..................
142c0 00 00 00 00 00 00 00 00 00 02 00 00 00 21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 .............!..................
142e0 00 00 00 00 00 35 81 5f d0 00 00 00 3c 00 00 00 3e 00 00 00 00 00 00 00 00 00 00 00 3d 00 00 00 .....5._....<...>...........=...
14300 02 00 00 00 0a 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 ................................
14320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
143e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14460 00 00 00 00 00 00 00 00 00 00 00 69 95 7c 28 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 03 ...........i.|(.................
14480 00 00 02 25 00 00 00 01 00 00 00 0b 23 69 6e 63 6c 75 64 65 20 22 22 35 81 f5 18 00 00 00 00 01 ...%........#include.""5........
144a0 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 22 00 00 00 00 00 00 00 00 ......................."........
144c0 00 00 00 00 00 00 00 0b 00 00 00 00 00 00 00 f5 18 00 00 00 00 01 00 00 00 11 00 00 00 00 00 00 ................................
144e0 00 04 00 00 00 00 00 00 00 05 00 00 00 29 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 05 00 00 .............)..................
14500 00 00 00 00 00 35 81 5f d0 00 00 00 3d 00 00 00 3f 00 00 00 00 00 00 00 00 00 00 00 3e 00 00 00 .....5._....=...?...........>...
14520 02 00 00 00 15 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 ................................
14540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
145e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14680 00 00 00 00 00 00 00 00 00 00 00 69 95 7c 2d 04 01 00 00 00 12 00 f5 18 00 00 00 01 00 00 00 04 ...........i.|-.................
146a0 00 00 02 25 00 00 00 02 00 00 00 17 23 69 6e 63 6c 75 64 65 20 22 73 63 72 65 65 6e 73 68 6f 74 ...%........#include."screenshot
146c0 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 35 81 f5 18 00 00 .h"....#include."config.h"5.....
146e0 00 00 01 00 00 00 0a 00 00 00 01 00 00 00 10 00 00 00 01 00 00 00 14 00 00 00 22 00 00 00 00 00 ..........................".....
14700 00 00 1e 00 00 00 00 00 00 00 1e 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 3e 00 00 00 40 00 00 ..................5._....>...@..
14720 00 00 00 00 00 00 00 00 00 3f 00 00 00 0d 00 00 00 27 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 .........?.......'..............
14740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
147e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 7e 8c 04 01 00 00 ........................i.~.....
148a0 00 00 00 f5 18 00 00 00 0d 00 00 00 11 00 00 02 26 00 00 00 01 00 00 00 00 f5 18 00 00 00 0e 00 ................&...............
148c0 00 00 0f 00 00 02 26 00 00 00 00 f5 18 00 00 00 0d 00 00 00 0f 00 00 02 25 00 00 00 00 35 81 f5 ......&.................%....5..
148e0 18 00 00 00 00 0d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 28 01 00 .............................(..
14900 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 0d 00 00 00 00 ................................
14920 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 28 01 00 00 00 00 00 00 00 00 00 00 00 ...................(............
14940 00 00 00 5e 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 3f 00 00 00 41 00 00 00 00 00 00 00 00 00 ...^.......5._....?...A.........
14960 00 00 40 00 00 00 10 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 ..@.............................
14980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
149e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 7e 90 04 01 00 00 00 00 00 f5 18 00 00 .................i.~............
14ae0 00 0f 00 00 00 10 00 00 00 00 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 0f 00 00 00 00 00 ..................5.............
14b00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 86 01 00 00 00 00 00 00 01 00 00 00 00 00 ................................
14b20 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 40 00 00 00 43 00 00 00 00 00 00 00 00 00 00 ..........5._....@...C..........
14b40 00 41 00 00 00 10 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 .A..............................
14b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 7e 91 04 01 00 00 00 14 00 f5 18 00 00 00 ................i.~.............
14cc0 05 00 00 00 10 00 00 02 27 00 00 00 0a 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e 61 ........'........#include.<signa
14ce0 6c 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 00 00 13 23 69 l.h>....#include.<stdio.h>....#i
14d00 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 nclude.<stdlib.h>....#include.<s
14d20 77 63 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 1b wc.h>....#include.<unistd.h>....
14d40 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 #include.<wayland-server.h>....#
14d60 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e 63 include.<wayland-util.h>...(#inc
14d80 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 2d 6b 65 79 73 79 6d lude.<xkbcommon/xkbcommon-keysym
14da0 73 2e 68 3e 00 00 00 2e 23 69 6e 63 6c 75 64 65 20 22 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 s.h>....#include."wlr_screencopy
14dc0 5f 75 6e 73 74 61 62 6c 65 5f 76 31 5f 63 6c 69 65 6e 74 2e 68 22 00 00 00 2e 23 69 6e 63 6c 75 _unstable_v1_client.h"....#inclu
14de0 64 65 20 22 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 75 6e 73 74 61 62 6c 65 5f 76 31 5f 73 de."wlr_screencopy_unstable_v1_s
14e00 65 72 76 65 72 2e 68 22 35 81 f5 18 00 00 00 00 05 00 00 00 09 00 00 00 09 00 00 00 2e 00 00 00 erver.h"5.......................
14e20 09 00 00 00 28 00 00 00 72 00 00 00 00 00 00 00 13 01 00 00 00 00 00 00 13 01 00 00 00 00 00 00 ....(...r.......................
14e40 35 81 5f d0 00 00 00 41 00 00 00 44 00 00 00 42 00 00 00 00 00 00 00 43 00 00 00 36 00 00 00 00 5._....A...D...B.......C...6....
14e60 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 00 00 00 00 ................................
14e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14fc0 00 00 00 00 00 00 69 95 7e e2 04 01 00 00 00 15 00 f5 18 00 00 00 37 00 00 00 38 00 00 02 29 00 ......i.~.............7...8...).
14fe0 00 00 01 00 00 00 00 f5 18 00 00 00 38 00 00 00 39 00 00 02 29 00 00 00 00 f5 18 00 00 00 36 00 ............8...9...).........6.
15000 00 00 39 00 00 02 28 00 00 00 01 00 00 00 00 f5 18 00 00 00 37 00 00 00 38 00 00 02 28 00 00 00 ..9...(.............7...8...(...
15020 00 f5 18 00 00 00 36 00 00 00 38 00 00 02 27 00 00 00 00 35 81 f5 18 00 00 00 00 36 00 00 00 00 ......6...8...'....5.......6....
15040 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 74 08 00 00 00 00 00 00 00 00 00 00 00 ...................t............
15060 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 36 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .................6..............
15080 00 01 00 00 00 00 00 00 00 74 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3e 00 00 00 00 00 00 .........t...............>......
150a0 00 f5 18 00 00 00 00 36 00 00 00 3d 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b1 .......6...=....................
150c0 08 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 43 00 .......................5._....C.
150e0 00 00 45 00 00 00 00 00 00 00 00 00 00 00 44 00 00 00 7d 00 00 00 00 00 00 00 00 ff ff ff ff 00 ..E...........D...}.............
15100 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 00 00 ................................
15120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
151a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
151c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
151e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 95 00 00 00 ................................
15240 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f ........}...........v........i..
15260 00 04 01 00 00 00 00 00 f5 18 00 00 00 7c 00 00 00 7e 00 00 02 28 00 00 00 19 00 00 00 19 73 74 .............|...~...(........st
15280 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 1f 20 20 77 6d 2e atic.void.setup(void).{......wm.
152a0 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 0e 20 20 dpy.=.wl_display_create();......
152c0 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 if.(!wm.dpy)...2....die(EXIT_FAI
152e0 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 66 61 69 6c 65 64 22 LURE,."wl_display_create.failed"
15300 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 );......wl_list_init(&wm.screens
15320 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b );......wl_list_init(&wm.tiled);
15340 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 ......wl_list_init(&wm.floating)
15360 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 17 ;......wm.sel_client.=.NULL;....
15380 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 20 20 77 6d 2e ..wm.sel_screen.=.NULL;......wm.
153a0 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 grab.active.=.false;......wm.gra
153c0 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 20 20 77 6d 2e 67 72 61 62 2e 63 b.resize.=.false;......wm.grab.c
153e0 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 .=.NULL;...1..wm.ev_loop.=.wl_di
15400 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 splay_get_event_loop(wm.dpy);...
15420 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 4..if.(!swc_initialize(wm.dpy,.w
15440 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 00 00 00 31 20 20 20 20 64 69 65 m.ev_loop,.&manager))...1....die
15460 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 (EXIT_FAILURE,."swc_initialize.f
15480 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 10 20 20 73 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 ailed\n");......setup_binds();..
154a0 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 .8..const.char.*sock.=.wl_displa
154c0 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 0c 20 20 y_add_socket_auto(wm.dpy);......
154e0 69 66 20 28 21 73 6f 63 6b 29 00 00 00 3d 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 if.(!sock)...=....die(EXIT_FAILU
15500 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 RE,."wl_display_add_socket_auto.
15520 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 25 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 failed\n");...%..setenv("WAYLAND
15540 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2d 20 20 5f 6c 6f 67 28 73 _DISPLAY",.sock,.1);...-.._log(s
15560 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 tderr,."WAYLAND_DISPLAY=%s\n",.s
15580 6f 63 6b 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 ock);......signal(SIGINT,.sig_ha
155a0 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 ndler);......signal(SIGTERM,.sig
155c0 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 _handler);......signal(SIGQUIT,.
155e0 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 7c 00 00 00 00 00 sig_handler);....}5.......|.....
15600 00 00 18 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 d5 0e 00 00 00 00 00 00 2c 03 00 00 00 00 ..........................,.....
15620 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 44 00 00 00 46 00 00 00 00 00 00 00 00 00 00 ..........5._....D...F..........
15640 00 45 00 00 00 7d 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 .E...}..........................
15660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
156a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
156c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
156e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 ...............}...........}....
157a0 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 02 04 01 00 00 00 00 00 f5 18 00 00 00 .......v........i...............
157c0 a8 00 00 00 a9 00 00 02 3c 00 00 00 01 00 00 00 00 f5 18 00 00 00 a9 00 00 00 aa 00 00 02 3c 00 ........<.....................<.
157e0 00 00 00 f5 18 00 00 00 7c 00 00 00 aa 00 00 02 10 00 00 00 01 00 00 00 00 f5 18 00 00 00 7d 00 ........|.....................}.
15800 00 00 7e 00 00 02 10 00 00 00 00 35 81 f5 18 00 00 00 00 7c 00 00 00 00 00 00 00 00 00 00 00 00 ..~........5.......|............
15820 00 00 00 2c 00 00 00 00 00 00 00 d5 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 05 00 00 00 ...,.......................P....
15840 00 00 00 f5 18 00 00 00 00 a7 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15860 00 24 14 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 .$.......................5._....
15880 45 00 00 00 47 00 00 00 00 00 00 00 00 00 00 00 46 00 00 00 a4 00 00 00 00 00 00 00 00 ff ff ff E...G...........F...............
158a0 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 ................................
158c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
158e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
159a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
159c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 ..............................}.
159e0 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 ..........}...........v........i
15a00 95 7f 04 04 01 00 00 00 00 00 f5 18 00 00 00 a3 00 00 00 a4 00 00 00 00 00 00 00 01 00 00 00 3a ...............................:
15a20 20 20 20 20 2f 2f 20 2d 2d 2d 20 77 6c 72 2d 73 63 72 65 65 6e 63 6f 70 79 2d 75 6e 73 74 61 62 ....//.---.wlr-screencopy-unstab
15a40 6c 65 2d 76 31 20 73 75 70 70 6f 72 74 20 66 6f 72 20 47 72 69 6d 20 2d 2d 2d 35 81 f5 18 00 00 le-v1.support.for.Grim.---5.....
15a60 00 00 a3 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 45 13 00 00 00 00 ..........................E.....
15a80 00 00 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 46 00 00 00 48 00 00 ..;...............5._....F...H..
15aa0 00 00 00 00 00 00 00 00 00 47 00 00 00 9f 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 .........G......................
15ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 .......................}........
15c00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 05 04 01 00 00 ...}...........v........i.......
15c20 00 00 00 f5 18 00 00 00 9e 00 00 00 9f 00 00 00 00 00 00 00 01 00 00 00 2b 20 20 20 20 2f 2f 20 ........................+....//.
15c40 53 65 74 75 70 20 73 69 67 6e 61 6c 20 68 61 6e 64 6c 65 72 73 20 66 6f 72 20 63 6c 65 61 6e 20 Setup.signal.handlers.for.clean.
15c60 65 78 69 74 35 81 f5 18 00 00 00 00 9e 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 exit5...........................
15c80 00 00 00 00 b3 12 00 00 00 00 00 00 2c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 ............,...............5._.
15ca0 00 00 00 47 00 00 00 49 00 00 00 00 00 00 00 00 00 00 00 48 00 00 00 97 00 00 00 00 00 00 00 00 ...G...I...........H............
15cc0 ff ff ff 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 ................................
15ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15e00 00 7d 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 .}...........}...........v......
15e20 00 00 69 95 7f 07 04 01 00 00 00 00 00 f5 18 00 00 00 96 00 00 00 97 00 00 00 00 00 00 00 01 00 ..i.............................
15e40 00 00 26 20 20 20 20 2f 2f 20 41 64 64 20 61 6e 20 61 75 74 6f 6d 61 74 69 63 20 57 61 79 6c 61 ..&....//.Add.an.automatic.Wayla
15e60 6e 64 20 73 6f 63 6b 65 74 35 81 f5 18 00 00 00 00 96 00 00 00 00 00 00 00 01 00 00 00 00 00 00 nd.socket5......................
15e80 00 00 00 00 00 00 00 00 00 a8 11 00 00 00 00 00 00 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .................'..............
15ea0 00 35 81 5f d0 00 00 00 48 00 00 00 4a 00 00 00 00 00 00 00 00 00 00 00 49 00 00 00 94 00 00 00 .5._....H...J...........I.......
15ec0 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 00 00 00 ................................
15ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16000 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 ......}...........}...........v.
16020 00 00 00 00 00 00 00 69 95 7f 08 04 01 00 00 00 00 00 f5 18 00 00 00 93 00 00 00 94 00 00 00 00 .......i........................
16040 00 00 00 01 00 00 00 26 20 20 20 20 2f 2f 20 53 65 74 75 70 20 67 6c 6f 62 61 6c 20 6b 65 79 2f .......&....//.Setup.global.key/
16060 6d 6f 75 73 65 20 62 69 6e 64 69 6e 67 73 35 81 f5 18 00 00 00 00 93 00 00 00 00 00 00 00 01 00 mouse.bindings5.................
16080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6d 11 00 00 00 00 00 00 27 00 00 00 00 00 00 00 00 00 ..............m.......'.........
160a0 00 00 00 00 00 00 35 81 5f d0 00 00 00 49 00 00 00 4b 00 00 00 00 00 00 00 00 00 00 00 4a 00 00 ......5._....I...K...........J..
160c0 00 90 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 ................................
160e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
161a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
161c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
161e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16200 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 ...........}...........}........
16220 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 09 04 01 00 00 00 00 00 f5 18 00 00 00 8f 00 00 00 ...v........i...................
16240 90 00 00 00 00 00 00 00 01 00 00 00 29 20 20 20 20 2f 2f 20 49 6e 69 74 69 61 6c 69 7a 65 20 53 ............)....//.Initialize.S
16260 57 43 20 28 77 69 6e 64 6f 77 20 6d 61 6e 61 67 65 6d 65 6e 74 29 35 81 f5 18 00 00 00 00 8f 00 WC.(window.management)5.........
16280 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d7 10 00 00 00 00 00 00 2a 00 ..............................*.
162a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 4a 00 00 00 4c 00 00 00 00 00 00 ..............5._....J...L......
162c0 00 00 00 00 00 4b 00 00 00 8d 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .....K..........................
162e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
163a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
163c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
163e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 7d ...................}...........}
16420 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 0a 04 01 00 00 00 00 00 f5 ...........v........i...........
16440 18 00 00 00 8c 00 00 00 8d 00 00 00 00 00 00 00 01 00 00 00 21 20 20 20 20 2f 2f 20 47 65 74 20 ....................!....//.Get.
16460 74 68 65 20 57 61 79 6c 61 6e 64 20 65 76 65 6e 74 20 6c 6f 6f 70 35 81 f5 18 00 00 00 00 8c 00 the.Wayland.event.loop5.........
16480 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 10 00 00 00 00 00 00 22 00 ..............................".
164a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 4b 00 00 00 4d 00 00 00 00 00 00 ..............5._....K...M......
164c0 00 00 00 00 00 4c 00 00 00 83 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .....L..........................
164e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
165a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
165c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
165e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 7d ...................}...........}
16620 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 0c 04 01 00 00 00 00 00 f5 ...........v........i...........
16640 18 00 00 00 82 00 00 00 83 00 00 00 00 00 00 00 01 00 00 00 24 20 20 20 20 2f 2f 20 49 6e 69 74 ....................$....//.Init
16660 69 61 6c 69 7a 65 20 67 6c 6f 62 61 6c 20 73 74 61 74 65 20 6c 69 73 74 73 35 81 f5 18 00 00 00 ialize.global.state.lists5......
16680 00 82 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7c 0f 00 00 00 00 00 .........................|......
166a0 00 25 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 4c 00 00 00 4e 00 00 00 .%...............5._....L...N...
166c0 00 00 00 00 00 00 00 00 4d 00 00 00 7e 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........M...~...................
166e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
167a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
167c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
167e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 ......................}.........
16820 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 0d 04 01 00 00 00 ..}...........v........i........
16840 00 00 f5 18 00 00 00 7d 00 00 00 7e 00 00 00 00 00 00 00 01 00 00 00 21 20 20 20 20 2f 2f 20 43 .......}...~...........!....//.C
16860 72 65 61 74 65 20 74 68 65 20 57 61 79 6c 61 6e 64 20 64 69 73 70 6c 61 79 35 81 f5 18 00 00 00 reate.the.Wayland.display5......
16880 00 7d 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ef 0e 00 00 00 00 00 .}..............................
168a0 00 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 4d 00 00 00 4f 00 00 00 ."...............5._....M...O...
168c0 00 00 00 00 00 00 00 00 4e 00 00 00 7e 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........N...~...................
168e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
169a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
169c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
169e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7d 00 00 00 00 00 00 00 00 00 ......................}.........
16a20 00 00 7d 00 00 00 00 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 7f 0e 04 01 00 00 00 ..}...........v........i........
16a40 16 00 f5 18 00 00 00 7d 00 00 00 a0 00 00 02 33 00 00 00 22 00 00 00 21 20 20 20 20 77 6d 2e 64 .......}.......3..."...!....wm.d
16a60 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 10 20 20 20 py.=.wl_display_create();.......
16a80 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 36 20 20 20 20 20 20 20 20 64 69 65 28 45 58 49 .if.(!wm.dpy)...6........die(EXI
16aa0 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 66 61 T_FAILURE,."wl_display_create.fa
16ac0 69 6c 65 64 22 29 3b 00 00 00 00 00 00 00 1e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 iled");............wl_list_init(
16ae0 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1c 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 &wm.screens);........wl_list_ini
16b00 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1f 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 t(&wm.tiled);........wl_list_ini
16b20 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 t(&wm.floating);........wm.sel_c
16b40 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 lient.=.NULL;........wm.sel_scre
16b60 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 en.=.NULL;........wm.grab.active
16b80 20 3d 20 66 61 6c 73 65 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 .=.false;........wm.grab.resize.
16ba0 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c =.false;........wm.grab.c.=.NULL
16bc0 3b 00 00 00 00 00 00 00 33 20 20 20 20 77 6d 2e 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 ;.......3....wm.ev_loop.=.wl_dis
16be0 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 00 play_get_event_loop(wm.dpy);....
16c00 00 00 00 36 20 20 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 ...6....if.(!swc_initialize(wm.d
16c20 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 00 00 00 33 20 20 py,.wm.ev_loop,.&manager))...3..
16c40 20 20 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 5f 69 6e 69 ......die(EXIT_FAILURE,."swc_ini
16c60 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 00 00 00 00 12 20 20 20 20 73 65 74 tialize.failed");............set
16c80 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 00 00 00 00 3a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 up_binds();.......:....const.cha
16ca0 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f r.*sock.=.wl_display_add_socket_
16cc0 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 73 6f 63 6b 29 00 auto(wm.dpy);........if.(!sock).
16ce0 00 00 3f 20 20 20 20 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c ..?........die(EXIT_FAILURE,."wl
16d00 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 _display_add_socket_auto.failed"
16d20 29 3b 00 00 00 00 00 00 00 27 20 20 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 );.......'....setenv("WAYLAND_DI
16d40 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2f 20 20 20 20 5f 6c 6f 67 28 73 74 SPLAY",.sock,.1);.../...._log(st
16d60 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 6f derr,."WAYLAND_DISPLAY=%s\n",.so
16d80 63 6b 29 3b 00 00 00 00 00 00 00 20 20 20 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 ck);............signal(SIGINT,.s
16da0 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 21 20 20 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 ig_handler);...!....signal(SIGTE
16dc0 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 21 20 20 20 20 73 69 67 6e 61 6c 28 RM,.sig_handler);...!....signal(
16de0 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 00 00 00 00 43 20 20 SIGQUIT,.sig_handler);.......C..
16e00 20 20 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 20 3d 20 7a 77 6c 72 5f 73 63 72 65 ..screencopy_manager.=.zwlr_scre
16e20 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 63 72 65 61 74 65 28 77 6d 2e 64 70 79 29 encopy_manager_v1_create(wm.dpy)
16e40 3b 00 00 00 1c 20 20 20 20 69 66 20 28 21 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 ;........if.(!screencopy_manager
16e60 29 00 00 00 41 20 20 20 20 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 )...A........die(EXIT_FAILURE,."
16e80 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 73 63 72 65 65 6e 63 6f 70 79 20 6d 61 6e 61 Failed.to.create.screencopy.mana
16ea0 67 65 72 22 29 3b 35 81 f5 18 00 00 00 00 7d 00 00 00 02 00 00 00 21 00 00 00 04 00 00 00 21 00 ger");5.......}.......!.......!.
16ec0 00 00 00 00 00 00 f1 0e 00 00 00 00 00 00 ac 03 00 00 00 00 00 00 70 03 00 00 00 00 00 00 35 81 ......................p.......5.
16ee0 5f d0 00 00 00 4e 00 00 00 50 00 00 00 00 00 00 00 00 00 00 00 4f 00 00 00 37 00 00 00 00 00 00 _....N...P...........O...7......
16f00 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 00 00 00 00 00 00 ................................
16f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
16fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17060 00 00 00 00 69 95 7f 1d 04 01 00 00 00 00 00 f5 18 00 00 00 38 00 00 00 39 00 00 02 35 00 00 00 ....i...............8...9...5...
17080 01 00 00 00 00 f5 18 00 00 00 39 00 00 00 3a 00 00 02 35 00 00 00 00 f5 18 00 00 00 37 00 00 00 ..........9...:...5.........7...
170a0 3a 00 00 02 34 00 00 00 01 00 00 00 00 f5 18 00 00 00 38 00 00 00 39 00 00 02 34 00 00 00 00 f5 :...4.............8...9...4.....
170c0 18 00 00 00 37 00 00 00 39 00 00 02 33 00 00 00 00 35 81 f5 18 00 00 00 00 37 00 00 00 00 00 00 ....7...9...3....5.......7......
170e0 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 b2 08 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17100 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 37 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 ...............7................
17120 00 00 00 00 00 00 00 b2 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3e 00 00 00 00 00 00 00 f5 .......................>........
17140 18 00 00 00 00 37 00 00 00 3d 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ef 08 00 .....7...=......................
17160 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 4f 00 00 00 .....................5._....O...
17180 51 00 00 00 00 00 00 00 00 00 00 00 50 00 00 00 37 00 00 00 3c 00 00 00 00 ff ff ff ff 00 01 00 Q...........P...7...<...........
171a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
171c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
171e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
172a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
172c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
172e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 7f 1e 04 ...........................i....
17300 01 00 00 00 18 00 f5 18 00 00 00 36 00 00 00 37 00 00 00 00 00 00 00 01 00 00 00 3d 73 74 72 75 ...........6...7...........=stru
17320 63 74 20 7a 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 5f 76 31 20 2a 73 ct.zwlr_screencopy_manager_v1.*s
17340 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 20 3d 20 4e 55 4c 4c 3b 35 81 f5 18 00 00 00 creencopy_manager.=.NULL;5......
17360 00 36 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 74 08 00 00 00 00 00 .6.......................t......
17380 00 3e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 50 00 00 00 52 00 00 00 .>...............5._....P...R...
173a0 00 00 00 00 00 00 00 00 51 00 00 00 07 00 00 00 0a 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........Q.......................
173c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
173e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
174a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
174c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
174e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 7f 7c 04 01 00 00 00 .......................i..|.....
17520 00 00 f5 18 00 00 00 08 00 00 00 09 00 00 02 35 00 00 00 01 00 00 00 00 f5 18 00 00 00 09 00 00 ...............5................
17540 00 0a 00 00 02 35 00 00 00 00 f5 18 00 00 00 07 00 00 00 0a 00 00 02 34 00 00 00 01 00 00 00 00 .....5.................4........
17560 f5 18 00 00 00 08 00 00 00 09 00 00 02 34 00 00 00 00 f5 18 00 00 00 07 00 00 00 09 00 00 02 33 .............4.................3
17580 00 00 00 00 35 81 f5 18 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ....5...........................
175a0 00 00 00 00 c7 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 ................................
175c0 00 00 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 c7 00 00 00 00 00 ................................
175e0 00 00 00 00 00 00 00 00 00 00 2f 00 00 00 00 00 00 00 f5 18 00 00 00 00 07 00 00 00 2e 00 00 00 ........../.....................
17600 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f5 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................................
17620 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 51 00 00 00 53 00 00 00 00 00 00 00 00 00 00 00 52 ........5._....Q...S...........R
17640 00 00 00 06 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 ................................
17660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
176a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
176c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
176e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17780 00 00 00 00 00 00 00 00 00 00 00 00 00 06 00 00 00 2d 00 00 00 00 00 00 00 07 00 00 00 2d 00 00 .................-...........-..
177a0 00 00 00 00 00 56 00 00 00 2d 00 00 00 00 69 95 7f 7f 04 01 00 00 00 1a 00 f5 18 00 00 00 05 00 .....V...-....i.................
177c0 00 00 06 00 00 00 00 00 00 00 02 00 00 00 2e 23 69 6e 63 6c 75 64 65 20 22 77 6c 72 5f 73 63 72 ...............#include."wlr_scr
177e0 65 65 6e 63 6f 70 79 5f 75 6e 73 74 61 62 6c 65 5f 76 31 5f 63 6c 69 65 6e 74 2e 68 22 00 00 00 eencopy_unstable_v1_client.h"...
17800 2e 23 69 6e 63 6c 75 64 65 20 22 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 75 6e 73 74 61 62 .#include."wlr_screencopy_unstab
17820 6c 65 5f 76 31 5f 73 65 72 76 65 72 2e 68 22 35 81 f5 18 00 00 00 00 05 00 00 00 00 00 00 00 02 le_v1_server.h"5................
17840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 00 00 00 00 00 00 00 5e 00 00 00 00 00 00 00 00 ...............i.......^........
17860 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 52 00 00 00 54 00 00 00 00 00 00 00 00 00 00 00 53 00 .......5._....R...T...........S.
17880 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 00 00 00 00 00 00 00 ................................
178a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
178c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
178e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
17980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
179a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
179c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
179e0 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 50 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 .............i..P...............
17a00 00 02 00 00 00 00 00 00 02 32 00 00 00 17 23 69 6e 63 6c 75 64 65 20 22 63 6f 6d 70 6f 73 69 74 .........2....#include."composit
17a20 6f 72 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 17 or.h"....#include."config.h"....
17a40 23 69 6e 63 6c 75 64 65 20 22 73 63 72 65 65 6e 73 68 6f 74 2e 68 22 00 00 00 12 23 69 6e 63 6c #include."screenshot.h"....#incl
17a60 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 22 75 74 69 6c 2e ude."types.h"....#include."util.
17a80 68 22 00 00 00 2e 23 69 6e 63 6c 75 64 65 20 22 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 75 h"....#include."wlr_screencopy_u
17aa0 6e 73 74 61 62 6c 65 5f 76 31 5f 73 65 72 76 65 72 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 nstable_v1_server.h"....#include
17ac0 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 .<signal.h>....#include.<stdio.h
17ae0 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 >....#include.<stdlib.h>....#inc
17b00 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 lude.<swc.h>....#include.<unistd
17b20 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e .h>....#include.<wayland-server.
17b40 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 h>....#include.<wayland-util.h>.
17b60 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 6e ..(#include.<xkbcommon/xkbcommon
17b80 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 -keysyms.h>.......0static.void.f
17ba0 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 ocus(struct.client.*c,.bool.rais
17bc0 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 e);...*static.void.on_screen_des
17be0 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 troy(void.*data);...:static.void
17c00 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 .on_screen_usable_geometry_chang
17c20 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f ed(void.*data);...'static.void.o
17c40 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 n_win_destroy(void.*data);...'st
17c60 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 atic.void.on_win_entered(void.*d
17c80 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 ata);....static.void.setup(void)
17ca0 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 ;....static.void.setup_binds(voi
17cc0 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 d);...Fstatic.void.set_floating(
17ce0 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c struct.client.*c,.bool.floating,
17d00 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c .bool.raise);...#static.void.til
17d20 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 e(struct.screen.*s);...(void.new
17d40 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b _screen(struct.swc_screen.*scr);
17d60 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 ...(void.new_window(struct.swc_w
17d80 69 6e 64 6f 77 20 2a 77 69 6e 29 3b 00 00 00 2d 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 indow.*win);...-void.new_device(
17da0 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 struct.libinput_device.*dev);...
17dc0 4b 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e Kvoid.focus_next(void.*data,.uin
17de0 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
17e00 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 32_t.state);...Kvoid.focus_prev(
17e20 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
17e40 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 49 76 2_t.value,.uint32_t.state);...Iv
17e60 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f oid.kill_sel(void.*data,.uint32_
17e80 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
17ea0 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 .state);...Kvoid.mouse_move(void
17ec0 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
17ee0 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 value,.uint32_t.state);...Mvoid.
17f00 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f mouse_resize(void.*data,.uint32_
17f20 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
17f40 20 73 74 61 74 65 29 3b 00 00 00 45 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 .state);...Evoid.quit(void.*data
17f60 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 76 61 6c 75 65 2c ,.uint32_t.time,.uint32_t.value,
17f80 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 46 76 6f 69 64 20 73 70 61 77 6e 28 .uint32_t.state);...Fvoid.spawn(
17fa0 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
17fc0 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 2_t.value,.uint32_t.state);...Mv
17fe0 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e oid.toggle_float(void.*data,.uin
18000 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
18020 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 32_t.state);...Cvoid.toggle_floa
18040 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 t_global(void.*data,.uint32_t.ti
18060 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 29 20 20 20 20 20 20 20 20 20 me,.uint32_t.value,...).........
18080 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 73 74 61 74 65 29 3b ................uint32_t.state);
180a0 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c ...Lvoid.master_next(void.*data,
180c0 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 76 61 6c 75 65 2c 20 .uint32_t.time,.uint32_t.value,.
180e0 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f uint32_t.state);...Lvoid.master_
18100 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 prev(void.*data,.uint32_t.time,.
18120 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b uint32_t.value,.uint32_t.state);
18140 00 00 00 4e 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 ...Nvoid.master_resize(void.*dat
18160 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
18180 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 ,.uint32_t.state);.......,struct
181a0 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e 64 6c .swc_window_handler.window_handl
181c0 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 6e 5f er.=.{.........destroy.=.on_win_
181e0 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f 77 69 destroy,.........entered.=.on_wi
18200 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 n_entered,....};.......,struct.s
18220 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 wc_screen_handler.screen_handler
18240 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 65 6e .=.{...!.....destroy.=.on_screen
18260 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 _destroy,...A.....usable_geometr
18280 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f y_changed.=.on_screen_usable_geo
182a0 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 21 73 74 61 74 metry_changed,....};.......!stat
182c0 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 ic.uint32_t.master_width.=.0;...
182e0 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 3d 73 74 72 75 63 74 20 7a 77 6c 72 5f 73 63 .struct.wm.wm;...=struct.zwlr_sc
18300 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 5f 76 31 20 2a 73 63 72 65 65 6e 63 6f 70 79 5f reencopy_manager_v1.*screencopy_
18320 6d 61 6e 61 67 65 72 20 3d 20 4e 55 4c 4c 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 manager.=.NULL;.......$const.str
18340 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d 20 uct.swc_manager.manager.=.{.....
18360 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 1d ....new_screen.=.new_screen,....
18380 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 .....new_window.=.new_window,...
183a0 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 ......new_device.=.new_device,..
183c0 00 02 7d 3b 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 ..};.......1static.void.focus(st
183e0 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 ruct.client.*c,.bool.raise).{...
18400 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 44 20 20 20 20 73 77 63 ...if.(wm.sel_client)...D....swc
18420 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 _window_set_border(wm.sel_client
18440 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 00 00 00 ->win,.cfg.border_col_normal,...
18460 2c 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 63 66 67 2e 62 ,..........................cfg.b
18480 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 4b 20 20 20 order_width);......if.(c)...K...
184a0 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 .swc_window_set_border(c->win,.c
184c0 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 fg.border_col_active,.cfg.border
184e0 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 _width);......if.(raise.&&.c.&&.
18500 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 c->floating)........set_floating
18520 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 (c,.true,.true);...&..swc_window
18540 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 _focus(c.?.c->win.:.NULL);......
18560 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 73 wm.sel_client.=.c;....}.......+s
18580 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 tatic.void.on_screen_destroy(voi
185a0 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 d.*data).{......struct.screen.*s
185c0 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 .=.data;......if.(!s)........ret
185e0 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e urn;......wl_list_remove(&s->lin
18600 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 k);......if.(wm.sel_screen.==.s)
18620 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e .{...#....if.(wl_list_empty(&wm.
18640 73 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e screens))..........wm.sel_screen
18660 20 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 20 20 77 6d .=.NULL;........else...L......wm
18680 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d .sel_screen.=.wl_container_of(wm
186a0 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 .screens.next,.wm.sel_screen,.li
186c0 6e 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d 00 00 nk);......}......free(s);....}..
186e0 00 00 00 00 00 3b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 .....;static.void.on_screen_usab
18700 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 le_geometry_changed(void.*data).
18720 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 {......struct.screen.*s.=.data;.
18740 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 .....tile(s);....}.......(static
18760 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 .void.on_win_destroy(void.*data)
18780 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b .{......struct.client.*c.=.data;
187a0 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 00 09 20 20 ......struct.client.*next;......
187c0 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 29 20 20 69 66 20 28 if.(!c)........return;...)..if.(
187e0 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 wm.grab.active.&&.wm.grab.c.==.c
18800 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 ).{........wm.grab.active.=.fals
18820 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 e;........wm.grab.c.=.NULL;.....
18840 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 20 20 20 20 .}......if.(c->floating)...#....
18860 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 wl_list_remove(&c->float_link);.
18880 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 .....else...#....wl_list_remove(
188a0 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c &c->tiled_link);......if.(wm.sel
188c0 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c _client.==.c).{........wm.sel_cl
188e0 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 ient.=.NULL;........next.=.first
18900 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 6e 65 78 74 _float(c->scr);........if.(!next
18920 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d )...!......next.=.first_tiled(c-
18940 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b >scr);........focus(next,.true);
18960 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 ......}......tile(c->scr);......
18980 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 free(c);....}.......(static.void
189a0 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 .on_win_entered(void.*data).{...
189c0 15 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 20 20 72 65 ...if.(wm.grab.active)........re
189e0 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 turn;......struct.client.*c.=.da
18a00 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 ta;......focus(c,.true);....}...
18a20 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 .....static.void.setup(void).{..
18a40 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 ....wm.dpy.=.wl_display_create()
18a60 3b 00 00 00 0e 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 20 20 20 64 69 65 28 45 ;......if.(!wm.dpy)...2....die(E
18a80 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 XIT_FAILURE,."wl_display_create.
18aa0 66 61 69 6c 65 64 22 29 3b 00 00 00 00 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 failed");..........wl_list_init(
18ac0 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 &wm.screens);......wl_list_init(
18ae0 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 &wm.tiled);......wl_list_init(&w
18b00 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 m.floating);......wm.sel_client.
18b20 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c =.NULL;......wm.sel_screen.=.NUL
18b40 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 L;......wm.grab.active.=.false;.
18b60 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 .....wm.grab.resize.=.false;....
18b80 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 00 00 00 00 31 20 20 77 6d 2e ..wm.grab.c.=.NULL;.......1..wm.
18ba0 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c ev_loop.=.wl_display_get_event_l
18bc0 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 00 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 oop(wm.dpy);.......4..if.(!swc_i
18be0 6e 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d nitialize(wm.dpy,.wm.ev_loop,.&m
18c00 61 6e 61 67 65 72 29 29 00 00 00 2f 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 anager)).../....die(EXIT_FAILURE
18c20 2c 20 22 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 00 00 ,."swc_initialize.failed");.....
18c40 00 00 10 20 20 73 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 00 00 00 00 38 20 20 63 6f 6e .....setup_binds();.......8..con
18c60 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 st.char.*sock.=.wl_display_add_s
18c80 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f ocket_auto(wm.dpy);......if.(!so
18ca0 63 6b 29 00 00 00 3b 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c ck)...;....die(EXIT_FAILURE,."wl
18cc0 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 _display_add_socket_auto.failed"
18ce0 29 3b 00 00 00 00 00 00 00 25 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 );.......%..setenv("WAYLAND_DISP
18d00 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2d 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 LAY",.sock,.1);...-.._log(stderr
18d20 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b ,."WAYLAND_DISPLAY=%s\n",.sock);
18d40 00 00 00 00 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e ..........signal(SIGINT,.sig_han
18d60 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f dler);......signal(SIGTERM,.sig_
18d80 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 73 handler);......signal(SIGQUIT,.s
18da0 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 00 00 00 00 41 20 20 73 63 72 65 65 6e 63 6f 70 79 ig_handler);.......A..screencopy
18dc0 5f 6d 61 6e 61 67 65 72 20 3d 20 7a 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 _manager.=.zwlr_screencopy_manag
18de0 65 72 5f 76 31 5f 63 72 65 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 1a 20 20 69 66 20 28 21 er_v1_create(wm.dpy);......if.(!
18e00 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 29 00 00 00 3d 20 20 20 20 64 69 65 28 45 screencopy_manager)...=....die(E
18e20 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 73 XIT_FAILURE,."Failed.to.create.s
18e40 63 72 65 65 6e 63 6f 70 79 20 6d 61 6e 61 67 65 72 22 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 creencopy.manager");....}.......
18e60 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b .static.void.setup_binds(void).{
18e80 00 00 00 41 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a ...A..for.(size_t.i.=.0;.i.<.siz
18ea0 65 6f 66 28 62 69 6e 64 73 29 20 2f 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 eof(binds)./.sizeof(binds[0]);.i
18ec0 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a ++).{...%....const.struct.bind.*
18ee0 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 b.=.&binds[i];...G....swc_add_bi
18f00 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c nding(b->type,.b->mods,.b->ksym,
18f20 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d .b->fn,.(void.*)&b->arg);......}
18f40 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f ....}.......Gstatic.void.set_flo
18f60 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f ating(struct.client.*c,.bool.flo
18f80 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 09 20 20 69 66 20 28 21 63 ating,.bool.raise).{......if.(!c
18fa0 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 )........return;......if.(floati
18fc0 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b ng).{........if.(!c->floating).{
18fe0 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 ..........c->floating.=.true;...
19000 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f %......wl_list_remove(&c->tiled_
19020 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 link);...3......wl_list_insert(&
19040 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 wm.floating,.&c->float_link);...
19060 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 .....}.else.if.(raise).{...%....
19080 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 ..wl_list_remove(&c->float_link)
190a0 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c ;...3......wl_list_insert(&wm.fl
190c0 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 oating,.&c->float_link);........
190e0 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 }...#....swc_window_set_stacked(
19100 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 c->win);......}.else.{........if
19120 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f .(c->floating).{..........c->flo
19140 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f ating.=.false;...%......wl_list_
19160 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 remove(&c->float_link);...0.....
19180 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 .wl_list_insert(&wm.tiled,.&c->t
191a0 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f iled_link);........}...!....swc_
191c0 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d window_set_tiled(c->win);......}
191e0 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 ....}.......$static.void.tile(st
19200 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c ruct.screen.*s).{......struct.cl
19220 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 ient.*c;......struct.swc_rectang
19240 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 le.geom;...!..struct.swc_rectang
19260 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 00 00 31 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 le.*scr_geom;...1..int32_t.out_g
19280 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 aps.=.cfg.gaps.+.cfg.border_widt
192a0 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 h;...6..int32_t.in_gaps.=.cfg.ga
192c0 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 0f ps.+.(cfg.border_width.*.2);....
192e0 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 10 20 20 75 69 6e 74 33 32 5f 74 20 77 2c ..int32_t.x,.y;......uint32_t.w,
19300 20 68 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 .h;......if.(!s)........return;.
19320 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f ..&..scr_geom.=.&s->scr->usable_
19340 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 geometry;......size_t.n.=.0;...E
19360 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c ..wl_list_for_each(c,.&wm.tiled,
19380 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 .tiled_link).if.(is_tiled(c,.s))
193a0 20 6e 2b 2b 3b 00 00 00 0d 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 00 00 00 0b 20 20 20 20 72 65 .n++;......if.(n.==.0)........re
193c0 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 turn;......x.=.scr_geom->x.+.out
193e0 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 _gaps;......y.=.scr_geom->y.+.ou
19400 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 t_gaps;...'..w.=.scr_geom->width
19420 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 28 20 20 68 20 3d 20 73 63 72 5f .-.(out_gaps.*.2);...(..h.=.scr_
19440 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 geom->height.-.(out_gaps.*.2);..
19460 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 ....if.(n.==.1).{...0....wl_list
19480 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 _for_each(c,.&wm.tiled,.tiled_li
194a0 6e 6b 29 20 7b 00 00 00 1a 20 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 nk).{..........if.(!is_tiled(c,.
194c0 73 29 29 00 00 00 11 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 20 20 20 20 s))............continue;........
194e0 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 ..geom.x.=.x;..........geom.y.=.
19500 79 3b 00 00 00 15 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 16 20 y;..........geom.width.=.w;.....
19520 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 .....geom.height.=.h;...-......s
19540 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 wc_window_set_geometry(c->win,.&
19560 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d geom);..........return;........}
19580 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 ......}......size_t.i.=.0;......
195a0 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 wl_list_for_each(c,.&wm.tiled,.t
195c0 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 18 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 iled_link).{........if.(!is_tile
195e0 64 28 63 2c 20 73 29 29 00 00 00 0f 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 d(c,.s))..........continue;.....
19600 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 ...if.(master_width.==.0)...>...
19620 20 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 ...master_width.=.((w.-.in_gaps)
19640 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 .*.cfg.master_width)./.100;.....
19660 20 20 20 69 66 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 ...if.(i.==.0).{..........geom.x
19680 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 .=.x;..........geom.y.=.y;......
196a0 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 00 00 ....geom.width.=.master_width;..
196c0 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 ........geom.height.=.h;........
196e0 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b }.else.{..........uint32_t.stack
19700 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 n.=.n.-.1;..........uint32_t.idx
19720 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 .=.i.-.1;...D......uint32_t.stac
19740 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b k_height.=.(h.-.in_gaps.*.(stack
19760 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e n.-.1))./.stackn;...*......geom.
19780 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 x.=.x.+.master_width.+.in_gaps;.
197a0 00 00 34 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 ..4......geom.y.=.y.+.(idx.*.(st
197c0 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e 5f 67 61 70 73 29 29 3b 00 00 00 2e 20 20 20 20 20 ack_height.+.in_gaps));.........
197e0 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d .geom.width.=.w.-.master_width.-
19800 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d .in_gaps;...!......geom.height.=
19820 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 .stack_height;........}...+....s
19840 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 wc_window_set_geometry(c->win,.&
19860 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 geom);........i++;......}....}..
19880 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 .....)void.new_screen(struct.swc
198a0 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 _screen.*scr).{...(..struct.scre
198c0 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 09 20 en.*s.=.malloc(sizeof(*s));.....
198e0 20 69 66 20 28 21 73 29 00 00 00 32 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 .if.(!s)...2....die(EXIT_FAILURE
19900 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f 63 20 66 61 69 6c 65 64 22 29 3b 00 00 ,."new.screen.malloc.failed");..
19920 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 00 0b 20 20 73 2d 3e 78 20 3d 20 30 3b ....s->scr.=.scr;......s->x.=.0;
19940 00 00 00 0b 20 20 73 2d 3e 79 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 77 20 3d 20 30 3b 00 00 ......s->y.=.0;......s->w.=.0;..
19960 00 0b 20 20 73 2d 3e 68 20 3d 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 ....s->h.=.0;...(..wl_list_inser
19980 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 15 20 20 69 t(&wm.screens,.&s->link);......i
199a0 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 16 20 20 20 20 77 6d 2e 73 65 6c f.(!wm.sel_screen)........wm.sel
199c0 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 _screen.=.s;...2..swc_screen_set
199e0 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 _handler(scr,.&screen_handler,.s
19a00 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e );.../.._log(stderr,."new_screen
19a20 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 =%p\n",.(void.*)scr);....}......
19a40 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e .)void.new_window(struct.swc_win
19a60 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a dow.*win).{...(..struct.client.*
19a80 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 09 20 20 69 66 20 c.=.malloc(sizeof(*c));......if.
19aa0 28 21 63 29 00 00 00 2e 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6d (!c)........die(EXIT_FAILURE,."m
19ac0 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 63 2d 3e 77 alloc.client.failed");......c->w
19ae0 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 in.=.win;......c->scr.=.wm.sel_s
19b00 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 creen;......c->mapped.=.false;..
19b20 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 .#..c->floating.=.wm.global_floa
19b40 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 ting;......c->fullscreen.=.false
19b60 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 66 20 28 63 ;......c->ws.=.false;......if.(c
19b80 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 ->floating).{...1....wl_list_ins
19ba0 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b ert(&wm.floating,.&c->float_link
19bc0 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 );...!....wl_list_init(&c->tiled
19be0 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 _link);...4....swc_window_set_ha
19c00 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 ndler(win,.&window_handler,.c);.
19c20 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 .......swc_window_set_stacked(wi
19c40 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f 6c 69 73 74 n);......}.else.{........wl_list
19c60 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e _insert(&wm.tiled,.&c->tiled_lin
19c80 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 k);...!....wl_list_init(&c->floa
19ca0 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 t_link);...4....swc_window_set_h
19cc0 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b andler(win,.&window_handler,.c);
19ce0 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e ........swc_window_set_tiled(win
19d00 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 );......}......swc_window_show(w
19d20 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 16 20 20 74 in);......focus(c,.true);......t
19d40 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 ile(wm.sel_screen);.../.._log(st
19d60 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a derr,."new_window=%p\n",.(void.*
19d80 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 )win);....}.......;void.new_devi
19da0 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 ce(struct.libinput_device.*dev).
19dc0 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 {.(void)dev;.}.......Lvoid.focus
19de0 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c _next(void.*data,.uint32_t.time,
19e00 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 .uint32_t.value,.uint32_t.state)
19e20 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 .{......(void)data;......(void)t
19e40 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 13 20 20 73 74 72 75 ime;......(void)value;......stru
19e60 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e ct.client.*c;......struct.screen
19e80 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 .*s;...-..if.(state.!=.WL_KEYBOA
19ea0 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 RD_KEY_STATE_PRESSED)........ret
19ec0 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 urn;......if.(!wm.sel_screen)...
19ee0 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 .....return;......s.=.wm.sel_scr
19f00 65 65 6e 3b 00 00 00 17 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 00 een;......if.(!wm.sel_client).{.
19f20 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 00 00 00 0b 20 20 .......c.=.first_float(s);......
19f40 20 20 69 66 20 28 21 63 29 00 00 00 19 20 20 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c ..if.(!c)..........c.=.first_til
19f60 65 64 28 73 29 3b 00 00 00 14 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 ed(s);........focus(c,.false);..
19f80 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d 00 00 00 20 20 20 69 66 20 28 77 6d ......return;......}......if.(wm
19fa0 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 4c 20 20 20 20 .sel_client->floating).{...L....
19fc0 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f for.(c.=.wl_container_of(wm.sel_
19fe0 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 66 6c 6f 61 client->float_link.next,.c,.floa
1a000 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 20 20 20 20 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c t_link);...(.........&c->float_l
1a020 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 00 00 00 40 20 20 20 20 20 20 20 20 ink.!=.&wm.floating;...@........
1a040 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 .c.=.wl_container_of(c->float_li
1a060 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 1b 20 20 20 20 nk.next,.c,.float_link))........
1a080 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 73 29 29 20 7b 00 00 00 18 20 20 20 20 20 ..if.(is_float(c,.s)).{.........
1a0a0 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0f 20 20 20 20 20 20 20 20 72 ...focus(c,.false);............r
1a0c0 65 74 75 72 6e 3b 00 00 00 07 20 20 20 20 20 20 7d 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 eturn;..........}........c.=.fir
1a0e0 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 20 28 21 63 29 00 00 00 19 20 st_tiled(s);........if.(!c).....
1a100 20 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 00 00 00 0a 20 20 20 20 .....c.=.first_float(s);........
1a120 69 66 20 28 63 29 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b if.(c)..........focus(c,.false);
1a140 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d 00 00 00 4a 20 20 66 6f 72 20 ........return;......}...J..for.
1a160 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 (c.=.wl_container_of(wm.sel_clie
1a180 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 nt->tiled_link.next,.c,.tiled_li
1a1a0 6e 6b 29 3b 00 00 00 23 20 20 20 20 20 20 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 20 21 3d nk);...#.......&c->tiled_link.!=
1a1c0 20 26 77 6d 2e 74 69 6c 65 64 3b 00 00 00 3e 20 20 20 20 20 20 20 63 20 3d 20 77 6c 5f 63 6f 6e .&wm.tiled;...>.......c.=.wl_con
1a1e0 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c tainer_of(c->tiled_link.next,.c,
1a200 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 19 20 20 20 20 69 66 20 28 69 73 5f 74 69 6c 65 .tiled_link))........if.(is_tile
1a220 64 28 63 2c 20 73 29 29 20 7b 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c d(c,.s)).{..........focus(c,.fal
1a240 73 65 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 se);..........return;........}..
1a260 00 15 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 00 00 00 09 20 20 69 66 20 ....c.=.first_float(s);......if.
1a280 28 21 63 29 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 (!c)........c.=.first_tiled(s);.
1a2a0 00 00 12 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 .....focus(c,.false);....}......
1a2c0 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 .Lvoid.focus_prev(void.*data,.ui
1a2e0 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e nt32_t.time,.uint32_t.value,.uin
1a300 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 t32_t.state).{......(void)data;.
1a320 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 .....(void)time;......(void)valu
1a340 65 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 13 20 20 73 e;......struct.client.*c;......s
1a360 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 truct.screen.*s;...-..if.(state.
1a380 21 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 44 !=.WL_KEYBOARD_KEY_STATE_PRESSED
1a3a0 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 )........return;......if.(!wm.se
1a3c0 6c 5f 73 63 72 65 65 6e 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 20 l_screen)........return;......s.
1a3e0 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 17 20 20 69 66 20 28 21 77 6d 2e 73 65 =.wm.sel_screen;......if.(!wm.se
1a400 6c 5f 63 6c 69 65 6e 74 29 20 7b 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f l_client).{........c.=.first_flo
1a420 61 74 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 20 28 21 63 29 00 00 00 19 20 20 20 20 20 20 63 at(s);........if.(!c)..........c
1a440 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 14 20 20 20 20 66 6f 63 75 73 28 .=.first_tiled(s);........focus(
1a460 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d c,.false);........return;......}
1a480 00 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e ......if.(wm.sel_client->floatin
1a4a0 67 29 20 7b 00 00 00 4c 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 g).{...L....for.(c.=.wl_containe
1a4c0 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 r_of(wm.sel_client->float_link.p
1a4e0 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 20 20 20 20 rev,.c,.float_link);...(........
1a500 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b .&c->float_link.!=.&wm.floating;
1a520 00 00 00 40 20 20 20 20 20 20 20 20 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 ...@.........c.=.wl_container_of
1a540 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 (c->float_link.prev,.c,.float_li
1a560 6e 6b 29 29 00 00 00 1b 20 20 20 20 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 73 29 nk))..........if.(is_float(c,.s)
1a580 29 20 7b 00 00 00 18 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 ).{............focus(c,.false);.
1a5a0 00 00 0f 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 07 20 20 20 20 20 20 7d 00 00 00 ...........return;..........}...
1a5c0 16 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 0b 20 20 20 20 69 .....c.=.last_tiled(s);........i
1a5e0 66 20 28 21 63 29 00 00 00 18 20 20 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 73 f.(!c)..........c.=.last_float(s
1a600 29 3b 00 00 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 28 );........if.(c)..........focus(
1a620 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d c,.false);........return;......}
1a640 00 00 00 4a 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 ...J..for.(c.=.wl_container_of(w
1a660 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 63 m.sel_client->tiled_link.prev,.c
1a680 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 23 20 20 20 20 20 20 20 26 63 2d 3e 74 69 6c ,.tiled_link);...#.......&c->til
1a6a0 65 64 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 00 00 00 3e 20 20 20 20 20 20 20 ed_link.!=.&wm.tiled;...>.......
1a6c0 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e c.=.wl_container_of(c->tiled_lin
1a6e0 6b 2e 70 72 65 76 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 19 20 20 20 20 69 k.prev,.c,.tiled_link))........i
1a700 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 7b 00 00 00 16 20 20 20 20 20 20 66 6f f.(is_tiled(c,.s)).{..........fo
1a720 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 cus(c,.false);..........return;.
1a740 00 00 05 20 20 20 20 7d 00 00 00 14 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 73 29 3b .......}......c.=.last_float(s);
1a760 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 16 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 69 ......if.(!c)........c.=.last_ti
1a780 6c 65 64 28 73 29 3b 00 00 00 12 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 led(s);......focus(c,.false);...
1a7a0 01 7d 00 00 00 00 00 00 00 4a 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 .}.......Jvoid.kill_sel(void.*da
1a7c0 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
1a7e0 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 e,.uint32_t.state).{......(void)
1a800 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 data;......(void)time;......(voi
1a820 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 d)value;...-..if.(state.!=.WL_KE
1a840 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 00 00 00 0b 20 20 20 YBOARD_KEY_STATE_PRESSED).......
1a860 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 .return;......if.(!wm.sel_client
1a880 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 27 20 20 73 77 63 5f 77 69 6e 64 6f 77 )........return;...'..swc_window
1a8a0 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 29 3b 00 00 00 01 7d _close(wm.sel_client->win);....}
1a8c0 00 00 00 00 00 00 00 4c 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 .......Lvoid.mouse_move(void.*da
1a8e0 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
1a900 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 e,.uint32_t.state).{......(void)
1a920 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 data;......(void)time;......(voi
1a940 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f 50 4f d)value;...1..if.(state.==.WL_PO
1a960 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 7b 00 00 00 INTER_BUTTON_STATE_PRESSED).{...
1a980 17 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 0d 20 20 20 20 .....if.(!wm.sel_client)........
1a9a0 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 ..return;...#....if.(!wm.sel_cli
1a9c0 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 2f 20 20 20 20 20 20 73 65 74 5f 66 6c ent->floating).{.../......set_fl
1a9e0 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 74 72 75 65 2c 20 66 61 6c 73 oating(wm.sel_client,.true,.fals
1aa00 65 29 3b 00 00 00 1f 20 20 20 20 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d e);..........tile(wm.sel_client-
1aa20 3e 73 63 72 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 1a 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 >scr);........}........wm.grab.a
1aa40 63 74 69 76 65 20 3d 20 74 72 75 65 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 ctive.=.true;........wm.grab.res
1aa60 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 1e 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 ize.=.false;........wm.grab.c.=.
1aa80 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 wm.sel_client;...*....swc_window
1aaa0 5f 62 65 67 69 6e 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 00 00 00 0a _begin_move(wm.grab.c->win);....
1aac0 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 38 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 2e 61 ..}.else.{...8....if.(!wm.grab.a
1aae0 63 74 69 76 65 20 7c 7c 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 ctive.||.wm.grab.resize.||.!wm.g
1ab00 72 61 62 2e 63 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 28 20 20 20 20 73 rab.c)..........return;...(....s
1ab20 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 wc_window_end_move(wm.grab.c->wi
1ab40 6e 29 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 n);........wm.grab.active.=.fals
1ab60 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 e;........wm.grab.c.=.NULL;.....
1ab80 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4e 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 .}....}.......Nvoid.mouse_resize
1aba0 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 (void.*data,.uint32_t.time,.uint
1abc0 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 32_t.value,.uint32_t.state).{...
1abe0 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 ...(void)data;......(void)time;.
1ac00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 65 .....(void)value;...1..if.(state
1ac20 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 50 52 45 53 .==.WL_POINTER_BUTTON_STATE_PRES
1ac40 53 45 44 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 SED).{........if.(!wm.sel_client
1ac60 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 20 20 69 66 20 28 21 77 )..........return;...#....if.(!w
1ac80 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 2f 20 20 20 m.sel_client->floating).{.../...
1aca0 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 74 ...set_floating(wm.sel_client,.t
1acc0 72 75 65 2c 20 66 61 6c 73 65 29 3b 00 00 00 1f 20 20 20 20 20 20 74 69 6c 65 28 77 6d 2e 73 65 rue,.false);..........tile(wm.se
1ace0 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 1a 20 20 20 20 l_client->scr);........}........
1ad00 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 00 00 00 1a 20 20 20 20 77 6d wm.grab.active.=.true;........wm
1ad20 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 74 72 75 65 3b 00 00 00 1e 20 20 20 20 77 6d 2e 67 .grab.resize.=.true;........wm.g
1ad40 72 61 62 2e 63 20 3d 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 00 00 00 2b 20 20 20 20 73 77 rab.c.=.wm.sel_client;...+....sw
1ad60 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 2d c_window_begin_resize(wm.grab.c-
1ad80 3e 77 69 6e 2c 00 00 00 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 >win,...L.......................
1ada0 20 20 20 20 20 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 52 49 47 48 54 20 7c 20 53 57 43 .....SWC_WINDOW_EDGE_RIGHT.|.SWC
1adc0 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 42 4f 54 54 4f 4d 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 _WINDOW_EDGE_BOTTOM);......}.els
1ade0 65 20 7b 00 00 00 39 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 7c e.{...9....if.(!wm.grab.active.|
1ae00 7c 20 21 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 |.!wm.grab.resize.||.!wm.grab.c)
1ae20 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 69 6e ..........return;...*....swc_win
1ae40 64 6f 77 5f 65 6e 64 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 00 dow_end_resize(wm.grab.c->win);.
1ae60 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 .......wm.grab.active.=.false;..
1ae80 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 00 ......wm.grab.c.=.NULL;......}..
1aea0 00 01 7d 00 00 00 00 00 00 00 46 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c ..}.......Fvoid.quit(void.*data,
1aec0 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 76 61 6c 75 65 2c 20 .uint32_t.time,.uint32_t.value,.
1aee0 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 uint32_t.state).{......(void)dat
1af00 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 a;......(void)time;......(void)v
1af20 61 6c 75 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 1f 20 20 77 6c 5f alue;......(void)state;......wl_
1af40 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 display_terminate(wm.dpy);....}.
1af60 00 00 00 00 00 00 47 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 ......Gvoid.spawn(void.*data,.ui
1af80 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e nt32_t.time,.uint32_t.value,.uin
1afa0 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 16 20 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 t32_t.state).{......union.arg.*a
1afc0 20 3d 20 64 61 74 61 3b 00 00 00 29 20 20 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a 63 6d 64 20 3d .=.data;...)..char.*const.*cmd.=
1afe0 20 28 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a 29 61 2d 3e 76 3b 00 00 00 0d 20 20 28 76 6f 69 64 .(char.*const.*)a->v;......(void
1b000 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 )time;......(void)value;...-..if
1b020 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 .(state.!=.WL_KEYBOARD_KEY_STATE
1b040 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 69 66 _PRESSED)........return;......if
1b060 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 7b 00 00 00 18 20 20 20 20 65 78 65 63 76 70 28 63 .(fork().==.0).{........execvp(c
1b080 6d 64 5b 30 5d 2c 20 63 6d 64 29 3b 00 00 00 0f 20 20 20 20 5f 65 78 69 74 28 31 32 37 29 3b 00 md[0],.cmd);........_exit(127);.
1b0a0 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4e 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 .....}....}.......Nvoid.toggle_f
1b0c0 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 loat(void.*data,.uint32_t.time,.
1b0e0 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 uint32_t.value,.uint32_t.state).
1b100 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 {......(void)data;......(void)ti
1b120 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 me;......(void)value;...-..if.(s
1b140 74 61 74 65 20 21 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 tate.!=.WL_KEYBOARD_KEY_STATE_PR
1b160 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 ESSED)........return;......if.(!
1b180 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 wm.sel_client)........return;...
1b1a0 3e 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 21 >..set_floating(wm.sel_client,.!
1b1c0 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 2c 20 74 72 75 65 29 3b 00 wm.sel_client->floating,.true);.
1b1e0 00 00 1b 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 00 00 .....tile(wm.sel_client->scr);..
1b200 00 01 7d 00 00 00 00 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f ..}.......Cvoid.toggle_float_glo
1b220 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 bal(void.*data,.uint32_t.time,.u
1b240 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 int32_t.value,...*..............
1b260 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d ...........uint32_t.state).{....
1b280 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 ..(void)data;......(void)time;..
1b2a0 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 ....(void)value;...-..if.(state.
1b2c0 21 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 44 !=.WL_KEYBOARD_KEY_STATE_PRESSED
1b2e0 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 2b 20 20 77 6d 2e 67 6c 6f 62 61 6c 5f )........return;...+..wm.global_
1b300 66 6c 6f 61 74 69 6e 67 20 3d 20 21 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 floating.=.!wm.global_floating;.
1b320 00 00 01 7d 00 00 00 00 00 00 00 10 69 6e 74 20 6d 61 69 6e 28 76 6f 69 64 29 20 7b 00 00 00 0a ...}........int.main(void).{....
1b340 20 20 73 65 74 75 70 28 29 3b 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 ..setup();......wl_display_run(w
1b360 6d 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d m.dpy);......swc_finalize();....
1b380 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 ..wl_display_destroy(wm.dpy);...
1b3a0 16 20 20 72 65 74 75 72 6e 20 45 58 49 54 5f 53 55 43 43 45 53 53 3b 00 00 00 01 7d 00 00 00 00 ...return.EXIT_SUCCESS;....}....
1b3c0 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c ...Mvoid.master_next(void.*data,
1b3e0 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 76 61 6c 75 65 2c 20 .uint32_t.time,.uint32_t.value,.
1b400 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 uint32_t.state).{......(void)dat
1b420 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 a;......(void)time;......(void)v
1b440 61 6c 75 65 3b 00 00 00 17 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 66 69 72 73 74 3b alue;......struct.client.*first;
1b460 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6c 61 73 74 3b 00 00 00 13 20 20 ......struct.client.*last;......
1b480 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 struct.screen.*s;...-..if.(state
1b4a0 20 21 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
1b4c0 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 D)........return;......if.(!wm.s
1b4e0 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 73 el_screen)........return;......s
1b500 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 19 20 20 66 69 72 73 74 20 3d 20 66 .=.wm.sel_screen;......first.=.f
1b520 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 17 20 20 6c 61 73 74 20 3d 20 6c 61 73 74 5f irst_tiled(s);......last.=.last_
1b540 74 69 6c 65 64 28 73 29 3b 00 00 00 27 20 20 69 66 20 28 21 66 69 72 73 74 20 7c 7c 20 21 6c 61 tiled(s);...'..if.(!first.||.!la
1b560 73 74 20 7c 7c 20 66 69 72 73 74 20 3d 3d 20 6c 61 73 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 st.||.first.==.last)........retu
1b580 72 6e 3b 00 00 00 24 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 6c 61 73 74 2d 3e 74 rn;...$..wl_list_remove(&last->t
1b5a0 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 3c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 iled_link);...<..wl_list_insert(
1b5c0 66 69 72 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 26 6c 61 73 74 2d 3e 74 first->tiled_link.prev,.&last->t
1b5e0 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1e 20 20 66 6f 63 75 73 28 66 69 72 73 74 5f 74 69 6c iled_link);......focus(first_til
1b600 65 64 28 73 29 2c 20 74 72 75 65 29 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d ed(s),.true);......tile(s);....}
1b620 00 00 00 00 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 .......Mvoid.master_prev(void.*d
1b640 61 74 61 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 76 61 6c ata,.uint32_t.time,.uint32_t.val
1b660 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 ue,.uint32_t.state).{......(void
1b680 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f )data;......(void)time;......(vo
1b6a0 69 64 29 76 61 6c 75 65 3b 00 00 00 17 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 66 69 id)value;......struct.client.*fi
1b6c0 72 73 74 3b 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6c 61 73 74 3b 00 00 rst;......struct.client.*last;..
1b6e0 00 13 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3b 00 00 00 2d 20 20 69 66 20 28 73 ....struct.screen.*s;...-..if.(s
1b700 74 61 74 65 20 21 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 tate.!=.WL_KEYBOARD_KEY_STATE_PR
1b720 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 ESSED)........return;......if.(!
1b740 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 wm.sel_screen)........return;...
1b760 14 20 20 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 19 20 20 66 69 72 73 74 ...s.=.wm.sel_screen;......first
1b780 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 17 20 20 6c 61 73 74 20 3d 20 6c .=.first_tiled(s);......last.=.l
1b7a0 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 27 20 20 69 66 20 28 21 66 69 72 73 74 20 7c 7c ast_tiled(s);...'..if.(!first.||
1b7c0 20 21 6c 61 73 74 20 7c 7c 20 66 69 72 73 74 20 3d 3d 20 6c 61 73 74 29 00 00 00 0b 20 20 20 20 .!last.||.first.==.last)........
1b7e0 72 65 74 75 72 6e 3b 00 00 00 25 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 66 69 72 return;...%..wl_list_remove(&fir
1b800 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 38 20 20 77 6c 5f 6c 69 73 74 5f 69 6e st->tiled_link);...8..wl_list_in
1b820 73 65 72 74 28 26 6c 61 73 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2c 20 26 66 69 72 73 74 2d 3e sert(&last->tiled_link,.&first->
1b840 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1e 20 20 66 6f 63 75 73 28 66 69 72 73 74 5f 74 69 tiled_link);......focus(first_ti
1b860 6c 65 64 28 73 29 2c 20 74 72 75 65 29 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 led(s),.true);......tile(s);....
1b880 7d 00 00 00 00 00 00 00 4f 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 }.......Ovoid.master_resize(void
1b8a0 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
1b8c0 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 value,.uint32_t.state).{......(v
1b8e0 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 16 20 oid)time;......(void)value;.....
1b900 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 20 3d 20 64 61 74 61 3b 00 00 00 2d 20 20 69 66 20 28 73 .union.arg.*a.=.data;...-..if.(s
1b920 74 61 74 65 20 21 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 tate.!=.WL_KEYBOARD_KEY_STATE_PR
1b940 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 ESSED)........return;......if.(!
1b960 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 wm.sel_screen)........return;...
1b980 41 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 67 20 3d 20 26 77 6d A..struct.swc_rectangle.*g.=.&wm
1b9a0 2e 73 65 6c 5f 73 63 72 65 65 6e 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 .sel_screen->scr->usable_geometr
1b9c0 79 3b 00 00 00 32 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e y;...2..uint32_t.out_gaps.=.cfg.
1b9e0 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 37 20 20 75 69 gaps.+.cfg.border_width;...7..ui
1ba00 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 nt32_t.in_gaps.=.cfg.gaps.+.(cfg
1ba20 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 3e 20 20 69 6e 74 33 32 5f 74 .border_width.*.2);...>..int32_t
1ba40 20 74 6f 74 61 6c 20 3d 20 28 69 6e 74 33 32 5f 74 29 67 2d 3e 77 69 64 74 68 20 2d 20 28 69 6e .total.=.(int32_t)g->width.-.(in
1ba60 74 33 32 5f 74 29 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 1a 20 20 69 6e 74 33 32 t32_t)(out_gaps.*.2);......int32
1ba80 5f 74 20 6d 69 6e 5f 6d 61 73 74 65 72 20 3d 20 32 30 3b 00 00 00 35 20 20 69 6e 74 33 32 5f 74 _t.min_master.=.20;...5..int32_t
1baa0 20 6d 61 78 5f 6d 61 73 74 65 72 20 3d 20 74 6f 74 61 6c 20 2d 20 28 69 6e 74 33 32 5f 74 29 69 .max_master.=.total.-.(int32_t)i
1bac0 6e 5f 67 61 70 73 20 2d 20 32 30 3b 00 00 00 1e 20 20 69 66 20 28 6d 61 78 5f 6d 61 73 74 65 72 n_gaps.-.20;......if.(max_master
1bae0 20 3c 20 6d 69 6e 5f 6d 61 73 74 65 72 29 00 00 00 1c 20 20 20 20 6d 61 78 5f 6d 61 73 74 65 72 .<.min_master)........max_master
1bb00 20 3d 20 6d 69 6e 5f 6d 61 73 74 65 72 3b 00 00 00 2c 20 20 69 6e 74 33 32 5f 74 20 6d 77 20 3d .=.min_master;...,..int32_t.mw.=
1bb20 20 28 69 6e 74 33 32 5f 74 29 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 61 2d 3e 69 3b 00 00 .(int32_t)master_width.+.a->i;..
1bb40 00 16 20 20 69 66 20 28 6d 77 20 3c 20 6d 69 6e 5f 6d 61 73 74 65 72 29 00 00 00 14 20 20 20 20 ....if.(mw.<.min_master)........
1bb60 6d 77 20 3d 20 6d 69 6e 5f 6d 61 73 74 65 72 3b 00 00 00 1b 20 20 65 6c 73 65 20 69 66 20 28 6d mw.=.min_master;......else.if.(m
1bb80 77 20 3e 20 6d 61 78 5f 6d 61 73 74 65 72 29 00 00 00 14 20 20 20 20 6d 77 20 3d 20 6d 61 78 5f w.>.max_master)........mw.=.max_
1bba0 6d 61 73 74 65 72 3b 00 00 00 1e 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 75 69 6e master;......master_width.=.(uin
1bbc0 74 33 32 5f 74 29 6d 77 3b 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 t32_t)mw;......tile(wm.sel_scree
1bbe0 6e 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 32 02 00 00 00 00 00 00 n);....}5...............2.......
1bc00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 48 3b 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................H;..............
1bc20 35 81 5f d0 00 00 00 53 00 00 00 55 00 00 00 00 00 00 00 00 00 00 00 54 00 00 00 01 00 00 00 00 5._....S...U...........T........
1bc40 00 00 00 00 ff ff ff ff 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bda0 00 00 00 00 00 00 69 95 81 50 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 00 00 00 00 00 00 ......i..P......................
1bdc0 00 00 00 35 81 f5 18 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 ...5............................
1bde0 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 ...........................5._..
1be00 00 00 54 00 00 00 56 00 00 00 00 00 00 00 00 00 00 00 55 00 00 00 02 00 00 00 00 00 00 00 00 ff ..T...V...........U.............
1be20 ff ff 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 ................................
1be40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1be60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1be80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bf00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bf20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bf40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bf60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1bf80 00 69 95 81 51 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 01 00 00 .i..Q...........................
1bfa0 00 00 35 81 f5 18 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ..5.............................
1bfc0 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 ..........................5._...
1bfe0 00 55 00 00 00 57 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 01 00 00 00 00 00 00 00 00 ff ff .U...W...........V..............
1c000 ff 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 ................................
1c020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c160 69 95 81 52 04 01 00 00 00 00 00 f5 18 00 00 01 3b 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 i..R............;...............
1c180 00 f5 18 00 00 01 3c 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 31 00 00 00 00 00 00 00 ......<.................1.......
1c1a0 00 00 00 00 01 00 00 00 32 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 ........2void.toggle_float(void.
1c1c0 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f f5 18 00 00 01 *data,uint32_t.time,uint32_.....
1c1e0 32 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 2d 00 00 00 00 00 00 00 00 00 00 00 01 00 2.................-.............
1c200 00 01 fb 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 ...void.mouse_move(void.*data,ui
1c220 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 nt32_t.time,uint32_t.value,uint3
1c240 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 2_t.state){(void)data;(void)time
1c260 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 3d 3d 57 4c 5f 50 4f 49 4e 54 45 ;(void)value;if(state==WL_POINTE
1c280 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 7b 69 66 28 21 77 6d 2e 73 R_BUTTON_STATE_PRESSED){if(!wm.s
1c2a0 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 75 72 6e 3b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 el_client).return;if(!wm.sel_cli
1c2c0 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 7b 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 ent->floating){set_floating(wm.s
1c2e0 65 6c 5f 63 6c 69 65 6e 74 2c 74 72 75 65 2c 66 61 6c 73 65 29 3b 74 69 6c 65 28 77 6d 2e 73 65 el_client,true,false);tile(wm.se
1c300 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 7d 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d l_client->scr);}.wm.grab.active=
1c320 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 3d 66 61 6c 73 65 3b 20 77 6d 2e 67 true;.wm.grab.resize=false;.wm.g
1c340 72 61 62 2e 63 3d 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f rab.c=wm.sel_client;.swc_window_
1c360 62 65 67 69 6e 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 7d 20 65 6c 73 begin_move(wm.grab.c->win);}.els
1c380 65 20 7b 69 66 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 7c 7c 20 77 6d 2e 67 72 61 62 e.{if(!wm.grab.active.||.wm.grab
1c3a0 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 20 72 65 74 75 72 6e 3b 20 73 .resize.||.!wm.grab.c).return;.s
1c3c0 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 wc_window_end_move(wm.grab.c->wi
1c3e0 6e 29 3b 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 66 61 6c 73 65 3b 20 77 6d 2e 67 f5 18 n);.wm.grab.active=false;.wm.g..
1c400 00 00 01 2e 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 2c 00 00 00 00 00 00 00 00 00 00 .....................,..........
1c420 00 01 00 00 00 d5 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 ......void.kill_sel(void.*data,u
1c440 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 int32_t.time,uint32_t.value,uint
1c460 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 32_t.state){(void)data;(void)tim
1c480 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 59 42 4f e;(void)value;if(state!=WL_KEYBO
1c4a0 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 69 66 ARD_KEY_STATE_PRESSED).return;if
1c4c0 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 75 72 6e 3b 20 73 77 63 5f 77 69 6e (!wm.sel_client).return;.swc_win
1c4e0 64 6f 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 f5 18 00 00 01 dow_close(wm.sel_client->wi.....
1c500 2d 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 00 e9 00 00 00 00 00 00 00 00 00 00 00 01 00 -...............................
1c520 00 00 08 20 20 69 66 20 28 21 77 f5 18 00 00 00 ea 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 .....if.(!w.....................
1c540 00 00 85 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 1e 20 20 69 66 20 28 21 73 77 63 5f 69 6e .....................if.(!swc_in
1c560 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 f5 18 00 00 00 86 00 00 00 00 00 00 00 00 00 itialize(wm.dpy,................
1c580 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 f5 18 00 00 00 01 00 ................................
1c5a0 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 00 00 00 00 00 00 00 ...........5....................
1c5c0 00 00 00 85 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 ................................
1c5e0 00 00 00 f5 18 00 00 00 00 85 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00 08 00 00 .........................d......
1c600 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 00 f5 18 00 00 00 00 e9 ................................
1c620 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 43 00 00 00 d5 00 00 00 00 1c 00 00 00 00 00 00 00 ...............C................
1c640 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 00 f5 18 00 00 00 00 2c 01 00 00 d5 00 00 00 00 00 00 .....................,..........
1c660 00 00 00 00 00 01 00 00 00 fb 01 00 00 00 28 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 ..............(.................
1c680 00 00 00 00 00 f5 18 00 00 00 00 2d 01 00 00 fb 01 00 00 00 00 00 00 00 00 00 00 04 00 00 00 32 ...........-...................2
1c6a0 00 00 00 00 2a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 f5 18 00 00 00 ....*...........................
1c6c0 00 31 01 00 00 32 00 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00 00 2e 00 00 00 00 00 .1...2..........................
1c6e0 00 00 00 00 00 00 00 00 00 27 02 00 00 00 00 00 00 35 81 5f d0 00 00 00 56 00 00 00 58 00 00 00 .........'.......5._....V...X...
1c700 00 00 00 00 00 00 00 00 57 00 00 01 3c 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........W...<...................
1c720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1c860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 53 04 01 00 00 00 .......................i..S.....
1c880 1b 00 f5 18 00 00 01 e5 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 01 e4 00 00 ................................
1c8a0 00 00 00 00 00 00 00 00 00 01 00 00 00 01 7d f5 18 00 00 00 23 00 00 00 00 00 00 00 00 00 00 01 ..............}.....#...........
1c8c0 19 00 00 00 54 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f ....Tvoid.toggle_float_global(vo
1c8e0 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f id.*data,.uint32_t.time,.uint32_
1c900 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 t.value,.uint32_t.state);...Lvoi
1c920 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 d.master_next(void.*data,.uint32
1c940 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f _t.time,.uint32_t.value,.uint32_
1c960 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f t.state);...Lvoid.master_prev(vo
1c980 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f id.*data,.uint32_t.time,.uint32_
1c9a0 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4e 76 6f 69 t.value,.uint32_t.state);...Nvoi
1c9c0 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 d.master_resize(void.*data,.uint
1c9e0 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32_t.time,.uint32_t.value,.uint3
1ca00 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 77 69 2_t.state);.......,struct.swc_wi
1ca20 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 ndow_handler.window_handler.=.{.
1ca40 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 ........destroy.=.on_win_destroy
1ca60 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 ,.........entered.=.on_win_enter
1ca80 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 ed,....};.......,struct.swc_scre
1caa0 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 en_handler.screen_handler.=.{...
1cac0 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f !.....destroy.=.on_screen_destro
1cae0 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 y,...A.....usable_geometry_chang
1cb00 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 ed.=.on_screen_usable_geometry_c
1cb20 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 hanged,....};.......!static.uint
1cb40 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 0d 73 74 72 75 63 74 32_t.master_width.=.0;....struct
1cb60 20 77 6d 20 77 6d 3b 00 00 00 3d 73 74 72 75 63 74 20 7a 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 .wm.wm;...=struct.zwlr_screencop
1cb80 79 5f 6d 61 6e 61 67 65 72 5f 76 31 20 2a 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 y_manager_v1.*screencopy_manager
1cba0 20 3d 20 4e 55 4c 4c 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 .=.NULL;.......$const.struct.swc
1cbc0 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d 20 20 20 20 2e 6e 65 77 _manager.manager.=.{.........new
1cbe0 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 1d 20 20 20 20 2e 6e 65 _screen.=.new_screen,.........ne
1cc00 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 1d 20 20 20 20 2e 6e w_window.=.new_window,.........n
1cc20 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 02 7d 3b 00 00 00 ew_device.=.new_device,....};...
1cc40 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c ....1static.void.focus(struct.cl
1cc60 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 14 20 20 69 66 20 28 ient.*c,.bool.raise).{......if.(
1cc80 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 57 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 wm.sel_client)...W....swc_window
1cca0 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 _set_border(wm.sel_client->win,.
1ccc0 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 66 67 2e 62 6f 72 64 65 cfg.border_col_normal,.cfg.borde
1cce0 72 5f 77 69 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 4b 20 20 20 20 73 77 63 r_width);......if.(c)...K....swc
1cd00 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 _window_set_border(c->win,.cfg.b
1cd20 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 order_col_active,.cfg.border_wid
1cd40 74 68 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 th);......if.(raise.&&.c.&&.c->f
1cd60 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 loating)........set_floating(c,.
1cd80 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 true,.true);...&..swc_window_foc
1cda0 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e 73 us(c.?.c->win.:.NULL);......wm.s
1cdc0 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 73 74 61 74 69 el_client.=.c;....}.......+stati
1cde0 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 c.void.on_screen_destroy(void.*d
1ce00 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 ata).{......struct.screen.*s.=.d
1ce20 61 74 61 3b 00 00 00 11 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 ata;......if.(!s).return;......w
1ce40 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 l_list_remove(&s->link);......if
1ce60 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b 00 00 00 23 20 20 20 20 69 .(wm.sel_screen.==.s).{...#....i
1ce80 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 f.(wl_list_empty(&wm.screens))..
1cea0 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 ........wm.sel_screen.=.NULL;...
1cec0 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e .....else...L......wm.sel_screen
1cee0 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 .=.wl_container_of(wm.screens.ne
1cf00 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b 29 3b 00 00 00 03 20 20 7d xt,.wm.sel_screen,.link);......}
1cf20 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 69 ......free(s);....}.......;stati
1cf40 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 c.void.on_screen_usable_geometry
1cf60 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 _changed(void.*data).{......stru
1cf80 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 ct.screen.*s.=.data;......tile(s
1cfa0 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 );....}.......(static.void.on_wi
1cfc0 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 n_destroy(void.*data).{......str
1cfe0 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 16 20 20 73 74 72 75 63 uct.client.*c.=.data;......struc
1d000 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 00 11 20 20 69 66 20 28 21 63 29 20 72 65 74 t.client.*next;......if.(!c).ret
1d020 75 72 6e 3b 00 00 00 29 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 urn;...)..if.(wm.grab.active.&&.
1d040 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 wm.grab.c.==.c).{........wm.grab
1d060 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e .active.=.false;........wm.grab.
1d080 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f c.=.NULL;......}......if.(c->flo
1d0a0 61 74 69 6e 67 29 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d ating)...#....wl_list_remove(&c-
1d0c0 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 >float_link);......else...#....w
1d0e0 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 l_list_remove(&c->tiled_link);..
1d100 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 ....if.(wm.sel_client.==.c).{...
1d120 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 1f 20 20 .....wm.sel_client.=.NULL;......
1d140 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 ..next.=.first_float(c->scr);...
1d160 0e 20 20 20 20 69 66 20 28 21 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 .....if.(!next)...!......next.=.
1d180 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 first_tiled(c->scr);........focu
1d1a0 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 s(next,.true);......}......tile(
1d1c0 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 c->scr);......free(c);....}.....
1d1e0 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f ..(static.void.on_win_entered(vo
1d200 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1d 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 id.*data).{......if.(wm.grab.act
1d220 69 76 65 29 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 ive).return;......struct.client.
1d240 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 *c.=.data;......focus(c,.true);.
1d260 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f ...}........static.void.setup(vo
1d280 69 64 29 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 id).{......wm.dpy.=.wl_display_c
1d2a0 72 65 61 74 65 28 29 3b 00 00 00 3d 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 20 64 69 65 28 45 reate();...=..if.(!wm.dpy).die(E
1d2c0 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 XIT_FAILURE,."wl_display_create.
1d2e0 66 61 69 6c 65 64 22 29 3b 00 00 00 00 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 failed");..........wl_list_init(
1d300 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 &wm.screens);......wl_list_init(
1d320 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 &wm.tiled);......wl_list_init(&w
1d340 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 m.floating);......wm.sel_client.
1d360 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c =.NULL;......wm.sel_screen.=.NUL
1d380 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 L;......wm.grab.active.=.false;.
1d3a0 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 .....wm.grab.resize.=.false;....
1d3c0 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 00 00 00 00 31 20 20 77 6d 2e ..wm.grab.c.=.NULL;.......1..wm.
1d3e0 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c ev_loop.=.wl_display_get_event_l
1d400 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 00 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 oop(wm.dpy);.......4..if.(!swc_i
1d420 6e 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d nitialize(wm.dpy,.wm.ev_loop,.&m
1d440 61 6e 61 67 65 72 29 29 00 00 00 2f 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 anager)).../....die(EXIT_FAILURE
1d460 2c 20 22 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 00 00 ,."swc_initialize.failed");.....
1d480 00 00 10 20 20 73 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 00 00 00 00 38 20 20 63 6f 6e .....setup_binds();.......8..con
1d4a0 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 st.char.*sock.=.wl_display_add_s
1d4c0 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 44 20 20 69 66 20 28 21 73 6f ocket_auto(wm.dpy);...D..if.(!so
1d4e0 63 6b 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 ck).die(EXIT_FAILURE,."wl_displa
1d500 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 29 3b 00 00 00 00 00 y_add_socket_auto.failed");.....
1d520 00 00 25 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 ..%..setenv("WAYLAND_DISPLAY",.s
1d540 6f 63 6b 2c 20 31 29 3b 00 00 00 2d 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c ock,.1);...-.._log(stderr,."WAYL
1d560 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 00 00 00 00 AND_DISPLAY=%s\n",.sock);.......
1d580 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 ...signal(SIGINT,.sig_handler);.
1d5a0 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 .....signal(SIGTERM,.sig_handler
1d5c0 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 );......signal(SIGQUIT,.sig_hand
1d5e0 6c 65 72 29 3b 00 00 00 00 00 00 00 41 20 20 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 ler);.......A..screencopy_manage
1d600 72 20 3d 20 7a 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 5f 76 31 5f 63 r.=.zwlr_screencopy_manager_v1_c
1d620 72 65 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 1a 20 20 69 66 20 28 21 73 63 72 65 65 6e 63 reate(wm.dpy);......if.(!screenc
1d640 6f 70 79 5f 6d 61 6e 61 67 65 72 29 00 00 00 3d 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 opy_manager)...=....die(EXIT_FAI
1d660 4c 55 52 45 2c 20 22 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 73 63 72 65 65 6e 63 6f LURE,."Failed.to.create.screenco
1d680 70 79 20 6d 61 6e 61 67 65 72 22 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 py.manager");....}........static
1d6a0 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 3f 20 20 66 .void.setup_binds(void).{...?..f
1d6c0 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 6f 66 28 62 69 6e or.(size_t.i.=.0;.i.<.sizeof(bin
1d6e0 64 73 29 2f 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 ds)/sizeof(binds[0]);.i++).{...%
1d700 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 ....const.struct.bind.*b.=.&bind
1d720 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e s[i];...G....swc_add_binding(b->
1d740 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 type,.b->mods,.b->ksym,.b->fn,.(
1d760 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 void.*)&b->arg);......}....}....
1d780 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 ...Gstatic.void.set_floating(str
1d7a0 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f uct.client.*c,.bool.floating,.bo
1d7c0 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 11 20 20 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b ol.raise).{......if.(!c).return;
1d7e0 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 ......if.(floating).{........if.
1d800 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f (!c->floating).{..........c->flo
1d820 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 ating.=.true;...%......wl_list_r
1d840 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 emove(&c->tiled_link);...3......
1d860 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d wl_list_insert(&wm.floating,.&c-
1d880 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 >float_link);........}.else.if.(
1d8a0 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 raise).{...%......wl_list_remove
1d8c0 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 (&c->float_link);...3......wl_li
1d8e0 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 st_insert(&wm.floating,.&c->floa
1d900 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e t_link);........}...#....swc_win
1d920 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 dow_set_stacked(c->win);......}.
1d940 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b else.{........if.(c->floating).{
1d960 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 ..........c->floating.=.false;..
1d980 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 .%......wl_list_remove(&c->float
1d9a0 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 _link);...0......wl_list_insert(
1d9c0 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 &wm.tiled,.&c->tiled_link);.....
1d9e0 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 ...}...!....swc_window_set_tiled
1da00 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 (c->win);......}....}.......$sta
1da20 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 tic.void.tile(struct.screen.*s).
1da40 7b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 74 {......struct.client.*c;......st
1da60 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 73 74 ruct.swc_rectangle.geom;...!..st
1da80 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 00 00 ruct.swc_rectangle.*scr_geom;...
1daa0 31 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 1..int32_t.out_gaps.=.cfg.gaps.+
1dac0 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f 74 20 .cfg.border_width;...6..int32_t.
1dae0 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 72 in_gaps.=.cfg.gaps.+.(cfg.border
1db00 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 3b 00 _width.*.2);......int32_t.x,.y;.
1db20 00 00 10 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 68 3b 00 00 00 11 20 20 69 66 20 28 21 73 29 .....uint32_t.w,.h;......if.(!s)
1db40 20 72 65 74 75 72 6e 3b 00 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 .return;...&..scr_geom.=.&s->scr
1db60 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 6e ->usable_geometry;......size_t.n
1db80 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 .=.0;...E..wl_list_for_each(c,.&
1dba0 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c wm.tiled,.tiled_link).if.(is_til
1dbc0 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 15 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 20 ed(c,.s)).n++;......if.(n.==.0).
1dbe0 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f return;......x.=.scr_geom->x.+.o
1dc00 75 74 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 ut_gaps;......y.=.scr_geom->y.+.
1dc20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 out_gaps;...'..w.=.scr_geom->wid
1dc40 74 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 28 20 20 68 20 3d 20 73 63 th.-.(out_gaps.*.2);...(..h.=.sc
1dc60 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b r_geom->height.-.(out_gaps.*.2);
1dc80 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 ......if.(n.==.1).{...0....wl_li
1dca0 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f st_for_each(c,.&wm.tiled,.tiled_
1dcc0 6c 69 6e 6b 29 20 7b 00 00 00 24 20 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 link).{...$......if.(!is_tiled(c
1dce0 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 3e 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 ,.s)).continue;...>......geom.x.
1dd00 3d 20 78 3b 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b =.x;.geom.y.=.y;.geom.width.=.w;
1dd20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 .geom.height.=.h;...-......swc_w
1dd40 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d indow_set_geometry(c->win,.&geom
1dd60 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 );..........return;........}....
1dd80 20 20 7d 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c ..}......size_t.i.=.0;......wl_l
1dda0 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 ist_for_each(c,.&wm.tiled,.tiled
1ddc0 5f 6c 69 6e 6b 29 20 7b 00 00 00 22 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c _link).{..."....if.(!is_tiled(c,
1dde0 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 .s)).continue;........if.(master
1de00 5f 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 _width.==.0)...>......master_wid
1de20 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 th.=.((w.-.in_gaps).*.cfg.master
1de40 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 _width)./.100;........if.(i.==.0
1de60 29 20 7b 00 00 00 49 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 20 67 65 6f 6d 2e 79 20 ).{...I......geom.x.=.x;.geom.y.
1de80 3d 20 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 20 =.y;.geom.width.=.master_width;.
1dea0 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 7b geom.height.=.h;........}.else.{
1dec0 00 00 00 1e 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 ..........uint32_t.stackn.=.n.-.
1dee0 31 3b 00 00 00 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 31 1;..........uint32_t.idx.=.i.-.1
1df00 3b 00 00 00 40 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 ;...@......uint32_t.stack_height
1df20 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 2a 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 2f 73 74 .=.(h.-.in_gaps*(stackn.-.1))/st
1df40 61 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 ackn;...*......geom.x.=.x.+.mast
1df60 65 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 34 20 20 20 20 20 20 67 65 6f er_width.+.in_gaps;...4......geo
1df80 6d 2e 79 20 3d 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b m.y.=.y.+.(idx.*.(stack_height.+
1dfa0 20 69 6e 5f 67 61 70 73 29 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 .in_gaps));..........geom.width.
1dfc0 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 =.w.-.master_width.-.in_gaps;...
1dfe0 21 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 !......geom.height.=.stack_heigh
1e000 74 3b 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 t;........}...+....swc_window_se
1e020 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 t_geometry(c->win,.&geom);......
1e040 20 20 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e ..i++;......}....}.......)void.n
1e060 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 ew_screen(struct.swc_screen.*scr
1e080 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c ).{...(..struct.screen.*s.=.mall
1e0a0 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 38 20 20 69 66 20 28 21 73 29 20 64 69 65 oc(sizeof(*s));...8..if.(!s).die
1e0c0 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f (EXIT_FAILURE,."new.screen.mallo
1e0e0 63 20 66 61 69 6c 65 64 22 29 3b 00 00 00 37 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 20 73 c.failed");...7..s->scr.=.scr;.s
1e100 2d 3e 78 20 3d 20 30 3b 20 73 2d 3e 79 20 3d 20 30 3b 20 73 2d 3e 77 20 3d 20 30 3b 20 73 2d 3e ->x.=.0;.s->y.=.0;.s->w.=.0;.s->
1e120 68 20 3d 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 h.=.0;...(..wl_list_insert(&wm.s
1e140 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 28 20 20 69 66 20 28 21 77 6d 2e creens,.&s->link);...(..if.(!wm.
1e160 73 65 6c 5f 73 63 72 65 65 6e 29 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 sel_screen).wm.sel_screen.=.s;..
1e180 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 .2..swc_screen_set_handler(scr,.
1e1a0 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 &screen_handler,.s);.../.._log(s
1e1c0 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 tderr,."new_screen=%p\n",.(void.
1e1e0 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e *)scr);....}.......)void.new_win
1e200 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 dow(struct.swc_window.*win).{...
1e220 28 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a (..struct.client.*c.=.malloc(siz
1e240 65 6f 66 28 2a 63 29 29 3b 00 00 00 34 20 20 69 66 20 28 21 63 29 20 64 69 65 28 45 58 49 54 5f eof(*c));...4..if.(!c).die(EXIT_
1e260 46 41 49 4c 55 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 61 69 6c 65 64 22 29 FAILURE,."malloc.client.failed")
1e280 3b 00 00 00 5c 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 20 63 2d 3e 73 63 72 20 3d 20 77 6d ;...\..c->win.=.win;.c->scr.=.wm
1e2a0 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 20 .sel_screen;.c->mapped.=.false;.
1e2c0 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 c->floating.=.wm.global_floating
1e2e0 3b 00 00 00 27 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 3b 20 63 2d ;...'..c->fullscreen.=.false;.c-
1e300 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e >ws.=.false;......if.(c->floatin
1e320 67 29 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 g).{...1....wl_list_insert(&wm.f
1e340 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 loating,.&c->float_link);...!...
1e360 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 .wl_list_init(&c->tiled_link);..
1e380 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e .4....swc_window_set_handler(win
1e3a0 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 ,.&window_handler,.c);........sw
1e3c0 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 c_window_set_stacked(win);......
1e3e0 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 }.else.{........wl_list_insert(&
1e400 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 wm.tiled,.&c->tiled_link);...!..
1e420 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 ..wl_list_init(&c->float_link);.
1e440 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 ..4....swc_window_set_handler(wi
1e460 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 n,.&window_handler,.c);........s
1e480 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d wc_window_set_tiled(win);......}
1e4a0 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 ......swc_window_show(win);.....
1e4c0 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 .focus(c,.true);......tile(wm.se
1e4e0 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 l_screen);.../.._log(stderr,."ne
1e500 77 5f 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 w_window=%p\n",.(void.*)win);...
1e520 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 .}.......;void.new_device(struct
1e540 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 .libinput_device.*dev).{.(void)d
1e560 65 76 3b 20 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 ev;.}.......Lvoid.focus_next(voi
1e580 64 20 2a 64 61 74 61 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 d.*data,.uint32_t.time,.uint32_t
1e5a0 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 26 20 20 28 .value,.uint32_t.state).{...&..(
1e5c0 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c void)data;.(void)time;.(void)val
1e5e0 75 65 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 ue;...5..if.(state.!=.WL_KEYBOAR
1e600 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 00 1d D_KEY_STATE_PRESSED).return;....
1e620 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e 3b 00 00 00 ..if.(!wm.sel_screen).return;...
1e640 23 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 #..struct.screen.*s.=.wm.sel_scr
1e660 65 65 6e 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 61 20 een;......struct.client.*c;...a.
1e680 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 20 63 20 3d 20 66 69 72 73 74 .if.(!wm.sel_client).{.c.=.first
1e6a0 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 20 28 21 63 29 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c _float(s);.if.(!c).c.=.first_til
1e6c0 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 20 7d ed(s);.focus(c,false);.return;.}
1e6e0 00 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e ......if.(wm.sel_client->floatin
1e700 67 29 20 7b 00 00 00 4a 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 g).{...J....for.(c.=.wl_containe
1e720 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e r_of(wm.sel_client->float_link.n
1e740 65 78 74 2c 63 2c 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 5e 20 20 20 20 20 20 20 20 20 26 ext,c,float_link);...^.........&
1e760 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 20 63 c->float_link.!=.&wm.floating;.c
1e780 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b .=.wl_container_of(c->float_link
1e7a0 2e 6e 65 78 74 2c 63 2c 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 34 20 20 20 20 20 20 69 66 .next,c,float_link))...4......if
1e7c0 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 73 29 29 20 7b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 .(is_float(c,s)).{.focus(c,false
1e7e0 29 3b 20 72 65 74 75 72 6e 3b 20 7d 00 00 00 4e 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 );.return;.}...N....c.=.first_ti
1e800 6c 65 64 28 73 29 3b 20 69 66 28 21 63 29 20 63 3d 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b led(s);.if(!c).c=first_float(s);
1e820 20 69 66 28 63 29 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 00 00 .if(c).focus(c,false);.return;..
1e840 00 03 20 20 7d 00 00 00 48 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 ....}...H..for.(c.=.wl_container
1e860 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 _of(wm.sel_client->tiled_link.ne
1e880 78 74 2c 63 2c 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 59 20 20 20 20 20 20 20 26 63 2d 3e xt,c,tiled_link);...Y.......&c->
1e8a0 74 69 6c 65 64 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 20 63 20 3d 20 77 6c 5f tiled_link.!=.&wm.tiled;.c.=.wl_
1e8c0 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c container_of(c->tiled_link.next,
1e8e0 63 2c 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 32 20 20 20 20 69 66 20 28 69 73 5f 74 69 6c c,tiled_link))...2....if.(is_til
1e900 65 64 28 63 2c 73 29 29 20 7b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 ed(c,s)).{.focus(c,false);.retur
1e920 6e 3b 20 7d 00 00 00 3e 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 n;.}...>..c.=.first_float(s);.if
1e940 28 21 63 29 20 63 3d 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 66 (!c).c=first_tiled(s);.focus(c,f
1e960 61 6c 73 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 49 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 alse);....}.......Ivoid.focus_pr
1e980 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 ev(void.*data,uint32_t.time,uint
1e9a0 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 26 32_t.value,uint32_t.state).{...&
1e9c0 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 ..(void)data;.(void)time;.(void)
1e9e0 76 61 6c 75 65 3b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 value;...5..if.(state.!=.WL_KEYB
1ea00 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 OARD_KEY_STATE_PRESSED).return;.
1ea20 00 00 1d 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e 3b .....if.(!wm.sel_screen).return;
1ea40 00 00 00 23 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f ...#..struct.screen.*s.=.wm.sel_
1ea60 73 63 72 65 65 6e 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 screen;......struct.client.*c;..
1ea80 00 61 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 20 63 20 3d 20 66 69 .a..if.(!wm.sel_client).{.c.=.fi
1eaa0 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 20 28 21 63 29 20 63 20 3d 20 66 69 72 73 74 5f rst_float(s);.if.(!c).c.=.first_
1eac0 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e tiled(s);.focus(c,false);.return
1eae0 3b 20 7d 00 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 ;.}......if.(wm.sel_client->floa
1eb00 74 69 6e 67 29 20 7b 00 00 00 47 20 20 20 20 66 6f 72 28 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 ting).{...G....for(c=wl_containe
1eb20 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 r_of(wm.sel_client->float_link.p
1eb40 72 65 76 2c 63 2c 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 58 20 20 20 20 20 20 20 20 26 63 rev,c,float_link);...X........&c
1eb60 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 21 3d 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 63 3d 77 6c 5f ->float_link!=&wm.floating;c=wl_
1eb80 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c container_of(c->float_link.prev,
1eba0 63 2c 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 2f 20 20 20 20 20 20 69 66 28 69 73 5f 66 6c c,float_link)).../......if(is_fl
1ebc0 6f 61 74 28 63 2c 73 29 29 7b 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 72 65 74 75 72 6e 3b oat(c,s)){focus(c,false);return;
1ebe0 7d 00 00 00 4b 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 69 66 28 21 }...K....c.=.last_tiled(s);.if(!
1ec00 63 29 63 3d 6c 61 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 28 63 29 20 66 6f 63 75 73 28 63 c)c=last_float(s);.if(c).focus(c
1ec20 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d 00 00 00 45 20 20 66 6f 72 ,false);.return;......}...E..for
1ec40 28 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 (c=wl_container_of(wm.sel_client
1ec60 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 63 2c 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b ->tiled_link.prev,c,tiled_link);
1ec80 00 00 00 53 20 20 20 20 20 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 21 3d 26 77 6d 2e 74 69 ...S......&c->tiled_link!=&wm.ti
1eca0 6c 65 64 3b 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c led;c=wl_container_of(c->tiled_l
1ecc0 69 6e 6b 2e 70 72 65 76 2c 63 2c 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 2d 20 20 20 20 69 ink.prev,c,tiled_link))...-....i
1ece0 66 28 69 73 5f 74 69 6c 65 64 28 63 2c 73 29 29 7b 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b f(is_tiled(c,s)){focus(c,false);
1ed00 72 65 74 75 72 6e 3b 7d 00 00 00 39 20 20 63 3d 6c 61 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 return;}...9..c=last_float(s);.i
1ed20 66 28 21 63 29 63 3d 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 66 61 f(!c)c=last_tiled(s);.focus(c,fa
1ed40 6c 73 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 d9 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 lse);....}........void.kill_sel(
1ed60 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f void.*data,uint32_t.time,uint32_
1ed80 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 t.value,uint32_t.state){(void)da
1eda0 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 ta;(void)time;(void)value;if(sta
1edc0 74 65 21 3d 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 te!=WL_KEYBOARD_KEY_STATE_PRESSE
1ede0 44 29 20 72 65 74 75 72 6e 3b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 D).return;if(!wm.sel_client).ret
1ee00 75 72 6e 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 urn;.swc_window_close(wm.sel_cli
1ee20 65 6e 74 2d 3e 77 69 6e 29 3b 7d 00 00 02 08 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 ent->win);}....void.mouse_move(v
1ee40 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 oid.*data,uint32_t.time,uint32_t
1ee60 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 .value,uint32_t.state){(void)dat
1ee80 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 a;(void)time;(void)value;if(stat
1eea0 65 3d 3d 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 e==WL_POINTER_BUTTON_STATE_PRESS
1eec0 45 44 29 7b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 75 72 6e 3b 69 66 ED){if(!wm.sel_client).return;if
1eee0 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 7b 73 65 74 5f 66 (!wm.sel_client->floating){set_f
1ef00 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 74 72 75 65 2c 66 61 6c 73 65 loating(wm.sel_client,true,false
1ef20 29 3b 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 7d 20 77 6d 2e );tile(wm.sel_client->scr);}.wm.
1ef40 67 72 61 62 2e 61 63 74 69 76 65 3d 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 grab.active=true;.wm.grab.resize
1ef60 3d 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b =false;.wm.grab.c=wm.sel_client;
1ef80 20 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 .swc_window_begin_move(wm.grab.c
1efa0 2d 3e 77 69 6e 29 3b 7d 20 65 6c 73 65 20 7b 69 66 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 ->win);}.else.{if(!wm.grab.activ
1efc0 65 20 7c 7c 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e e.||.wm.grab.resize.||.!wm.grab.
1efe0 63 29 20 72 65 74 75 72 6e 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 6d 6f 76 65 28 77 c).return;.swc_window_end_move(w
1f000 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 66 m.grab.c->win);.wm.grab.active=f
1f020 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 4e 55 4c 4c 3b 7d 7d 00 00 02 3b 76 6f 69 64 20 alse;.wm.grab.c=NULL;}}...;void.
1f040 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 mouse_resize(void.*data,uint32_t
1f060 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 .time,uint32_t.value,uint32_t.st
1f080 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 ate){(void)data;(void)time;(void
1f0a0 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 3d 3d 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 )value;if(state==WL_POINTER_BUTT
1f0c0 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 7b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 ON_STATE_PRESSED){if(!wm.sel_cli
1f0e0 65 6e 74 29 20 72 65 74 75 72 6e 3b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 ent).return;if(!wm.sel_client->f
1f100 6c 6f 61 74 69 6e 67 29 7b 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 loating){set_floating(wm.sel_cli
1f120 65 6e 74 2c 74 72 75 65 2c 66 61 6c 73 65 29 3b 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 ent,true,false);tile(wm.sel_clie
1f140 6e 74 2d 3e 73 63 72 29 3b 7d 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 74 72 75 65 3b 20 nt->scr);}.wm.grab.active=true;.
1f160 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 3d 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 77 wm.grab.resize=true;.wm.grab.c=w
1f180 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 72 m.sel_client;.swc_window_begin_r
1f1a0 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 2c 53 57 43 5f 57 49 4e 44 4f 57 5f esize(wm.grab.c->win,SWC_WINDOW_
1f1c0 45 44 47 45 5f 52 49 47 48 54 7c 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 42 4f 54 54 4f EDGE_RIGHT|SWC_WINDOW_EDGE_BOTTO
1f1e0 4d 29 3b 7d 20 65 6c 73 65 20 7b 69 66 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 7c 7c M);}.else.{if(!wm.grab.active.||
1f200 20 21 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 20 .!wm.grab.resize.||.!wm.grab.c).
1f220 72 65 74 75 72 6e 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 72 65 73 69 7a 65 28 77 6d return;.swc_window_end_resize(wm
1f240 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 66 61 .grab.c->win);.wm.grab.active=fa
1f260 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 4e 55 4c 4c 3b 7d 7d 00 00 00 8f 76 6f 69 64 20 71 lse;.wm.grab.c=NULL;}}....void.q
1f280 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e uit(void.*data,uint32_t.time,uin
1f2a0 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 t32_t.value,uint32_t.state){(voi
1f2c0 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 28 76 d)data;(void)time;(void)value;(v
1f2e0 6f 69 64 29 73 74 61 74 65 3b 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 28 oid)state;.wl_display_terminate(
1f300 77 6d 2e 64 70 79 29 3b 7d 00 00 00 f3 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 wm.dpy);}....void.spawn(void.*da
1f320 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c ta,uint32_t.time,uint32_t.value,
1f340 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 75 6e 69 6f 6e 20 61 72 67 20 2a 61 3d 64 61 74 uint32_t.state){union.arg.*a=dat
1f360 61 3b 20 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a 63 6d 64 3d 28 63 68 61 72 20 2a 63 6f 6e 73 74 a;.char.*const.*cmd=(char.*const
1f380 20 2a 29 61 2d 3e 76 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b .*)a->v;.(void)time;(void)value;
1f3a0 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f if(state!=WL_KEYBOARD_KEY_STATE_
1f3c0 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 20 69 66 28 66 6f 72 6b 28 29 3d 3d 30 29 7b 65 PRESSED).return;.if(fork()==0){e
1f3e0 78 65 63 76 70 28 63 6d 64 5b 30 5d 2c 63 6d 64 29 3b 20 5f 65 78 69 74 28 31 32 37 29 3b 7d 7d xecvp(cmd[0],cmd);._exit(127);}}
1f400 00 00 01 0c 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 ....void.toggle_float(void.*data
1f420 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 ,uint32_t.time,uint32_t.value,ui
1f440 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 nt32_t.state){(void)data;(void)t
1f460 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 59 ime;(void)value;if(state!=WL_KEY
1f480 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b BOARD_KEY_STATE_PRESSED).return;
1f4a0 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 72 65 74 75 72 6e 3b 20 73 65 74 5f 66 if(!wm.sel_client).return;.set_f
1f4c0 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 21 77 6d 2e 73 65 6c 5f 63 6c loating(wm.sel_client,!wm.sel_cl
1f4e0 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 2c 74 72 75 65 29 3b 20 74 69 6c 65 28 77 6d 2e 73 65 ient->floating,true);.tile(wm.se
1f500 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 7d 00 00 00 cc 76 6f 69 64 20 74 6f 67 67 6c 65 5f l_client->scr);}....void.toggle_
1f520 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 float_global(void.*data,uint32_t
1f540 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 .time,uint32_t.value,uint32_t.st
1f560 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 ate){(void)data;(void)time;(void
1f580 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 )value;if(state!=WL_KEYBOARD_KEY
1f5a0 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 20 77 6d 2e 67 6c 6f 62 61 _STATE_PRESSED).return;.wm.globa
1f5c0 6c 5f 66 6c 6f 61 74 69 6e 67 3d 21 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 7d l_floating=!wm.global_floating;}
1f5e0 00 00 00 00 00 00 00 0f 69 6e 74 20 6d 61 69 6e 28 76 6f 69 64 29 7b 00 00 00 0a 20 20 73 65 74 ........int.main(void){......set
1f600 75 70 28 29 3b 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e 64 70 79 up();......wl_display_run(wm.dpy
1f620 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d 20 20 77 6c 5f );......swc_finalize();......wl_
1f640 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 16 20 20 72 65 display_destroy(wm.dpy);......re
1f660 74 75 72 6e 20 45 58 49 54 5f 53 55 43 43 45 53 53 3b 00 00 00 01 7d 00 00 00 00 35 81 f5 18 00 turn.EXIT_SUCCESS;....}....5....
1f680 00 00 00 23 00 00 00 43 00 00 00 18 01 00 00 00 00 00 00 c1 01 00 00 01 00 00 00 fc 05 00 00 00 ...#...C........................
1f6a0 00 00 00 2b 2a 00 00 00 00 00 00 de 2d 00 00 00 00 00 00 f5 18 00 00 00 00 e4 01 00 00 01 00 00 ...+*.......-...................
1f6c0 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 da 33 00 00 00 00 00 00 00 00 00 00 00 00 00 ..................3.............
1f6e0 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 e5 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 ................................
1f700 00 00 00 00 00 00 00 db 33 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 ........3......................5
1f720 81 5f d0 00 00 00 57 00 00 00 59 00 00 00 00 00 00 00 00 00 00 00 58 00 00 01 e5 00 00 00 00 00 ._....W...Y...........X.........
1f740 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 00 00 00 00 00 ................................
1f760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f8a0 00 00 00 00 00 69 95 81 54 04 01 00 00 00 1c 00 f5 18 00 00 01 e5 00 00 00 00 00 00 00 00 00 00 .....i..T.......................
1f8c0 00 01 00 00 00 00 f5 18 00 00 01 e4 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 7d 35 81 f5 ............................}5..
1f8e0 18 00 00 00 00 e4 01 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 da 33 00 ..............................3.
1f900 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 e5 01 00 00 00 ................................
1f920 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 db 33 00 00 00 00 00 00 01 00 00 00 00 ....................3...........
1f940 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 58 00 00 00 5a 00 00 00 00 00 00 00 00 00 ...........5._....X...Z.........
1f960 00 00 59 00 00 01 e5 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 ..Y.............................
1f980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1f9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fa80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1faa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 55 04 01 00 00 00 1d 00 f5 18 00 00 .................i..U...........
1fae0 01 e5 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 01 e4 00 00 00 00 00 00 00 00 ................................
1fb00 00 00 00 01 00 00 00 01 7d 35 81 f5 18 00 00 00 00 e4 01 00 00 01 00 00 00 00 00 00 00 00 00 00 ........}5......................
1fb20 00 01 00 00 00 00 00 00 00 da 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 ..........3.....................
1fb40 00 f5 18 00 00 00 00 e5 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 db ................................
1fb60 33 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 59 00 3......................5._....Y.
1fb80 00 00 5b 00 00 00 00 00 00 00 00 00 00 00 5a 00 00 00 0e 00 00 00 00 00 00 00 00 ff ff ff ff 00 ..[...........Z.................
1fba0 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 00 00 ................................
1fbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 .............................i..
1fd00 76 04 01 00 00 00 00 00 f5 18 00 00 00 0e 00 00 00 10 00 00 01 e6 00 00 00 01 00 00 00 00 f5 18 v...............................
1fd20 00 00 00 0e 00 00 00 10 00 00 01 e5 00 00 00 00 35 81 f5 18 00 00 00 00 0e 00 00 00 00 00 00 00 ................5...............
1fd40 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 57 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................W...............
1fd60 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 0e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fd80 00 00 0f 00 00 00 57 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00 f5 18 ......W.........................
1fda0 00 00 00 00 0e 00 00 00 0d 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 07 00 00 00 64 01 00 00 ............................d...
1fdc0 00 00 00 00 02 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 5a 00 00 00 5c ....................5._....Z...\
1fde0 00 00 00 00 00 00 00 00 00 00 00 5b 00 00 00 0f 00 00 00 13 00 00 00 00 ff ff ff ff 00 01 00 00 ...........[....................
1fe00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fe80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1fee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ff40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 7d 04 01 ..........................i..}..
1ff60 00 00 00 1e 00 f5 18 00 00 00 0d 00 00 00 10 00 00 01 e6 00 00 00 02 00 00 00 28 23 69 6e 63 6c ..........................(#incl
1ff80 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 ude.<xkbcommon/xkbcommon-keysyms
1ffa0 2e 68 3e 00 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 77 6c 64 2f 77 6c 64 2e 68 3e 35 81 f5 18 00 .h>....#include.<wld/wld.h>5....
1ffc0 00 00 00 0d 00 00 00 0a 00 00 00 01 00 00 00 11 00 00 00 01 00 00 00 25 00 00 00 38 01 00 00 00 .......................%...8....
1ffe0 00 00 00 30 00 00 00 00 00 00 00 30 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 5b 00 00 00 5d 00 ...0.......0.......5._....[...].
20000 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 06 00 00 00 15 00 00 00 00 ff ff ff ff 00 01 00 00 00 ..........\.....................
20020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
200a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
200c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
200e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 9d 04 01 00 .........................i......
20180 00 00 00 00 f5 18 00 00 00 05 00 00 00 06 00 00 00 00 00 00 00 01 00 00 00 2e 23 69 6e 63 6c 75 ..........................#inclu
201a0 64 65 20 22 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 75 6e 73 74 61 62 6c 65 5f 76 31 5f 73 de."wlr_screencopy_unstable_v1_s
201c0 65 72 76 65 72 2e 68 22 35 81 f5 18 00 00 00 00 05 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 erver.h"5.......................
201e0 00 00 00 00 00 00 00 00 69 00 00 00 00 00 00 00 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........i......./...............
20200 35 81 5f d0 00 00 00 5c 00 00 00 5e 00 00 00 00 00 00 00 00 00 00 00 5d 00 00 00 03 00 00 00 15 5._....\...^...........]........
20220 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 00 00 00 00 ................................
20240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
202e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20380 00 00 00 00 00 00 69 95 81 9f 04 01 00 00 00 1f 00 f5 18 00 00 00 02 00 00 00 03 00 00 00 00 00 ......i.........................
203a0 00 00 01 00 00 00 17 23 69 6e 63 6c 75 64 65 20 22 73 63 72 65 65 6e 73 68 6f 74 2e 68 22 35 81 .......#include."screenshot.h"5.
203c0 f5 18 00 00 00 00 02 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2c 00 ..............................,.
203e0 00 00 00 00 00 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 5d 00 00 ......................5._....]..
20400 00 60 00 00 00 00 00 00 00 00 00 00 00 5e 00 00 00 35 00 00 00 19 00 00 00 00 ff ff ff ff 00 01 .`...........^...5..............
20420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
204e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 81 b5 ............................i...
20580 04 01 00 00 00 00 00 f5 18 00 00 00 34 00 00 00 35 00 00 00 00 00 00 00 01 00 00 00 3d 73 74 72 ............4...5...........=str
205a0 75 63 74 20 7a 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 5f 76 31 20 2a uct.zwlr_screencopy_manager_v1.*
205c0 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 20 3d 20 4e 55 4c 4c 3b 35 81 f5 18 00 00 screencopy_manager.=.NULL;5.....
205e0 00 00 34 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 13 08 00 00 00 00 ..4.............................
20600 00 00 3e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 5e 00 00 00 61 00 00 ..>...............5._....^...a..
20620 00 5f 00 00 00 00 00 00 00 60 00 00 00 9a 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 ._.......`......................
20640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
206a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
206c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
206e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9a 00 00 00 02 00 00 00 00 ................................
20780 00 00 00 9a 00 00 00 02 00 00 00 00 00 00 00 56 00 00 00 02 00 00 00 00 69 95 81 cb 04 01 00 00 ...............V........i.......
207a0 00 20 00 f5 18 00 00 00 99 00 00 00 9a 00 00 00 00 00 00 00 01 00 00 00 41 20 20 73 63 72 65 65 ........................A..scree
207c0 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 20 3d 20 7a 77 6c 72 5f 73 63 72 65 65 6e 63 6f 70 79 5f ncopy_manager.=.zwlr_screencopy_
207e0 6d 61 6e 61 67 65 72 5f 76 31 5f 63 72 65 61 74 65 28 77 6d 2e 64 70 79 29 3b 35 81 f5 18 00 00 manager_v1_create(wm.dpy);5.....
20800 00 00 99 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 65 11 00 00 00 00 ..........................e.....
20820 00 00 42 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 60 00 00 00 62 00 00 ..B...............5._....`...b..
20840 00 00 00 00 00 00 00 00 00 61 00 00 00 9a 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 .........a......................
20860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
208a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
208c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
208e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9a 00 00 00 00 00 00 00 00 ................................
209a0 00 00 00 9b 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 81 cf 04 01 00 00 ...............V........i.......
209c0 00 00 00 f5 18 00 00 00 99 00 00 00 9a 00 00 00 00 00 00 00 02 00 00 00 1a 20 20 69 66 20 28 21 ...........................if.(!
209e0 73 63 72 65 65 6e 63 6f 70 79 5f 6d 61 6e 61 67 65 72 29 00 00 00 3d 20 20 20 20 64 69 65 28 45 screencopy_manager)...=....die(E
20a00 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 46 61 69 6c 65 64 20 74 6f 20 63 72 65 61 74 65 20 73 XIT_FAILURE,."Failed.to.create.s
20a20 63 72 65 65 6e 63 6f 70 79 20 6d 61 6e 61 67 65 72 22 29 3b 35 81 f5 18 00 00 00 00 99 00 00 00 creencopy.manager");5...........
20a40 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 65 11 00 00 00 00 00 00 59 00 00 00 ....................e.......Y...
20a60 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 61 00 00 00 63 00 00 00 00 00 00 00 00 ............5._....a...c........
20a80 00 00 00 62 00 00 00 99 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 ...b............................
20aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9a 00 00 00 00 00 00 00 00 00 00 00 9a 00 00 ................................
20be0 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 81 d0 04 01 00 00 00 22 00 f5 18 00 .........V........i........"....
20c00 00 00 98 00 00 00 99 00 00 00 00 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 98 00 00 00 00 ...................5............
20c20 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 64 11 00 00 00 00 00 00 01 00 00 00 00 ...................d............
20c40 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 62 00 00 00 64 00 00 00 00 00 00 00 00 00 ...........5._....b...d.........
20c60 00 00 63 00 00 01 df 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 ..c.............................
20c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 82 75 04 01 00 00 00 00 00 f5 18 00 00 .................i..u...........
20de0 01 eb 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 01 ec 00 00 00 00 00 00 00 00 ................................
20e00 00 00 00 00 f5 18 00 00 01 e0 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 01 e1 ................................
20e20 00 00 00 00 00 00 00 00 00 00 00 00 f5 18 00 00 01 df 00 00 00 00 00 00 00 00 00 00 00 01 00 00 ................................
20e40 00 00 f5 18 00 00 01 df 00 00 00 00 00 00 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 df 01 00 00 ....................5...........
20e60 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 cf 32 00 00 00 00 00 00 00 00 00 00 .....................2..........
20e80 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 df 01 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20ea0 00 00 01 00 00 00 00 00 00 00 cf 32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 ...........2....................
20ec0 00 00 f5 18 00 00 00 00 e0 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0b 00 00 00 00 00 00 00 ................................
20ee0 d0 32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 96 01 00 00 00 00 00 00 f5 18 00 00 00 00 ea 01 .2..............................
20f00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 65 34 00 00 00 00 00 00 01 00 ......................e4........
20f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 63 00 00 00 65 00 00 00 00 00 00 ..............5._....c...e......
20f40 00 00 00 00 00 64 00 00 01 eb 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .....d..........................
20f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
20fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
210a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 82 78 04 01 00 00 00 24 00 f5 ....................i..x.....$..
210c0 18 00 00 01 e1 00 00 01 f4 00 00 01 eb 00 00 00 09 00 00 00 35 20 20 20 20 28 76 6f 69 64 29 64 ....................5....(void)d
210e0 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 20 28 76 ata;.(void)time;.(void)value;.(v
21100 6f 69 64 29 73 74 61 74 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 oid)state;....}.......Mvoid.mast
21120 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d er_prev(void.*data,.uint32_t.tim
21140 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 e,.uint32_t.value,.uint32_t.stat
21160 65 29 20 7b 00 00 00 35 20 20 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 e).{...5....(void)data;.(void)ti
21180 6d 65 3b 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 me;.(void)value;.(void)state;...
211a0 01 7d 00 00 00 00 00 00 00 4f 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 .}.......Ovoid.master_resize(voi
211c0 64 20 2a 64 61 74 61 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 d.*data,.uint32_t.time,.uint32_t
211e0 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 35 20 20 20 .value,.uint32_t.state).{...5...
21200 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 6f 69 64 29 76 .(void)data;.(void)time;.(void)v
21220 61 6c 75 65 3b 20 28 76 6f 69 64 29 73 74 61 74 65 3b 35 81 f5 18 00 00 00 00 e1 01 00 00 02 00 alue;.(void)state;5.............
21240 00 00 08 00 00 00 28 00 00 00 11 00 00 00 01 00 00 00 20 33 00 00 00 00 00 00 36 01 00 00 00 00 ......(............3......6.....
21260 00 00 42 01 00 00 00 00 00 00 35 81 5f d0 00 00 00 64 00 00 00 66 00 00 00 00 00 00 00 00 00 00 ..B.......5._....d...f..........
21280 00 65 00 00 00 3d 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 .e...=..........................
212a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
212c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
212e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
213a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
213c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 54 00 00 00 00 00 00 00 00 00 00 00 3d 00 00 00 00 ...............T...........=....
213e0 00 00 00 00 00 00 00 76 00 00 00 00 00 00 00 00 69 95 84 f8 04 01 00 00 00 00 00 f5 18 00 00 00 .......v........i...............
21400 3c 00 00 00 3e 00 00 01 f4 00 00 00 18 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c <...>..............if.(wm.sel_cl
21420 69 65 6e 74 29 00 00 00 44 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 ient)...D....swc_window_set_bord
21440 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 er(wm.sel_client->win,.cfg.borde
21460 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 00 00 00 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r_col_normal,...,...............
21480 20 20 20 20 20 20 20 20 20 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 ...........cfg.border_width);...
214a0 08 20 20 69 66 20 28 63 29 00 00 00 4b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f ...if.(c)...K....swc_window_set_
214c0 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 border(c->win,.cfg.border_col_ac
214e0 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 tive,.cfg.border_width);......if
21500 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 .(raise.&&.c.&&.c->floating)....
21520 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b ....set_floating(c,.true,.true);
21540 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 ...&..swc_window_focus(c.?.c->wi
21560 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 n.:.NULL);......wm.sel_client.=.
21580 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 c;....}.......+static.void.on_sc
215a0 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 reen_destroy(void.*data).{......
215c0 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 struct.screen.*s.=.data;......if
215e0 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 .(!s)........return;......wl_lis
21600 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e t_remove(&s->link);......if.(wm.
21620 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c sel_screen.==.s).{...#....if.(wl
21640 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 _list_empty(&wm.screens)).......
21660 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 ...wm.sel_screen.=.NULL;........
21680 65 6c 73 65 00 00 00 4c 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c else...L......wm.sel_screen.=.wl
216a0 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 _container_of(wm.screens.next,.w
216c0 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 m.sel_screen,.link);......}.....
216e0 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 3c 00 00 00 00 00 00 00 17 00 .free(s);....}5.......<.........
21700 00 00 01 00 00 00 00 00 00 00 00 00 00 00 c9 08 00 00 00 00 00 00 98 02 00 00 00 00 00 00 00 00 ................................
21720 00 00 00 00 00 00 35 81 5f d0 00 00 00 65 00 00 00 67 00 00 00 00 00 00 00 00 00 00 00 66 00 00 ......5._....e...g...........f..
21740 00 3c 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 .<..............................
21760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
217a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
217c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
217e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21880 00 00 00 00 00 00 00 00 00 00 00 3d 00 00 00 00 00 00 00 00 00 00 00 3c 00 00 00 00 00 00 00 00 ...........=...........<........
218a0 00 00 00 56 00 00 00 00 00 00 00 00 69 95 84 f9 04 01 00 00 00 00 00 f5 18 00 00 00 3b 00 00 00 ...V........i...............;...
218c0 3c 00 00 00 00 00 00 00 02 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 <...........1static.void.focus(s
218e0 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 truct.client.*c,.bool.raise).{..
21900 00 00 35 81 f5 18 00 00 00 00 3b 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 ..5.......;.....................
21920 00 00 97 08 00 00 00 00 00 00 33 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 ..........3...............5._...
21940 00 66 00 00 00 68 00 00 00 00 00 00 00 00 00 00 00 67 00 00 00 3c 00 00 00 00 00 00 00 00 ff ff .f...h...........g...<..........
21960 ff 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 ................................
21980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
219a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
219c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
219e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3c ...............................<
21aa0 00 00 00 00 00 00 00 00 00 00 00 3c 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 ...........<...........V........
21ac0 69 95 84 fa 04 01 00 00 00 00 00 f5 18 00 00 00 58 00 00 00 59 00 00 01 f9 00 00 00 01 00 00 00 i...............X...Y...........
21ae0 00 f5 18 00 00 00 59 00 00 00 5a 00 00 01 f9 00 00 00 00 f5 18 00 00 00 3b 00 00 00 5a 00 00 01 ......Y...Z.............;...Z...
21b00 dc 00 00 00 01 00 00 00 00 f5 18 00 00 00 3c 00 00 00 3d 00 00 01 dc 00 00 00 00 f5 18 00 00 00 ..............<...=.............
21b20 3b 00 00 00 3d 00 00 01 db 00 00 00 00 35 81 f5 18 00 00 00 00 3b 00 00 00 00 00 00 00 00 00 00 ;...=........5.......;..........
21b40 00 00 00 00 00 01 00 00 00 00 00 00 00 97 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 ................................
21b60 00 00 00 00 00 f5 18 00 00 00 00 3b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1d 00 00 00 00 ...........;....................
21b80 00 00 00 97 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e5 03 00 00 00 00 00 00 f5 18 00 00 00 ................................
21ba0 00 57 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7b 0c 00 00 00 00 00 .W.......................{......
21bc0 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 67 00 00 00 69 00 00 00 .................5._....g...i...
21be0 00 00 00 00 00 00 00 00 68 00 00 00 50 00 00 00 17 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........h...P...................
21c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
21d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 59 00 00 00 00 00 00 00 00 00 ......................Y.........
21d40 00 00 59 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 84 ff 04 01 00 00 00 ..Y...........V........i........
21d60 26 00 f5 18 00 00 00 3c 00 00 00 56 00 00 01 f8 00 00 00 1b 00 00 00 36 20 20 20 20 2f 2f 20 53 &......<...V...........6....//.S
21d80 65 74 20 6f 75 74 65 72 20 62 6f 72 64 65 72 20 64 65 66 61 75 6c 74 73 20 28 63 61 6e 20 63 75 et.outer.border.defaults.(can.cu
21da0 73 74 6f 6d 69 7a 65 20 6c 61 74 65 72 29 00 00 00 30 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6f stomize.later)...0....uint32_t.o
21dc0 75 74 65 72 5f 63 6f 6c 6f 72 20 3d 20 30 78 30 30 30 30 30 30 46 46 3b 20 20 2f 2f 20 62 6c 61 uter_color.=.0x000000FF;..//.bla
21de0 63 6b 00 00 00 3a 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 65 72 5f 77 69 64 74 68 20 3d ck...:....uint32_t.outer_width.=
21e00 20 30 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6e 6f 20 6f 75 74 65 72 20 62 6f 72 64 65 72 .0;...........//.no.outer.border
21e20 00 00 00 00 00 00 00 16 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 ............if.(wm.sel_client)..
21e40 00 1e 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 ..........swc_window_set_border(
21e60 00 00 00 1f 20 20 20 20 20 20 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 ................wm.sel_client->w
21e80 69 6e 2c 00 00 00 3a 20 20 20 20 20 20 20 20 20 20 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f in,...:............cfg.border_co
21ea0 6c 5f 6e 6f 72 6d 61 6c 2c 20 20 20 2f 2f 20 69 6e 6e 65 72 20 62 6f 72 64 65 72 20 63 6f 6c 6f l_normal,...//.inner.border.colo
21ec0 72 00 00 00 3a 20 20 20 20 20 20 20 20 20 20 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 r...:............cfg.border_widt
21ee0 68 2c 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 6e 65 72 20 62 6f 72 64 65 72 20 77 69 64 74 68 00 h,........//.inner.border.width.
21f00 00 00 3a 20 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 20 20 20 20 ..:............outer_color,.....
21f20 20 20 20 20 20 20 20 20 2f 2f 20 6f 75 74 65 72 20 62 6f 72 64 65 72 20 63 6f 6c 6f 72 00 00 00 ........//.outer.border.color...
21f40 3a 20 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 65 72 5f 77 69 64 74 68 20 20 20 20 20 20 20 20 :............outer_width........
21f60 20 20 20 20 20 20 2f 2f 20 6f 75 74 65 72 20 62 6f 72 64 65 72 20 77 69 64 74 68 00 00 00 0a 20 ......//.outer.border.width.....
21f80 20 20 20 20 20 20 20 29 3b 00 00 00 00 00 00 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 1e 20 .......);............if.(c).....
21fa0 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 00 00 00 .......swc_window_set_border(...
21fc0 13 20 20 20 20 20 20 20 20 20 20 20 20 63 2d 3e 77 69 6e 2c 00 00 00 3a 20 20 20 20 20 20 20 20 .............c->win,...:........
21fe0 20 20 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 20 20 2f 2f 20 ....cfg.border_col_active,...//.
22000 69 6e 6e 65 72 20 62 6f 72 64 65 72 20 63 6f 6c 6f 72 00 00 00 3a 20 20 20 20 20 20 20 20 20 20 inner.border.color...:..........
22020 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 20 20 20 20 20 20 20 2f 2f 20 69 6e ..cfg.border_width,........//.in
22040 6e 65 72 20 62 6f 72 64 65 72 20 77 69 64 74 68 00 00 00 3a 20 20 20 20 20 20 20 20 20 20 20 20 ner.border.width...:............
22060 6f 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6f 75 74 65 outer_color,.............//.oute
22080 72 20 62 6f 72 64 65 72 20 63 6f 6c 6f 72 00 00 00 3a 20 20 20 20 20 20 20 20 20 20 20 20 6f 75 r.border.color...:............ou
220a0 74 65 72 5f 77 69 64 74 68 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6f 75 74 65 72 20 ter_width..............//.outer.
220c0 62 6f 72 64 65 72 20 77 69 64 74 68 00 00 00 0a 20 20 20 20 20 20 20 20 29 3b 00 00 00 00 00 00 border.width............);......
220e0 00 22 20 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 ."....if.(raise.&&.c.&&.c->float
22100 69 6e 67 29 00 00 00 24 20 20 20 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 ing)...$........set_floating(c,.
22120 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 00 00 00 00 28 20 20 20 20 73 77 63 5f 77 69 6e 64 true,.true);.......(....swc_wind
22140 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 16 ow_focus(c.?.c->win.:.NULL);....
22160 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 35 81 f5 18 00 00 00 00 3c 00 ....wm.sel_client.=.c;5.......<.
22180 00 00 02 00 00 00 1a 00 00 00 02 00 00 00 18 00 00 00 00 00 00 00 cb 08 00 00 00 00 00 00 9a 03 ................................
221a0 00 00 00 00 00 00 ba 03 00 00 00 00 00 00 35 81 5f d0 00 00 00 68 00 00 00 84 00 00 00 00 00 00 ..............5._....h..........
221c0 00 00 00 00 00 69 00 00 00 27 00 00 00 18 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .....i...'......................
221e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
222a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
222c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
222e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 85 84 04 01 00 00 00 00 00 f5 ....................i...........
22340 18 00 00 00 38 00 00 00 39 00 00 02 08 00 00 00 01 00 00 00 00 f5 18 00 00 00 39 00 00 00 3a 00 ....8...9.................9...:.
22360 00 02 08 00 00 00 00 f5 18 00 00 00 28 00 00 00 3a 00 00 01 f8 00 00 00 01 00 00 00 00 f5 18 00 ............(...:...............
22380 00 00 29 00 00 00 2a 00 00 01 f8 00 00 00 00 f5 18 00 00 00 27 00 00 00 2a 00 00 01 f7 00 00 00 ..)...*.............'...*.......
223a0 01 00 00 00 00 f5 18 00 00 00 27 00 00 00 29 00 00 01 f6 00 00 00 00 35 81 f5 18 00 00 00 00 27 ..........'...)........5.......'
223c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 de 06 00 00 00 00 00 00 00 ................................
223e0 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 27 00 00 00 00 00 00 00 00 00 00 .....................'..........
22400 00 00 00 00 00 01 00 00 00 00 00 00 00 de 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 ................................
22420 00 00 00 00 00 f5 18 00 00 00 00 28 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 ...........(....................
22440 00 00 00 df 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63 01 00 00 00 00 00 00 f5 18 00 00 00 ...................c............
22460 00 37 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 41 08 00 00 00 00 00 .7.......................A......
22480 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 69 00 00 00 85 00 00 00 .................5._....i.......
224a0 6a 00 00 00 00 00 00 00 84 00 00 00 38 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 j...........8...................
224c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
224e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
225e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 ................................
22600 00 02 08 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 92 47 04 01 00 00 00 ..............V........i..G.....
22620 39 00 f5 18 00 00 00 29 00 00 00 38 00 00 02 07 00 00 00 0e 00 00 00 1c 20 20 20 20 73 74 72 75 9......)...8................stru
22640 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 0b 20 20 20 20 69 66 20 28 ct.screen.*s.=.data;........if.(
22660 21 73 29 00 00 00 0f 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 00 00 00 00 1d 20 20 !s)............return;..........
22680 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 00 00 ..wl_list_remove(&s->link);.....
226a0 00 00 1d 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b .......if.(wm.sel_screen.==.s).{
226c0 00 00 00 27 20 20 20 20 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 ...'........if.(wl_list_empty(&w
226e0 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 21 20 20 20 20 20 20 20 20 20 20 20 20 77 6d 2e 73 65 m.screens))...!............wm.se
22700 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 0c 20 20 20 20 20 20 20 20 65 6c 73 65 l_screen.=.NULL;............else
22720 00 00 00 52 20 20 20 20 20 20 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 ...R............wm.sel_screen.=.
22740 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c wl_container_of(wm.screens.next,
22760 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 .wm.sel_screen,.link);........}.
22780 00 00 00 00 00 00 0c 20 20 20 20 66 72 65 65 28 73 29 3b 35 81 f5 18 00 00 00 00 29 00 00 00 02 ...........free(s);5.......)....
227a0 00 00 00 0d 00 00 00 02 00 00 00 0d 00 00 00 00 00 00 00 0d 07 00 00 00 00 00 00 28 01 00 00 00 ...........................(....
227c0 00 00 00 04 01 00 00 00 00 00 00 35 81 5f d0 00 00 00 84 00 00 00 00 00 00 00 00 00 00 00 00 00 ...........5._..................
227e0 00 00 85 00 00 00 4e 00 00 00 05 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 00 ......N.........................
22800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
228a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
228c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
228e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 92 ad 04 01 00 00 00 3d 00 f5 18 00 00 .................i........=.....
22960 00 4d 00 00 00 4f 00 00 02 07 00 00 00 01 00 00 00 34 20 20 2f 2f 20 53 65 74 20 6f 75 74 65 72 .M...O...........4..//.Set.outer
22980 20 62 6f 72 64 65 72 20 64 65 66 61 75 6c 74 73 20 28 63 61 6e 20 63 75 73 74 6f 6d 69 7a 65 20 .border.defaults.(can.customize.
229a0 6c 61 74 65 72 29 35 81 f5 18 00 00 00 00 4d 00 00 00 05 00 00 00 00 00 00 00 01 00 00 00 00 00 later)5.......M.................
229c0 00 00 01 00 00 00 0e 0a 00 00 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 ..............................5.
229e0 5f d0 00 00 00 69 00 00 00 6b 00 00 00 00 00 00 00 84 00 00 00 6a 00 00 00 38 00 00 00 00 00 00 _....i...k...........j...8......
22a00 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 00 00 00 00 00 00 ................................
22a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22b60 00 00 00 00 69 95 85 86 04 01 00 00 00 27 00 f5 18 00 00 00 29 00 00 00 38 00 00 02 07 00 00 00 ....i........'......)...8.......
22b80 0e 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 .......struct.screen.*s.=.data;.
22ba0 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 00 00 .....if.(!s)........return;.....
22bc0 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 .....wl_list_remove(&s->link);..
22be0 00 00 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 ........if.(wm.sel_screen.==.s).
22c00 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 {...#....if.(wl_list_empty(&wm.s
22c20 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 creens))..........wm.sel_screen.
22c40 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 20 20 77 6d 2e =.NULL;........else...L......wm.
22c60 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e sel_screen.=.wl_container_of(wm.
22c80 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e screens.next,.wm.sel_screen,.lin
22ca0 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 35 81 f5 18 k);......}..........free(s);5...
22cc0 00 00 00 00 29 00 00 00 02 00 00 00 0d 00 00 00 02 00 00 00 0d 00 00 00 00 00 00 00 0d 07 00 00 ....)...........................
22ce0 00 00 00 00 28 01 00 00 00 00 00 00 04 01 00 00 00 00 00 00 35 81 5f d0 00 00 00 6a 00 00 00 6c ....(...............5._....j...l
22d00 00 00 00 00 00 00 00 00 00 00 00 6b 00 00 02 07 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 ...........k....................
22d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
22e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 8d 2d 04 01 ..........................i..-..
22e80 00 00 00 00 00 f5 18 00 00 02 07 00 00 02 08 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 02 ................................
22ea0 07 00 00 02 09 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 f5 18 00 00 02 09 00 00 02 0a 00 ................................
22ec0 00 00 00 00 00 00 00 f5 18 00 00 02 08 00 00 02 0a 00 00 00 00 00 00 00 3c 00 00 00 63 73 74 61 ........................<...csta
22ee0 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 tic.int.write_png(const.char.*fi
22f00 6c 65 6e 61 6d 65 2c 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c 20 69 6e 74 20 lename,.unsigned.char.*buf,.int.
22f20 77 69 64 74 68 2c 20 69 6e 74 20 68 65 69 67 68 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b width,.int.height,.int.stride).{
22f40 00 00 00 25 20 20 20 20 46 49 4c 45 20 2a 66 70 20 3d 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d ...%....FILE.*fp.=.fopen(filenam
22f60 65 2c 20 22 77 62 22 29 3b 00 00 00 17 20 20 20 20 69 66 20 28 21 66 70 29 20 72 65 74 75 72 6e e,."wb");........if.(!fp).return
22f80 20 2d 31 3b 00 00 00 00 00 00 00 5b 20 20 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f .-1;.......[....png_structp.png_
22fa0 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 50 4e ptr.=.png_create_write_struct(PN
22fc0 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 2c G_LIBPNG_VER_STRING,.NULL,.NULL,
22fe0 20 4e 55 4c 4c 29 3b 00 00 00 2c 20 20 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 20 7b 20 66 .NULL);...,....if.(!png_ptr).{.f
23000 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 32 3b 20 7d 00 00 00 00 00 00 00 39 20 close(fp);.return.-2;.}.......9.
23020 20 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 ...png_infop.info_ptr.=.png_crea
23040 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 29 3b 00 00 00 57 20 20 20 20 te_info_struct(png_ptr);...W....
23060 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 if.(!info_ptr).{.png_destroy_wri
23080 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c 29 3b 20 66 63 6c 6f 73 te_struct(&png_ptr,.NULL);.fclos
230a0 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b 20 7d 00 00 00 00 00 00 00 6e 20 20 20 20 69 e(fp);.return.-3;.}.......n....i
230c0 66 20 28 73 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 f.(setjmp(png_jmpbuf(png_ptr))).
230e0 7b 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f {.png_destroy_write_struct(&png_
23100 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 ptr,.&info_ptr);.fclose(fp);.ret
23120 75 72 6e 20 2d 34 3b 20 7d 00 00 00 00 00 00 00 1d 20 20 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f urn.-4;.}............png_init_io
23140 28 70 6e 67 5f 70 74 72 2c 20 66 70 29 3b 00 00 00 32 20 20 20 20 70 6e 67 5f 73 65 74 5f 49 48 (png_ptr,.fp);...2....png_set_IH
23160 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 2c 20 77 69 64 74 68 2c 20 68 65 69 DR(png_ptr,.info_ptr,.width,.hei
23180 67 68 74 2c 00 00 00 3c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 38 2c 20 50 4e 47 5f ght,...<.................8,.PNG_
231a0 43 4f 4c 4f 52 5f 54 59 50 45 5f 52 47 42 41 2c 20 50 4e 47 5f 49 4e 54 45 52 4c 41 43 45 5f 4e COLOR_TYPE_RGBA,.PNG_INTERLACE_N
231c0 4f 4e 45 2c 00 00 00 42 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 5f 43 4f 4d ONE,...B.................PNG_COM
231e0 50 52 45 53 53 49 4f 4e 5f 54 59 50 45 5f 42 41 53 45 2c 20 50 4e 47 5f 46 49 4c 54 45 52 5f 54 PRESSION_TYPE_BASE,.PNG_FILTER_T
23200 59 50 45 5f 42 41 53 45 29 3b 00 00 00 26 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 69 6e 66 6f YPE_BASE);...&....png_write_info
23220 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 00 00 00 00 26 20 20 20 20 (png_ptr,.info_ptr);.......&....
23240 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 74 3b 20 79 2b 2b 29 for.(int.y.=.0;.y.<.height;.y++)
23260 20 7b 00 00 00 31 20 20 20 20 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f .{...1........png_write_row(png_
23280 70 74 72 2c 20 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 05 20 20 20 20 7d ptr,.buf.+.y.*.stride);........}
232a0 00 00 00 00 00 00 00 25 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 .......%....png_write_end(png_pt
232c0 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 32 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 r,.info_ptr);...2....png_destroy
232e0 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 _write_struct(&png_ptr,.&info_pt
23300 72 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0d 20 20 20 20 72 65 r);........fclose(fp);........re
23320 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 32 73 74 61 74 69 63 20 69 6e 74 20 74 turn.0;....}.......2static.int.t
23340 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e ake_screenshot(const.char.*filen
23360 61 6d 65 29 20 7b 00 00 00 29 20 20 20 20 69 66 20 28 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 ame).{...)....if.(swc_initialize
23380 28 29 20 21 3d 20 30 29 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 2d 20 20 20 20 69 6e 74 20 6e ().!=.0).return.-1;...-....int.n
233a0 75 6d 5f 73 63 72 65 65 6e 73 20 3d 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 5f 63 6f 75 6e um_screens.=.swc_get_screen_coun
233c0 74 28 29 3b 00 00 00 37 20 20 20 20 69 66 20 28 6e 75 6d 5f 73 63 72 65 65 6e 73 20 3c 20 31 29 t();...7....if.(num_screens.<.1)
233e0 20 7b 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 20 72 65 74 75 72 6e 20 2d 32 3b 20 7d 00 .{.swc_finalize();.return.-2;.}.
23400 00 00 00 00 00 00 2d 20 20 20 20 73 74 72 75 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 73 20 ......-....struct.wld_screen.*s.
23420 3d 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 28 30 29 3b 00 00 00 2a 20 20 20 20 69 66 20 28 =.swc_get_screen(0);...*....if.(
23440 21 73 29 20 7b 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b !s).{.swc_finalize();.return.-3;
23460 20 7d 00 00 00 00 00 00 00 37 20 20 20 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 .}.......7....unsigned.char.*buf
23480 20 3d 20 6d 61 6c 6c 6f 63 28 73 2d 3e 73 74 72 69 64 65 20 2a 20 73 2d 3e 68 65 69 67 68 74 29 .=.malloc(s->stride.*.s->height)
234a0 3b 00 00 00 2c 20 20 20 20 69 66 20 28 21 62 75 66 29 20 7b 20 73 77 63 5f 66 69 6e 61 6c 69 7a ;...,....if.(!buf).{.swc_finaliz
234c0 65 28 29 3b 20 72 65 74 75 72 6e 20 2d 34 3b 20 7d 00 00 00 00 00 00 00 52 20 20 20 20 69 66 20 e();.return.-4;.}.......R....if.
234e0 28 77 6c 64 5f 63 61 70 74 75 72 65 5f 73 63 72 65 65 6e 28 73 2c 20 62 75 66 29 20 21 3d 20 30 (wld_capture_screen(s,.buf).!=.0
23500 29 20 7b 20 66 72 65 65 28 62 75 66 29 3b 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 20 72 ).{.free(buf);.swc_finalize();.r
23520 65 74 75 72 6e 20 2d 35 3b 20 7d 00 00 00 00 00 00 00 47 20 20 20 20 69 6e 74 20 72 65 74 20 3d eturn.-5;.}.......G....int.ret.=
23540 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 65 6e 61 6d 65 2c 20 62 75 66 2c 20 73 2d 3e 77 69 64 .write_png(filename,.buf,.s->wid
23560 74 68 2c 20 73 2d 3e 68 65 69 67 68 74 2c 20 73 2d 3e 73 74 72 69 64 65 29 3b 00 00 00 0e 20 20 th,.s->height,.s->stride);......
23580 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 13 20 20 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 ..free(buf);........swc_finalize
235a0 28 29 3b 00 00 00 0f 20 20 20 20 72 65 74 75 72 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 ();........return.ret;....}.....
235c0 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 ..!int.main(int.argc,.char.**arg
235e0 76 29 20 7b 00 00 00 3c 20 20 20 20 69 66 20 28 61 72 67 63 20 21 3d 20 33 20 7c 7c 20 73 74 72 v).{...<....if.(argc.!=.3.||.str
23600 63 6d 70 28 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 20 21 3d 20 cmp(argv[1],."--screenshot").!=.
23620 30 29 20 7b 00 00 00 48 20 20 20 20 20 20 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 0).{...H........fprintf(stderr,.
23640 22 55 73 61 67 65 3a 20 25 73 20 2d 2d 73 63 72 65 65 6e 73 68 6f 74 20 3c 66 69 6c 65 2e 70 6e "Usage:.%s.--screenshot.<file.pn
23660 67 3e 5c 6e 22 2c 20 61 72 67 76 5b 30 5d 29 3b 00 00 00 11 20 20 20 20 20 20 20 20 72 65 74 75 g>\n",.argv[0]);............retu
23680 72 6e 20 31 3b 00 00 00 05 20 20 20 20 7d 00 00 00 28 20 20 20 20 69 66 20 28 74 61 6b 65 5f 73 rn.1;........}...(....if.(take_s
236a0 63 72 65 65 6e 73 68 6f 74 28 61 72 67 76 5b 32 5d 29 20 21 3d 20 30 29 20 7b 00 00 00 2f 20 20 creenshot(argv[2]).!=.0).{.../..
236c0 20 20 20 20 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 22 53 63 72 65 65 6e 73 68 6f ......fprintf(stderr,."Screensho
236e0 74 20 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 11 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 t.failed\n");............return.
23700 32 3b 00 00 00 05 20 20 20 20 7d 00 00 00 30 20 20 20 20 70 72 69 6e 74 66 28 22 53 61 76 65 64 2;........}...0....printf("Saved
23720 20 73 63 72 65 65 6e 73 68 6f 74 20 74 6f 20 25 73 5c 6e 22 2c 20 61 72 67 76 5b 32 5d 29 3b 00 .screenshot.to.%s\n",.argv[2]);.
23740 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 35 81 f5 18 00 00 00 .......return.0;....}....5......
23760 00 07 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ec 36 00 00 00 00 00 ..........................6.....
23780 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 07 02 00 00 00 00 00 00 00 ................................
237a0 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ec 36 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 ................6...............
237c0 00 00 00 00 00 00 00 f5 18 00 00 00 00 08 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3b 00 00 .............................;..
237e0 00 00 00 00 00 ed 36 00 00 00 00 00 00 00 00 00 00 00 00 00 00 cb 07 00 00 00 00 00 00 35 81 5f ......6......................5._
23800 d0 00 00 00 6b 00 00 00 6d 00 00 00 00 00 00 00 00 00 00 00 6c 00 00 02 44 00 00 00 00 00 00 00 ....k...m...........l...D.......
23820 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 00 00 00 00 00 00 00 ................................
23840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
238a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
238c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
238e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
23980 00 00 00 69 95 8d 2f 04 01 00 00 00 28 00 f5 18 00 00 02 08 00 00 02 45 00 00 00 00 00 00 00 57 ...i../.....(..........E.......W
239a0 00 00 00 49 73 74 61 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 ...Istatic.int.write_png(const.c
239c0 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 2c 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 har.*filename,.unsigned.char.*bu
239e0 66 2c 20 69 6e 74 20 77 69 64 74 68 2c 00 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 f,.int.width,...................
23a00 20 20 20 20 20 20 69 6e 74 20 68 65 69 67 68 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b 00 ......int.height,.int.stride).{.
23a20 00 00 23 20 20 46 49 4c 45 20 2a 66 70 20 3d 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 20 ..#..FILE.*fp.=.fopen(filename,.
23a40 22 77 62 22 29 3b 00 00 00 0a 20 20 69 66 20 28 21 66 70 29 00 00 00 0e 20 20 20 20 72 65 74 75 "wb");......if.(!fp)........retu
23a60 72 6e 20 2d 31 3b 00 00 00 00 00 00 00 17 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f rn.-1;..........png_structp.png_
23a80 70 74 72 20 3d 00 00 00 47 20 20 20 20 20 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f ptr.=...G......png_create_write_
23aa0 73 74 72 75 63 74 28 50 4e 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 struct(PNG_LIBPNG_VER_STRING,.NU
23ac0 4c 4c 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 00 11 20 20 69 66 20 28 21 70 6e 67 5f 70 LL,.NULL,.NULL);......if.(!png_p
23ae0 74 72 29 20 7b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 tr).{........fclose(fp);........
23b00 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 37 20 20 70 6e 67 5f 69 return.-2;......}.......7..png_i
23b20 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 69 6e 66 6f 5f nfop.info_ptr.=.png_create_info_
23b40 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 29 3b 00 00 00 12 20 20 69 66 20 28 21 69 6e 66 6f 5f struct(png_ptr);......if.(!info_
23b60 70 74 72 29 20 7b 00 00 00 2d 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f ptr).{...-....png_destroy_write_
23b80 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c 29 3b 00 00 00 0f 20 20 20 20 66 struct(&png_ptr,.NULL);........f
23ba0 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 close(fp);........return.-3;....
23bc0 20 20 7d 00 00 00 00 00 00 00 24 20 20 69 66 20 28 73 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 ..}.......$..if.(setjmp(png_jmpb
23be0 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 7b 00 00 00 32 20 20 20 20 70 6e 67 5f 64 65 73 74 72 uf(png_ptr))).{...2....png_destr
23c00 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f oy_write_struct(&png_ptr,.&info_
23c20 70 74 72 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 ptr);........fclose(fp);........
23c40 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 1b 20 20 70 6e 67 5f 69 return.-4;......}..........png_i
23c60 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 2c 20 66 70 29 3b 00 00 00 48 20 20 70 6e 67 5f 73 65 nit_io(png_ptr,.fp);...H..png_se
23c80 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 2c 20 77 69 64 74 68 2c t_IHDR(png_ptr,.info_ptr,.width,
23ca0 20 68 65 69 67 68 74 2c 20 38 2c 20 50 4e 47 5f 43 4f 4c 4f 52 5f 54 59 50 45 5f 52 47 42 41 2c .height,.8,.PNG_COLOR_TYPE_RGBA,
23cc0 00 00 00 3d 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 5f 49 4e 54 45 52 4c 41 43 45 ...=...............PNG_INTERLACE
23ce0 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 54 59 50 45 5f 42 41 53 45 _NONE,.PNG_COMPRESSION_TYPE_BASE
23d00 2c 00 00 00 25 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 5f 46 49 4c 54 45 52 5f 54 ,...%...............PNG_FILTER_T
23d20 59 50 45 5f 42 41 53 45 29 3b 00 00 00 24 20 20 70 6e 67 5f 77 72 69 74 65 5f 69 6e 66 6f 28 70 YPE_BASE);...$..png_write_info(p
23d40 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 00 00 00 00 24 20 20 66 6f 72 20 ng_ptr,.info_ptr);.......$..for.
23d60 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 74 3b 20 79 2b 2b 29 20 7b 00 00 (int.y.=.0;.y.<.height;.y++).{..
23d80 00 2d 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 72 2c 20 62 75 66 .-....png_write_row(png_ptr,.buf
23da0 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 23 20 20 .+.y.*.stride);......}.......#..
23dc0 70 6e 67 5f 77 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 png_write_end(png_ptr,.info_ptr)
23de0 3b 00 00 00 30 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 ;...0..png_destroy_write_struct(
23e00 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 &png_ptr,.&info_ptr);......fclos
23e20 65 28 66 70 29 3b 00 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 e(fp);......return.0;....}......
23e40 00 32 73 74 61 74 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e .2static.int.take_screenshot(con
23e60 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 1c 20 20 69 66 20 28 73 77 st.char.*filename).{......if.(sw
23e80 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 29 20 21 3d 20 30 29 00 00 00 0e 20 20 20 20 72 65 74 75 c_initialize().!=.0)........retu
23ea0 72 6e 20 2d 31 3b 00 00 00 2b 20 20 69 6e 74 20 6e 75 6d 5f 73 63 72 65 65 6e 73 20 3d 20 73 77 rn.-1;...+..int.num_screens.=.sw
23ec0 63 5f 67 65 74 5f 73 63 72 65 65 6e 5f 63 6f 75 6e 74 28 29 3b 00 00 00 18 20 20 69 66 20 28 6e c_get_screen_count();......if.(n
23ee0 75 6d 5f 73 63 72 65 65 6e 73 20 3c 20 31 29 20 7b 00 00 00 13 20 20 20 20 73 77 63 5f 66 69 6e um_screens.<.1).{........swc_fin
23f00 61 6c 69 7a 65 28 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 03 20 20 alize();........return.-2;......
23f20 7d 00 00 00 00 00 00 00 2b 20 20 73 74 72 75 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 73 20 }.......+..struct.wld_screen.*s.
23f40 3d 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 28 30 29 3b 00 00 00 0b 20 20 69 66 20 28 21 73 =.swc_get_screen(0);......if.(!s
23f60 29 20 7b 00 00 00 13 20 20 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 0e 20 20 ).{........swc_finalize();......
23f80 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 35 20 20 75 6e 73 ..return.-3;......}.......5..uns
23fa0 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 20 3d 20 6d 61 6c 6c 6f 63 28 73 2d 3e 73 74 72 69 igned.char.*buf.=.malloc(s->stri
23fc0 64 65 20 2a 20 73 2d 3e 68 65 69 67 68 74 29 3b 00 00 00 0d 20 20 69 66 20 28 21 62 75 66 29 20 de.*.s->height);......if.(!buf).
23fe0 7b 00 00 00 13 20 20 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 0e 20 20 20 20 {........swc_finalize();........
24000 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 28 20 20 69 66 20 28 77 return.-4;......}.......(..if.(w
24020 6c 64 5f 63 61 70 74 75 72 65 5f 73 63 72 65 65 6e 28 73 2c 20 62 75 66 29 20 21 3d 20 30 29 20 ld_capture_screen(s,.buf).!=.0).
24040 7b 00 00 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 13 20 20 20 20 73 77 63 5f 66 {........free(buf);........swc_f
24060 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 35 3b 00 00 00 03 inalize();........return.-5;....
24080 20 20 7d 00 00 00 00 00 00 00 45 20 20 69 6e 74 20 72 65 74 20 3d 20 77 72 69 74 65 5f 70 6e 67 ..}.......E..int.ret.=.write_png
240a0 28 66 69 6c 65 6e 61 6d 65 2c 20 62 75 66 2c 20 73 2d 3e 77 69 64 74 68 2c 20 73 2d 3e 68 65 69 (filename,.buf,.s->width,.s->hei
240c0 67 68 74 2c 20 73 2d 3e 73 74 72 69 64 65 29 3b 00 00 00 0c 20 20 66 72 65 65 28 62 75 66 29 3b ght,.s->stride);......free(buf);
240e0 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 0d 20 20 72 65 74 75 72 ......swc_finalize();......retur
24100 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 n.ret;....}.......!int.main(int.
24120 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 3a 20 20 69 66 20 28 61 72 argc,.char.**argv).{...:..if.(ar
24140 67 63 20 21 3d 20 33 20 7c 7c 20 73 74 72 63 6d 70 28 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 gc.!=.3.||.strcmp(argv[1],."--sc
24160 72 65 65 6e 73 68 6f 74 22 29 20 21 3d 20 30 29 20 7b 00 00 00 44 20 20 20 20 66 70 72 69 6e 74 reenshot").!=.0).{...D....fprint
24180 66 28 73 74 64 65 72 72 2c 20 22 55 73 61 67 65 3a 20 25 73 20 2d 2d 73 63 72 65 65 6e 73 68 6f f(stderr,."Usage:.%s.--screensho
241a0 74 20 3c 66 69 6c 65 2e 70 6e 67 3e 5c 6e 22 2c 20 61 72 67 76 5b 30 5d 29 3b 00 00 00 0d 20 20 t.<file.png>\n",.argv[0]);......
241c0 20 20 72 65 74 75 72 6e 20 31 3b 00 00 00 03 20 20 7d 00 00 00 26 20 20 69 66 20 28 74 61 6b 65 ..return.1;......}...&..if.(take
241e0 5f 73 63 72 65 65 6e 73 68 6f 74 28 61 72 67 76 5b 32 5d 29 20 21 3d 20 30 29 20 7b 00 00 00 2b _screenshot(argv[2]).!=.0).{...+
24200 20 20 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 22 53 63 72 65 65 6e 73 68 6f 74 20 ....fprintf(stderr,."Screenshot.
24220 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 32 3b 00 00 00 03 failed\n");........return.2;....
24240 20 20 7d 00 00 00 2e 20 20 70 72 69 6e 74 66 28 22 53 61 76 65 64 20 73 63 72 65 65 6e 73 68 6f ..}......printf("Saved.screensho
24260 74 20 74 6f 20 25 73 5c 6e 22 2c 20 61 72 67 76 5b 32 5d 29 3b 00 00 00 0b 20 20 72 65 74 75 72 t.to.%s\n",.argv[2]);......retur
24280 6e 20 30 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 08 02 00 00 49 00 00 00 3b 00 00 00 00 00 00 n.0;....}5...........I...;......
242a0 00 56 00 00 00 01 00 00 00 36 37 00 00 00 00 00 00 82 07 00 00 00 00 00 00 9a 07 00 00 00 00 00 .V.......67.....................
242c0 00 35 81 5f d0 00 00 00 6c 00 00 00 6e 00 00 00 00 00 00 00 00 00 00 00 6d 00 00 00 0e 00 00 00 .5._....l...n...........m.......
242e0 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 00 00 00 ................................
24300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
243a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
243c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
243e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24440 00 00 00 00 00 00 00 69 95 8d 48 04 01 00 00 00 00 00 f5 18 00 00 00 0d 00 00 00 0e 00 00 02 5f .......i..H...................._
24460 00 00 00 01 00 00 00 00 f5 18 00 00 00 0e 00 00 00 0f 00 00 02 60 00 00 00 00 f5 18 00 00 00 0d .....................`..........
24480 00 00 00 0f 00 00 02 60 00 00 00 03 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 70 6e 67 2e 68 3e .......`........#include.<png.h>
244a0 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 65 74 6a 6d 70 2e 68 3e 00 00 00 00 f5 18 00 00 00 ....#include.<setjmp.h>.........
244c0 10 00 00 00 11 00 00 02 62 00 00 00 00 f5 18 00 00 00 0f 00 00 00 11 00 00 02 62 00 00 00 00 35 ........b.................b....5
244e0 81 f5 18 00 00 00 00 0d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 25 ...............................%
24500 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 0d 00 00 ................................
24520 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 25 01 00 00 00 00 00 00 00 00 00 .....................%..........
24540 00 00 00 00 00 25 00 00 00 00 00 00 00 f5 18 00 00 00 00 0e 00 00 00 13 00 00 00 01 00 00 00 00 .....%..........................
24560 00 00 00 00 00 00 00 00 00 00 00 49 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 ...........I....................
24580 00 00 00 35 81 5f d0 00 00 00 6d 00 00 00 6f 00 00 00 00 00 00 00 00 00 00 00 6e 00 00 00 0f 00 ...5._....m...o...........n.....
245a0 00 00 12 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 00 ................................
245c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
245e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
246e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24700 00 00 00 00 00 00 00 00 00 69 95 8d 4a 04 01 00 00 00 29 00 f5 18 00 00 00 04 00 00 00 10 00 00 .........i..J.....).............
24720 02 61 00 00 00 0b 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 70 6e 67 2e 68 3e 00 00 00 13 23 69 .a........#include.<png.h>....#i
24740 6e 63 6c 75 64 65 20 3c 73 65 74 6a 6d 70 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 nclude.<setjmp.h>....#include.<s
24760 69 67 6e 61 6c 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 00 ignal.h>....#include.<stdio.h>..
24780 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 ..#include.<stdlib.h>....#includ
247a0 65 20 3c 73 77 63 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 e.<swc.h>....#include.<unistd.h>
247c0 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 ....#include.<wayland-server.h>.
247e0 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 14 ...#include.<wayland-util.h>....
24800 23 69 6e 63 6c 75 64 65 20 3c 77 6c 64 2f 77 6c 64 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 #include.<wld/wld.h>...(#include
24820 20 3c 78 6b 62 63 6f 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 .<xkbcommon/xkbcommon-keysyms.h>
24840 35 81 f5 18 00 00 00 00 04 00 00 00 0a 00 00 00 0a 00 00 00 10 00 00 00 0a 00 00 00 25 00 00 00 5...........................%...
24860 5b 00 00 00 00 00 00 00 eb 00 00 00 00 00 00 00 eb 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 6e [.......................5._....n
24880 00 00 00 70 00 00 00 00 00 00 00 00 00 00 00 6f 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff ...p...........o................
248a0 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 ................................
248c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
248e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
249a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
249c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 ................................
249e0 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 .....................V........i.
24a00 8d dc 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 02 62 00 00 00 00 00 00 00 01 00 00 00 00 35 ..................b............5
24a20 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 61 02 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 ...............a................
24a40 00 00 00 00 00 00 00 f6 3e 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 6f 00 ........>..............5._....o.
24a60 00 00 71 00 00 00 00 00 00 00 00 00 00 00 70 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 ..q...........p.................
24a80 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 00 00 ................................
24aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
24ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 ................................
24bc0 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 8d ....................V........i..
24be0 dd 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 ................................
24c00 00 00 00 02 00 00 00 00 00 00 00 81 00 00 00 17 23 69 6e 63 6c 75 64 65 20 22 63 6f 6d 70 6f 73 ................#include."compos
24c20 69 74 6f 72 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 itor.h"....#include."config.h"..
24c40 00 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 ..#include."types.h"....#include
24c60 20 22 75 74 69 6c 2e 68 22 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 70 6e 67 2e 68 3e 00 00 00 ."util.h"....#include.<png.h>...
24c80 13 23 69 6e 63 6c 75 64 65 20 3c 73 65 74 6a 6d 70 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 .#include.<setjmp.h>....#include
24ca0 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 .<signal.h>....#include.<stdio.h
24cc0 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 >....#include.<stdlib.h>....#inc
24ce0 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 lude.<swc.h>....#include.<unistd
24d00 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e .h>....#include.<wayland-server.
24d20 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 h>....#include.<wayland-util.h>.
24d40 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 77 6c 64 2f 77 6c 64 2e 68 3e 00 00 00 28 23 69 6e 63 6c ...#include.<wld/wld.h>...(#incl
24d60 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 ude.<xkbcommon/xkbcommon-keysyms
24d80 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 3e 00 00 00 00 00 00 .h>....#include.<string.h>......
24da0 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e .0static.void.focus(struct.clien
24dc0 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 76 6f 69 t.*c,.bool.raise);...*static.voi
24de0 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b d.on_screen_destroy(void.*data);
24e00 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 ...:static.void.on_screen_usable
24e20 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 _geometry_changed(void.*data);..
24e40 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 .'static.void.on_win_destroy(voi
24e60 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f d.*data);...'static.void.on_win_
24e80 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 63 20 76 entered(void.*data);....static.v
24ea0 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f 69 64 20 oid.setup(void);....static.void.
24ec0 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 setup_binds(void);...Fstatic.voi
24ee0 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c d.set_floating(struct.client.*c,
24f00 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 23 .bool.floating,.bool.raise);...#
24f20 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a static.void.tile(struct.screen.*
24f40 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 s);...(void.new_screen(struct.sw
24f60 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 c_screen.*scr);...(void.new_wind
24f80 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 3b 00 00 00 2d 76 ow(struct.swc_window.*win);...-v
24fa0 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 oid.new_device(struct.libinput_d
24fc0 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 evice.*dev);...Kvoid.focus_next(
24fe0 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
25000 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 2_t.value,.uint32_t.state);...Kv
25020 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 oid.focus_prev(void.*data,.uint3
25040 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 2_t.time,.uint32_t.value,.uint32
25060 5f 74 20 73 74 61 74 65 29 3b 00 00 00 49 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 _t.state);...Ivoid.kill_sel(void
25080 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
250a0 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 value,.uint32_t.state);...Kvoid.
250c0 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 mouse_move(void.*data,.uint32_t.
250e0 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 time,.uint32_t.value,.uint32_t.s
25100 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 tate);...Mvoid.mouse_resize(void
25120 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
25140 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 45 76 6f 69 64 20 value,.uint32_t.state);...Evoid.
25160 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 quit(void.*data,.uint32_t.time,.
25180 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b uint32_t.value,.uint32_t.state);
251a0 00 00 00 46 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 ...Fvoid.spawn(void.*data,.uint3
251c0 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 2_t.time,.uint32_t.value,.uint32
251e0 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 _t.state);...Mvoid.toggle_float(
25200 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
25220 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 54 76 2_t.value,.uint32_t.state);...Tv
25240 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 oid.toggle_float_global(void.*da
25260 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
25280 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 e,.uint32_t.state);...Lvoid.mast
252a0 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d er_next(void.*data,.uint32_t.tim
252c0 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 e,.uint32_t.value,.uint32_t.stat
252e0 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 e);...Lvoid.master_prev(void.*da
25300 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
25320 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4e 76 6f 69 64 20 6d 61 73 74 e,.uint32_t.state);...Nvoid.mast
25340 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 er_resize(void.*data,.uint32_t.t
25360 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 ime,.uint32_t.value,.uint32_t.st
25380 61 74 65 29 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 ate);.......,struct.swc_window_h
253a0 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 andler.window_handler.=.{.......
253c0 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 ..destroy.=.on_win_destroy,.....
253e0 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 ....entered.=.on_win_entered,...
25400 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e .};.......,struct.swc_screen_han
25420 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e dler.screen_handler.=.{...!.....
25440 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 destroy.=.on_screen_destroy,...A
25460 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f .....usable_geometry_changed.=.o
25480 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 n_screen_usable_geometry_changed
254a0 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d ,....};.......!static.uint32_t.m
254c0 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d aster_width.=.0;....struct.wm.wm
254e0 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 ;.......$const.struct.swc_manage
25500 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e r.manager.=.{.........new_screen
25520 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f .=.new_screen,.........new_windo
25540 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 w.=.new_window,.........new_devi
25560 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 31 73 74 ce.=.new_device,....};.......1st
25580 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 atic.void.focus(struct.client.*c
255a0 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 24 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 ,.bool.raise).{...$..uint32_t.ou
255c0 74 65 72 5f 63 6f 6c 6f 72 20 3d 20 30 78 30 30 30 30 30 30 46 46 3b 00 00 00 1b 20 20 75 69 6e ter_color.=.0x000000FF;......uin
255e0 74 33 32 5f 74 20 6f 75 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 14 20 20 69 66 20 28 t32_t.outer_width.=.0;......if.(
25600 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 71 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 wm.sel_client)...q....swc_window
25620 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 _set_border(wm.sel_client->win,.
25640 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 66 67 2e 62 6f 72 64 65 cfg.border_col_normal,.cfg.borde
25660 72 5f 77 69 64 74 68 2c 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 64 74 r_width,.outer_color,.outer_widt
25680 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 65 20 20 20 20 73 77 63 5f 77 69 6e 64 6f h);......if.(c)...e....swc_windo
256a0 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f w_set_border(c->win,.cfg.border_
256c0 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 6f 75 col_active,.cfg.border_width,.ou
256e0 74 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 ter_color,.outer_width);......if
25700 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 .(raise.&&.c.&&.c->floating)....
25720 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b ....set_floating(c,.true,.true);
25740 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 ...&..swc_window_focus(c.?.c->wi
25760 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 n.:.NULL);......wm.sel_client.=.
25780 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 c;....}.......;static.void.on_sc
257a0 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 reen_usable_geometry_changed(voi
257c0 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 d.*data).{......struct.screen.*s
257e0 20 3d 20 64 61 74 61 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 .=.data;......tile(s);....}.....
25800 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f ..(static.void.on_win_destroy(vo
25820 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a id.*data).{......struct.client.*
25840 63 20 3d 20 64 61 74 61 3b 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 c.=.data;......struct.client.*ne
25860 78 74 3b 00 00 00 11 20 20 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 29 20 20 69 66 xt;......if.(!c).return;...)..if
25880 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d .(wm.grab.active.&&.wm.grab.c.==
258a0 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 .c).{........wm.grab.active.=.fa
258c0 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 lse;........wm.grab.c.=.NULL;...
258e0 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 20 20 ...}......if.(c->floating)...#..
25900 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 ..wl_list_remove(&c->float_link)
25920 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 ;......else...#....wl_list_remov
25940 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 e(&c->tiled_link);......if.(wm.s
25960 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f el_client.==.c).{........wm.sel_
25980 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 client.=.NULL;........next.=.fir
259a0 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 6e 65 st_float(c->scr);........if.(!ne
259c0 78 74 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 xt)...!......next.=.first_tiled(
259e0 63 2d 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 c->scr);........focus(next,.true
25a00 29 3b 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a );......}......tile(c->scr);....
25a20 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f ..free(c);....}.......(static.vo
25a40 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 id.on_win_entered(void.*data).{.
25a60 00 00 15 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 20 20 .....if.(wm.grab.active)........
25a80 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 return;......struct.client.*c.=.
25aa0 64 61 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 data;......focus(c,.true);....}.
25ac0 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b .......static.void.setup(void).{
25ae0 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 ......wm.dpy.=.wl_display_create
25b00 28 29 3b 00 00 00 0e 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 20 20 20 64 69 65 ();......if.(!wm.dpy)...2....die
25b20 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 (EXIT_FAILURE,."wl_display_creat
25b40 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 e.failed");......wl_list_init(&w
25b60 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 m.screens);......wl_list_init(&w
25b80 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e m.tiled);......wl_list_init(&wm.
25ba0 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 floating);......wm.sel_client.=.
25bc0 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b NULL;......wm.sel_screen.=.NULL;
25be0 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 ......wm.grab.active.=.false;...
25c00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 20 20 ...wm.grab.resize.=.false;......
25c20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c 6f 6f wm.grab.c.=.NULL;...1..wm.ev_loo
25c40 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d p.=.wl_display_get_event_loop(wm
25c60 2e 64 70 79 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 .dpy);...4..if.(!swc_initialize(
25c80 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 00 00 wm.dpy,.wm.ev_loop,.&manager))..
25ca0 00 2f 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 5f 69 6e 69 ./....die(EXIT_FAILURE,."swc_ini
25cc0 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 10 20 20 73 65 74 75 70 5f 62 69 6e tialize.failed");......setup_bin
25ce0 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c ds();...8..const.char.*sock.=.wl
25d00 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 _display_add_socket_auto(wm.dpy)
25d20 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f 63 6b 29 00 00 00 3b 20 20 20 20 64 69 65 28 45 58 49 ;......if.(!sock)...;....die(EXI
25d40 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 T_FAILURE,."wl_display_add_socke
25d60 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1c 20 20 73 65 74 65 6e 76 28 22 57 41 t_auto.failed");......setenv("WA
25d80 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 f5 18 00 00 00 81 00 00 00 82 00 00 00 00 00 00 YLAND_DISPLAY",.................
25da0 00 00 f5 18 00 00 00 80 00 00 00 82 00 00 00 00 00 00 00 8c 00 00 00 25 20 20 73 65 74 65 6e 76 .......................%..setenv
25dc0 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 ("WAYLAND_DISPLAY",.sock,.1);...
25de0 2d 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 -.._log(stderr,."WAYLAND_DISPLAY
25e00 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e =%s\n",.sock);......signal(SIGIN
25e20 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 T,.sig_handler);......signal(SIG
25e40 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 TERM,.sig_handler);......signal(
25e60 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 SIGQUIT,.sig_handler);....}.....
25e80 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 ...static.void.setup_binds(void)
25ea0 20 7b 00 00 00 41 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 .{...A..for.(size_t.i.=.0;.i.<.s
25ec0 69 7a 65 6f 66 28 62 69 6e 64 73 29 20 2f 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b izeof(binds)./.sizeof(binds[0]);
25ee0 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 .i++).{...%....const.struct.bind
25f00 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f .*b.=.&binds[i];...G....swc_add_
25f20 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 binding(b->type,.b->mods,.b->ksy
25f40 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 m,.b->fn,.(void.*)&b->arg);.....
25f60 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 .}....}.......Gstatic.void.set_f
25f80 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 loating(struct.client.*c,.bool.f
25fa0 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 11 20 20 69 66 20 28 loating,.bool.raise).{......if.(
25fc0 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b !c).return;......if.(floating).{
25fe0 00 00 00 17 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 ........if.(!c->floating).{.....
26000 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 .....c->floating.=.true;...%....
26020 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 ..wl_list_remove(&c->tiled_link)
26040 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c ;...3......wl_list_insert(&wm.fl
26060 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 oating,.&c->float_link);........
26080 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f }.else.if.(raise).{...%......wl_
260a0 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 list_remove(&c->float_link);...3
260c0 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e ......wl_list_insert(&wm.floatin
260e0 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 g,.&c->float_link);........}...#
26100 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 ....swc_window_set_stacked(c->wi
26120 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e n);......}.else.{........if.(c->
26140 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 floating).{..........c->floating
26160 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 .=.false;...%......wl_list_remov
26180 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c e(&c->float_link);...0......wl_l
261a0 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f ist_insert(&wm.tiled,.&c->tiled_
261c0 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f link);........}...!....swc_windo
261e0 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d w_set_tiled(c->win);......}....}
26200 00 00 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 .......$static.void.tile(struct.
26220 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 screen.*s).{......struct.client.
26240 2a 63 3b 00 00 00 1c 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 *c;......struct.swc_rectangle.ge
26260 6f 6d 3b 00 00 00 21 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 om;...!..struct.swc_rectangle.*s
26280 63 72 5f 67 65 6f 6d 3b 00 00 00 31 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d cr_geom;...1..int32_t.out_gaps.=
262a0 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 .cfg.gaps.+.cfg.border_width;...
262c0 36 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 6..int32_t.in_gaps.=.cfg.gaps.+.
262e0 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 6e 74 (cfg.border_width.*.2);......int
26300 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 10 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 68 3b 00 00 32_t.x,.y;......uint32_t.w,.h;..
26320 00 11 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e 3b 00 00 00 26 20 20 73 63 72 5f 67 65 6f ....if.(!s).return;...&..scr_geo
26340 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 m.=.&s->scr->usable_geometry;...
26360 0f 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f ...size_t.n.=.0;...E..wl_list_fo
26380 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 r_each(c,.&wm.tiled,.tiled_link)
263a0 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 15 20 20 69 .if.(is_tiled(c,.s)).n++;......i
263c0 66 20 28 6e 20 3d 3d 20 30 29 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d 20 73 63 72 5f f.(n.==.0).return;......x.=.scr_
263e0 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 3d 20 73 63 72 geom->x.+.out_gaps;......y.=.scr
26400 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 20 3d 20 73 63 _geom->y.+.out_gaps;...'..w.=.sc
26420 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 r_geom->width.-.(out_gaps.*.2);.
26440 00 00 28 20 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 ..(..h.=.scr_geom->height.-.(out
26460 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 _gaps.*.2);......if.(n.==.1).{..
26480 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 .0....wl_list_for_each(c,.&wm.ti
264a0 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 24 20 20 20 20 20 20 69 66 20 28 led,.tiled_link).{...$......if.(
264c0 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 20 20 !is_tiled(c,.s)).continue;......
264e0 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 ....geom.x.=.x;..........geom.y.
26500 3d 20 79 3b 00 00 00 15 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 =.y;..........geom.width.=.w;...
26520 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 .......geom.height.=.h;...-.....
26540 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c .swc_window_set_geometry(c->win,
26560 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 .&geom);..........return;.......
26580 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e .}......}......size_t.i.=.0;....
265a0 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c ..wl_list_for_each(c,.&wm.tiled,
265c0 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 22 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 .tiled_link).{..."....if.(!is_ti
265e0 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 led(c,.s)).continue;........if.(
26600 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 master_width.==.0)...>......mast
26620 65 72 5f 77 69 64 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e er_width.=.((w.-.in_gaps).*.cfg.
26640 6d 61 73 74 65 72 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 master_width)./.100;........if.(
26660 69 20 3d 3d 20 30 29 20 7b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 i.==.0).{..........geom.x.=.x;..
26680 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 20 20 20 20 67 65 6f ........geom.y.=.y;..........geo
266a0 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 16 20 20 20 20 20 m.width.=.master_width;.........
266c0 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 .geom.height.=.h;........}.else.
266e0 7b 00 00 00 1e 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d {..........uint32_t.stackn.=.n.-
26700 20 31 3b 00 00 00 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 .1;..........uint32_t.idx.=.i.-.
26720 31 3b 00 00 00 44 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 1;...D......uint32_t.stack_heigh
26740 74 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 t.=.(h.-.in_gaps.*.(stackn.-.1))
26760 20 2f 20 73 74 61 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b ./.stackn;...*......geom.x.=.x.+
26780 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 34 20 20 20 20 .master_width.+.in_gaps;...4....
267a0 20 20 67 65 6f 6d 2e 79 20 3d 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 ..geom.y.=.y.+.(idx.*.(stack_hei
267c0 67 68 74 20 2b 20 69 6e 5f 67 61 70 73 29 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 ght.+.in_gaps));..........geom.w
267e0 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 idth.=.w.-.master_width.-.in_gap
26800 73 3b 00 00 00 21 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f s;...!......geom.height.=.stack_
26820 68 65 69 67 68 74 3b 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 height;........}...+....swc_wind
26840 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 ow_set_geometry(c->win,.&geom);.
26860 00 00 08 20 20 20 20 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 .......i++;......}....}.......)v
26880 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e oid.new_screen(struct.swc_screen
268a0 20 2a 73 63 72 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d .*scr).{...(..struct.screen.*s.=
268c0 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 38 20 20 69 66 20 28 21 73 .malloc(sizeof(*s));...8..if.(!s
268e0 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 ).die(EXIT_FAILURE,."new.screen.
26900 6d 61 6c 6c 6f 63 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 malloc.failed");......s->scr.=.s
26920 63 72 3b 00 00 00 0b 20 20 73 2d 3e 78 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 79 20 3d 20 30 cr;......s->x.=.0;......s->y.=.0
26940 3b 00 00 00 0b 20 20 73 2d 3e 77 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 68 20 3d 20 30 3b 00 ;......s->w.=.0;......s->h.=.0;.
26960 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c ..(..wl_list_insert(&wm.screens,
26980 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 28 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 .&s->link);...(..if.(!wm.sel_scr
269a0 65 65 6e 29 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 77 63 een).wm.sel_screen.=.s;...2..swc
269c0 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e _screen_set_handler(scr,.&screen
269e0 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 _handler,.s);.../.._log(stderr,.
26a00 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 73 63 72 29 3b "new_screen=%p\n",.(void.*)scr);
26a20 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 ....}.......)void.new_window(str
26a40 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 72 75 uct.swc_window.*win).{...(..stru
26a60 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 ct.client.*c.=.malloc(sizeof(*c)
26a80 29 3b 00 00 00 34 20 20 69 66 20 28 21 63 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 );...4..if.(!c).die(EXIT_FAILURE
26aa0 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 ,."malloc.client.failed");......
26ac0 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 c->win.=.win;......c->scr.=.wm.s
26ae0 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 el_screen;......c->mapped.=.fals
26b00 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f e;...#..c->floating.=.wm.global_
26b20 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 floating;......c->fullscreen.=.f
26b40 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 alse;......c->ws.=.false;......i
26b60 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 f.(c->floating).{...1....wl_list
26b80 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f _insert(&wm.floating,.&c->float_
26ba0 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 link);...!....wl_list_init(&c->t
26bc0 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 iled_link);...4....swc_window_se
26be0 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 t_handler(win,.&window_handler,.
26c00 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 c);........swc_window_set_stacke
26c20 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f d(win);......}.else.{........wl_
26c40 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 list_insert(&wm.tiled,.&c->tiled
26c60 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e _link);...!....wl_list_init(&c->
26c80 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 float_link);...4....swc_window_s
26ca0 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c et_handler(win,.&window_handler,
26cc0 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 .c);........swc_window_set_tiled
26ce0 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 (win);......}......swc_window_sh
26d00 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 ow(win);......focus(c,.true);...
26d20 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f ...tile(wm.sel_screen);.../.._lo
26d40 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f g(stderr,."new_window=%p\n",.(vo
26d60 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f id.*)win);....}.......;void.new_
26d80 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 device(struct.libinput_device.*d
26da0 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 46 76 6f 69 64 20 71 ev).{.(void)dev;.}.......Fvoid.q
26dc0 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 uit(void.*data,.uint32_t.time,.u
26de0 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b int32_t.value,.uint32_t.state).{
26e00 00 00 00 33 20 20 28 76 6f 69 64 29 64 61 74 61 3b 20 28 76 6f 69 64 29 74 69 6d 65 3b 20 28 76 ...3..(void)data;.(void)time;.(v
26e20 6f 69 64 29 76 61 6c 75 65 3b 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 1f 20 20 77 6c 5f oid)value;.(void)state;......wl_
26e40 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 display_terminate(wm.dpy);....}.
26e60 00 00 00 00 00 00 63 73 74 61 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 ......cstatic.int.write_png(cons
26e80 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 2c 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 t.char.*filename,.unsigned.char.
26ea0 2a 62 75 66 2c 20 69 6e 74 20 77 69 64 74 68 2c 20 69 6e 74 20 68 65 69 67 68 74 2c 20 69 6e 74 *buf,.int.width,.int.height,.int
26ec0 20 73 74 72 69 64 65 29 20 7b 00 00 00 23 20 20 46 49 4c 45 20 2a 66 70 20 3d 20 66 6f 70 65 6e .stride).{...#..FILE.*fp.=.fopen
26ee0 28 66 69 6c 65 6e 61 6d 65 2c 20 22 77 62 22 29 3b 00 00 00 15 20 20 69 66 20 28 21 66 70 29 20 (filename,."wb");......if.(!fp).
26f00 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 59 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f return.-1;...Y..png_structp.png_
26f20 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 50 4e ptr.=.png_create_write_struct(PN
26f40 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 2c G_LIBPNG_VER_STRING,.NULL,.NULL,
26f60 20 4e 55 4c 4c 29 3b 00 00 00 0a 20 20 69 66 20 28 21 70 6e 67 f5 18 00 00 01 0c 00 00 01 0d 00 .NULL);......if.(!png...........
26f80 00 00 00 00 00 00 00 f5 18 00 00 01 0b 00 00 01 0d 00 00 00 00 00 00 00 28 00 00 00 2a 20 20 69 ........................(...*..i
26fa0 66 20 28 21 70 6e 67 5f 70 74 72 29 20 7b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 f.(!png_ptr).{.fclose(fp);.retur
26fc0 6e 20 2d 32 3b 20 7d 00 00 00 37 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 n.-2;.}...7..png_infop.info_ptr.
26fe0 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 =.png_create_info_struct(png_ptr
27000 29 3b 00 00 00 55 20 20 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 20 70 6e 67 5f 64 65 73 );...U..if.(!info_ptr).{.png_des
27020 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c troy_write_struct(&png_ptr,.NULL
27040 29 3b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b 20 7d 00 00 00 6c 20 );.fclose(fp);.return.-3;.}...l.
27060 20 69 66 20 28 73 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 .if.(setjmp(png_jmpbuf(png_ptr))
27080 29 20 7b 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e ).{.png_destroy_write_struct(&pn
270a0 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 g_ptr,.&info_ptr);.fclose(fp);.r
270c0 65 74 75 72 6e 20 2d 34 3b 20 7d 00 00 00 1b 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 eturn.-4;.}......png_init_io(png
270e0 5f 70 74 72 2c 20 66 70 29 3b 00 00 00 8e 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 _ptr,.fp);......png_set_IHDR(png
27100 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 38 _ptr,.info_ptr,.width,.height,.8
27120 2c 20 50 4e 47 5f 43 4f 4c 4f 52 5f 54 59 50 45 5f 52 47 42 41 2c 20 50 4e 47 5f 49 4e 54 45 52 ,.PNG_COLOR_TYPE_RGBA,.PNG_INTER
27140 4c 41 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 54 59 50 45 5f LACE_NONE,.PNG_COMPRESSION_TYPE_
27160 42 41 53 45 2c 20 50 4e 47 5f 46 49 4c 54 45 52 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 24 BASE,.PNG_FILTER_TYPE_BASE);...$
27180 20 20 70 6e 67 5f 77 72 69 74 65 5f 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 ..png_write_info(png_ptr,.info_p
271a0 74 72 29 3b 00 00 00 4c 20 20 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 tr);...L..for.(int.y.=.0;.y.<.he
271c0 69 67 68 74 3b 20 79 2b 2b 29 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 72 ight;.y++).png_write_row(png_ptr
271e0 2c 20 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 23 20 20 70 6e 67 5f 77 72 ,.buf.+.y.*.stride);...#..png_wr
27200 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 30 20 ite_end(png_ptr,.info_ptr);...0.
27220 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 .png_destroy_write_struct(&png_p
27240 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 65 28 66 70 29 3b tr,.&info_ptr);......fclose(fp);
27260 00 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 32 73 74 61 74 ......return.0;....}.......2stat
27280 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 61 ic.int.take_screenshot(const.cha
272a0 72 20 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 32 20 20 73 74 72 75 63 74 20 73 77 63 5f 73 r.*filename).{...2..struct.swc_s
272c0 63 72 65 65 6e 20 2a 2a 73 63 72 65 65 6e 73 20 3d 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e creen.**screens.=.swc_get_screen
272e0 73 28 29 3b 00 00 00 25 20 20 69 6e 74 20 63 6f 75 6e 74 20 3d 20 73 77 63 5f 67 65 74 5f 73 63 s();...%..int.count.=.swc_get_sc
27300 72 65 65 6e 5f 63 6f 75 6e 74 28 29 3b 00 00 00 27 20 20 69 66 20 28 21 73 63 72 65 65 6e 73 20 reen_count();...'..if.(!screens.
27320 7c 7c 20 63 6f 75 6e 74 20 3c 20 31 29 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 29 20 20 73 74 ||.count.<.1).return.-1;...)..st
27340 72 75 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 73 20 3d 20 73 63 72 65 65 6e 73 5b 30 5d 2d ruct.wld_screen.*s.=.screens[0]-
27360 3e 73 63 72 3b 00 00 00 35 20 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 20 3d 20 >scr;...5..unsigned.char.*buf.=.
27380 6d 61 6c 6c 6f 63 28 73 2d 3e 73 74 72 69 64 65 20 2a 20 73 2d 3e 68 65 69 67 68 74 29 3b 00 00 malloc(s->stride.*.s->height);..
273a0 00 16 20 20 69 66 20 28 21 62 75 66 29 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 40 20 20 69 66 ....if.(!buf).return.-2;...@..if
273c0 20 28 77 6c 64 5f 63 61 70 74 75 72 65 5f 73 63 72 65 65 6e 28 73 2c 20 62 75 66 29 20 21 3d 20 .(wld_capture_screen(s,.buf).!=.
273e0 30 29 20 7b 20 66 72 65 65 28 62 75 66 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b 20 7d 00 00 00 45 0).{.free(buf);.return.-3;.}...E
27400 20 20 69 6e 74 20 72 65 74 20 3d 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 65 6e 61 6d 65 2c 20 ..int.ret.=.write_png(filename,.
27420 62 75 66 2c 20 73 2d 3e 77 69 64 74 68 2c 20 73 2d 3e 68 65 69 67 68 74 2c 20 73 2d 3e 73 74 72 buf,.s->width,.s->height,.s->str
27440 69 64 65 29 3b 00 00 00 0c 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0d 20 20 72 65 74 75 72 ide);......free(buf);......retur
27460 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 n.ret;....}.......!int.main(int.
27480 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 0a 20 20 73 65 74 75 70 28 argc,.char.**argv).{......setup(
274a0 29 3b 00 00 00 3a 20 20 69 66 20 28 61 72 67 63 20 3d 3d 20 33 20 26 26 20 73 74 72 63 6d 70 28 );...:..if.(argc.==.3.&&.strcmp(
274c0 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 20 3d 3d 20 30 29 20 7b argv[1],."--screenshot").==.0).{
274e0 00 00 00 5c 20 20 20 20 69 66 20 28 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 61 72 67 76 ...\....if.(take_screenshot(argv
27500 5b 32 5d 29 20 21 3d 20 30 29 20 7b 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 22 53 63 [2]).!=.0).{.fprintf(stderr,."Sc
27520 72 65 65 6e 73 68 6f 74 20 66 61 69 6c 65 64 5c 6e 22 29 3b 20 72 65 74 75 72 6e 20 31 3b 20 7d reenshot.failed\n");.return.1;.}
27540 00 00 00 30 20 20 20 20 70 72 69 6e 74 66 28 22 53 61 76 65 64 20 73 63 72 65 65 6e 73 68 6f 74 ...0....printf("Saved.screenshot
27560 20 74 6f 20 25 73 5c 6e 22 2c 20 61 72 67 76 5b 32 5d 29 3b 00 00 00 0d 20 20 20 20 72 65 74 75 .to.%s\n",.argv[2]);........retu
27580 72 6e 20 30 3b 00 00 00 03 20 20 7d 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e rn.0;......}......wl_display_run
275a0 28 77 6d 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 (wm.dpy);......swc_finalize();..
275c0 00 1d 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 ....wl_display_destroy(wm.dpy);.
275e0 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 f5 18 00 00 01 33 00 00 01 .....return.0;....}.........3...
27600 34 00 00 00 00 00 00 00 00 f5 18 00 00 01 32 00 00 01 34 00 00 00 00 00 00 00 01 00 00 00 00 35 4.............2...4............5
27620 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 1c 00 00 00 00 ................................
27640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 f5 18 00 00 00 00 80 00 00 ................................
27660 00 1c 00 00 00 00 00 00 00 00 00 00 00 8b 00 00 00 0a 00 00 00 00 10 00 00 00 00 00 00 00 00 00 ................................
27680 00 00 00 00 00 00 10 00 00 00 00 00 00 f5 18 00 00 00 00 0b 01 00 00 0a 00 00 00 00 00 00 00 00 ................................
276a0 00 00 00 27 00 00 00 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 db 05 00 00 00 ...'............................
276c0 00 00 00 35 81 5f d0 00 00 00 70 00 00 00 72 00 00 00 00 00 00 00 00 00 00 00 71 00 00 01 33 00 ...5._....p...r...........q...3.
276e0 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 00 ................................
27700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
277a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
277c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
277e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27820 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 ................................
27840 56 00 00 00 00 00 00 00 00 69 95 8d de 04 01 00 00 00 00 00 f5 18 00 00 01 32 00 00 01 34 00 00 V........i...............2...4..
27860 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 32 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 ......5.......2.................
27880 00 00 00 00 00 00 db 25 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 .......%......................5.
278a0 5f d0 00 00 00 71 00 00 00 73 00 00 00 00 00 00 00 00 00 00 00 72 00 00 01 32 00 00 00 00 00 00 _....q...s...........r...2......
278c0 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 00 00 00 00 00 00 ................................
278e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
279a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
279c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
279e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
27a20 00 00 00 00 69 95 8d df 04 01 00 00 00 37 00 f5 18 00 00 00 09 00 00 01 2b 00 00 01 32 00 00 01 ....i........7..........+...2...
27a40 49 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 10 23 69 6e 63 I....#include.<string.h>....#inc
27a60 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 lude.<swc.h>....#include.<unistd
27a80 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e .h>....#include.<wayland-server.
27aa0 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 h>....#include.<wayland-util.h>.
27ac0 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 77 6c 64 2f 77 6c 64 2e 68 3e 00 00 00 28 23 69 6e 63 6c ...#include.<wld/wld.h>...(#incl
27ae0 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 ude.<xkbcommon/xkbcommon-keysyms
27b00 2e 68 3e 00 00 00 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 .h>.......0static.void.focus(str
27b20 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 uct.client.*c,.bool.raise);...*s
27b40 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 tatic.void.on_screen_destroy(voi
27b60 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 d.*data);...:static.void.on_scre
27b80 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 en_usable_geometry_changed(void.
27ba0 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 *data);...'static.void.on_win_de
27bc0 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 stroy(void.*data);...'static.voi
27be0 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 d.on_win_entered(void.*data);...
27c00 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 .static.void.setup(void);....sta
27c20 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 tic.void.setup_binds(void);...Fs
27c40 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 tatic.void.set_floating(struct.c
27c60 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 lient.*c,.bool.floating,.bool.ra
27c80 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 ise);...#static.void.tile(struct
27ca0 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 .screen.*s);...(void.new_screen(
27cc0 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b 00 00 00 28 76 6f 69 64 struct.swc_screen.*scr);...(void
27ce0 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 .new_window(struct.swc_window.*w
27d00 69 6e 29 3b 00 00 00 2d 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c in);...-void.new_device(struct.l
27d20 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f ibinput_device.*dev);...Kvoid.fo
27d40 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 cus_next(void.*data,.uint32_t.ti
27d60 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 me,.uint32_t.value,.uint32_t.sta
27d80 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 te);...Kvoid.focus_prev(void.*da
27da0 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
27dc0 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 49 76 6f 69 64 20 6b 69 6c 6c e,.uint32_t.state);...Ivoid.kill
27de0 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 _sel(void.*data,.uint32_t.time,.
27e00 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b uint32_t.value,.uint32_t.state);
27e20 00 00 00 4b 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 ...Kvoid.mouse_move(void.*data,.
27e40 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 uint32_t.time,.uint32_t.value,.u
27e60 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 int32_t.state);...Mvoid.mouse_re
27e80 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 size(void.*data,.uint32_t.time,.
27ea0 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b uint32_t.value,.uint32_t.state);
27ec0 00 00 00 45 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 ...Evoid.quit(void.*data,.uint32
27ee0 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f _t.time,.uint32_t.value,.uint32_
27f00 74 20 73 74 61 74 65 29 3b 00 00 00 46 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 t.state);...Fvoid.spawn(void.*da
27f20 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
27f40 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 74 6f 67 67 e,.uint32_t.state);...Mvoid.togg
27f60 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 le_float(void.*data,.uint32_t.ti
27f80 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 me,.uint32_t.value,.uint32_t.sta
27fa0 74 65 29 3b 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c te);...Cvoid.toggle_float_global
27fc0 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 (void.*data,.uint32_t.time,.uint
27fe0 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 32_t.value,...).................
28000 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 ........uint32_t.state);...Lvoid
28020 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f .master_next(void.*data,.uint32_
28040 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
28060 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 .state);...Lvoid.master_prev(voi
28080 64 20 2a 64 61 74 61 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 d.*data,.uint32_t.time,.uint32_t
280a0 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4e 76 6f 69 64 .value,.uint32_t.state);...Nvoid
280c0 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 .master_resize(void.*data,.uint3
280e0 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 2_t.time,.uint32_t.value,.uint32
28100 5f 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e _t.state);.......,struct.swc_win
28120 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 dow_handler.window_handler.=.{..
28140 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c .......destroy.=.on_win_destroy,
28160 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 .........entered.=.on_win_entere
28180 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 d,....};.......,struct.swc_scree
281a0 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 n_handler.screen_handler.=.{...!
281c0 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 .....destroy.=.on_screen_destroy
281e0 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 ,...A.....usable_geometry_change
28200 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 d.=.on_screen_usable_geometry_ch
28220 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 anged,....};.......!static.uint3
28240 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 0d 73 74 72 75 63 74 20 2_t.master_width.=.0;....struct.
28260 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d wm.wm;.......$const.struct.swc_m
28280 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 anager.manager.=.{.........new_s
282a0 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f creen.=.new_screen,.........new_
282c0 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 window.=.new_window,.........new
282e0 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 _device.=.new_device,....};.....
28300 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 ..1static.void.focus(struct.clie
28320 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 24 20 20 75 69 6e 74 33 32 nt.*c,.bool.raise).{...$..uint32
28340 5f 74 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 20 3d 20 30 78 30 30 30 30 30 30 46 46 3b 00 00 00 1b _t.outer_color.=.0x000000FF;....
28360 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 14 20 ..uint32_t.outer_width.=.0;.....
28380 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 44 20 20 20 20 73 77 63 5f 77 .if.(wm.sel_client)...D....swc_w
283a0 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e indow_set_border(wm.sel_client->
283c0 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 00 00 00 46 20 win,.cfg.border_col_normal,...F.
283e0 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 63 66 67 2e 62 6f 72 .........................cfg.bor
28400 64 65 72 5f 77 69 64 74 68 2c 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 der_width,.outer_color,.outer_wi
28420 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 4a 20 20 20 20 73 77 63 5f 77 69 6e dth);......if.(c)...J....swc_win
28440 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 dow_set_border(c->win,.cfg.borde
28460 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 00 r_col_active,.cfg.border_width,.
28480 00 00 34 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 6f 75 74 ..4..........................out
284a0 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 64 74 68 29 3b 00 00 00 20 20 20 69 66 20 er_color,.outer_width);......if.
284c0 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 (raise.&&.c.&&.c->floating).....
284e0 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 ...set_floating(c,.true,.true);.
28500 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e ..&..swc_window_focus(c.?.c->win
28520 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 .:.NULL);......wm.sel_client.=.c
28540 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 ;....}.......;static.void.on_scr
28560 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 een_usable_geometry_changed(void
28580 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 .*data).{......struct.screen.*s.
285a0 3d 20 64 61 74 61 3b 00 00 00 0a 20 20 74 69 6c 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 =.data;......tile(s);....}......
285c0 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 .(static.void.on_win_destroy(voi
285e0 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 d.*data).{......struct.client.*c
28600 20 3d 20 64 61 74 61 3b 00 00 00 16 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 .=.data;......struct.client.*nex
28620 74 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 t;......if.(!c)........return;..
28640 00 29 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 .)..if.(wm.grab.active.&&.wm.gra
28660 62 2e 63 20 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 b.c.==.c).{........wm.grab.activ
28680 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 e.=.false;........wm.grab.c.=.NU
286a0 4c 4c 3b 00 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 LL;......}......if.(c->floating)
286c0 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 ...#....wl_list_remove(&c->float
286e0 5f 6c 69 6e 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 _link);......else...#....wl_list
28700 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 _remove(&c->tiled_link);......if
28720 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 .(wm.sel_client.==.c).{........w
28740 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 m.sel_client.=.NULL;........next
28760 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 .=.first_float(c->scr);........i
28780 66 20 28 21 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f f.(!next)...!......next.=.first_
287a0 74 69 6c 65 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 tiled(c->scr);........focus(next
287c0 2c 20 74 72 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 ,.true);......}......tile(c->scr
287e0 29 3b 00 00 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 );......free(c);....}.......(sta
28800 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 tic.void.on_win_entered(void.*da
28820 74 61 29 20 7b 00 00 00 15 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 ta).{......if.(wm.grab.active)..
28840 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 ......return;......struct.client
28860 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b .*c.=.data;......focus(c,.true);
28880 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 ....}........static.void.setup(v
288a0 6f 69 64 29 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f oid).{......wm.dpy.=.wl_display_
288c0 63 72 65 61 74 65 28 29 3b 00 00 00 0e 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 create();......if.(!wm.dpy)...2.
288e0 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 ...die(EXIT_FAILURE,."wl_display
28900 5f 63 72 65 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 _create.failed");......wl_list_i
28920 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 nit(&wm.screens);......wl_list_i
28940 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 nit(&wm.tiled);......wl_list_ini
28960 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 t(&wm.floating);......wm.sel_cli
28980 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d ent.=.NULL;......wm.sel_screen.=
289a0 20 4e 55 4c 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c .NULL;......wm.grab.active.=.fal
289c0 73 65 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b se;......wm.grab.resize.=.false;
289e0 00 00 00 13 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e ......wm.grab.c.=.NULL;...1..wm.
28a00 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c ev_loop.=.wl_display_get_event_l
28a20 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 oop(wm.dpy);...4..if.(!swc_initi
28a40 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 alize(wm.dpy,.wm.ev_loop,.&manag
28a60 65 72 29 29 00 00 00 2f 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 er)).../....die(EXIT_FAILURE,."s
28a80 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 10 20 20 73 65 74 wc_initialize.failed");......set
28aa0 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 up_binds();...8..const.char.*soc
28ac0 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 k.=.wl_display_add_socket_auto(w
28ae0 6d 2e 64 70 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f 63 6b 29 00 00 00 3b 20 20 20 20 64 m.dpy);......if.(!sock)...;....d
28b00 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 ie(EXIT_FAILURE,."wl_display_add
28b20 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 29 3b 00 00 00 25 20 20 73 65 74 65 _socket_auto.failed");...%..sete
28b40 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 nv("WAYLAND_DISPLAY",.sock,.1);.
28b60 00 00 2d 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c ..-.._log(stderr,."WAYLAND_DISPL
28b80 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 AY=%s\n",.sock);......signal(SIG
28ba0 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 INT,.sig_handler);......signal(S
28bc0 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 IGTERM,.sig_handler);......signa
28be0 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 l(SIGQUIT,.sig_handler);....}...
28c00 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 .....static.void.setup_binds(voi
28c20 64 29 20 7b 00 00 00 41 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c d).{...A..for.(size_t.i.=.0;.i.<
28c40 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 29 20 2f 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d .sizeof(binds)./.sizeof(binds[0]
28c60 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 );.i++).{...%....const.struct.bi
28c80 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 nd.*b.=.&binds[i];...G....swc_ad
28ca0 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b d_binding(b->type,.b->mods,.b->k
28cc0 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 sym,.b->fn,.(void.*)&b->arg);...
28ce0 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 ...}....}.......Gstatic.void.set
28d00 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c _floating(struct.client.*c,.bool
28d20 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 09 20 20 69 66 .floating,.bool.raise).{......if
28d40 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 11 20 20 69 66 20 28 66 6c .(!c)........return;......if.(fl
28d60 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e oating).{........if.(!c->floatin
28d80 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 g).{..........c->floating.=.true
28da0 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 ;...%......wl_list_remove(&c->ti
28dc0 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 led_link);...3......wl_list_inse
28de0 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 rt(&wm.floating,.&c->float_link)
28e00 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 25 ;........}.else.if.(raise).{...%
28e20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c ......wl_list_remove(&c->float_l
28e40 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 ink);...3......wl_list_insert(&w
28e60 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 m.floating,.&c->float_link);....
28e80 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 ....}...#....swc_window_set_stac
28ea0 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 16 20 20 ked(c->win);......}.else.{......
28ec0 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 1a 20 20 20 20 20 20 63 2d ..if.(c->floating).{..........c-
28ee0 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c >floating.=.false;...%......wl_l
28f00 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 ist_remove(&c->float_link);...0.
28f20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 .....wl_list_insert(&wm.tiled,.&
28f40 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 21 20 20 20 20 c->tiled_link);........}...!....
28f60 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 swc_window_set_tiled(c->win);...
28f80 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c ...}....}.......$static.void.til
28fa0 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 13 20 20 73 74 72 75 63 e(struct.screen.*s).{......struc
28fc0 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 t.client.*c;......struct.swc_rec
28fe0 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 tangle.geom;...!..struct.swc_rec
29000 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 00 00 31 20 20 69 6e 74 33 32 5f 74 20 6f tangle.*scr_geom;...1..int32_t.o
29020 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f ut_gaps.=.cfg.gaps.+.cfg.border_
29040 77 69 64 74 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 width;...6..int32_t.in_gaps.=.cf
29060 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b g.gaps.+.(cfg.border_width.*.2);
29080 00 00 00 0f 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 10 20 20 75 69 6e 74 33 32 5f ......int32_t.x,.y;......uint32_
290a0 74 20 77 2c 20 68 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 t.w,.h;......if.(!s)........retu
290c0 72 6e 3b 00 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 rn;...&..scr_geom.=.&s->scr->usa
290e0 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b ble_geometry;......size_t.n.=.0;
29100 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 ...E..wl_list_for_each(c,.&wm.ti
29120 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c led,.tiled_link).if.(is_tiled(c,
29140 20 73 29 29 20 6e 2b 2b 3b 00 00 00 0d 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 00 00 00 0b 20 20 .s)).n++;......if.(n.==.0)......
29160 20 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b ..return;......x.=.scr_geom->x.+
29180 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 .out_gaps;......y.=.scr_geom->y.
291a0 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 +.out_gaps;...'..w.=.scr_geom->w
291c0 69 64 74 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 28 20 20 68 20 3d 20 idth.-.(out_gaps.*.2);...(..h.=.
291e0 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 scr_geom->height.-.(out_gaps.*.2
29200 29 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f );......if.(n.==.1).{...0....wl_
29220 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 list_for_each(c,.&wm.tiled,.tile
29240 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 1a 20 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 d_link).{..........if.(!is_tiled
29260 28 63 2c 20 73 29 29 00 00 00 11 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 (c,.s))............continue;....
29280 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e ......geom.x.=.x;..........geom.
292a0 79 20 3d 20 79 3b 00 00 00 15 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 y.=.y;..........geom.width.=.w;.
292c0 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 .........geom.height.=.h;...-...
292e0 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 ...swc_window_set_geometry(c->wi
29300 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 n,.&geom);..........return;.....
29320 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 ...}......}......size_t.i.=.0;..
29340 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 ....wl_list_for_each(c,.&wm.tile
29360 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 18 20 20 20 20 69 66 20 28 21 69 73 5f d,.tiled_link).{........if.(!is_
29380 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 0f 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 tiled(c,.s))..........continue;.
293a0 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 .......if.(master_width.==.0)...
293c0 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 >......master_width.=.((w.-.in_g
293e0 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 aps).*.cfg.master_width)./.100;.
29400 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 11 20 20 20 20 20 20 67 65 .......if.(i.==.0).{..........ge
29420 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 om.x.=.x;..........geom.y.=.y;..
29440 00 20 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 ........geom.width.=.master_widt
29460 68 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c h;..........geom.height.=.h;....
29480 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 ....}.else.{..........uint32_t.s
294a0 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 tackn.=.n.-.1;..........uint32_t
294c0 20 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 .idx.=.i.-.1;...D......uint32_t.
294e0 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 stack_height.=.(h.-.in_gaps.*.(s
29500 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 tackn.-.1))./.stackn;...*......g
29520 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 eom.x.=.x.+.master_width.+.in_ga
29540 70 73 3b 00 00 00 34 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 20 2b 20 28 69 64 78 20 2a ps;...4......geom.y.=.y.+.(idx.*
29560 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e 5f 67 61 70 73 29 29 3b 00 00 00 2e 20 .(stack_height.+.in_gaps));.....
29580 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 .....geom.width.=.w.-.master_wid
295a0 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 th.-.in_gaps;...!......geom.heig
295c0 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 ht.=.stack_height;........}...+.
295e0 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 ...swc_window_set_geometry(c->wi
29600 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 n,.&geom);........i++;......}...
29620 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 .}.......)void.new_screen(struct
29640 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 .swc_screen.*scr).{...(..struct.
29660 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 screen.*s.=.malloc(sizeof(*s));.
29680 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 32 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 .....if.(!s)...2....die(EXIT_FAI
296a0 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f 63 20 66 61 69 6c 65 64 22 LURE,."new.screen.malloc.failed"
296c0 29 3b 00 00 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 00 0b 20 20 73 2d 3e 78 20 );......s->scr.=.scr;......s->x.
296e0 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 79 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 77 20 3d 20 =.0;......s->y.=.0;......s->w.=.
29700 30 3b 00 00 00 0b 20 20 73 2d 3e 68 20 3d 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 0;......s->h.=.0;...(..wl_list_i
29720 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 nsert(&wm.screens,.&s->link);...
29740 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 16 20 20 20 20 77 6d ...if.(!wm.sel_screen)........wm
29760 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e .sel_screen.=.s;...2..swc_screen
29780 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 _set_handler(scr,.&screen_handle
297a0 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 r,.s);.../.._log(stderr,."new_sc
297c0 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 reen=%p\n",.(void.*)scr);....}..
297e0 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 .....)void.new_window(struct.swc
29800 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 63 6c 69 65 _window.*win).{...(..struct.clie
29820 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 09 20 nt.*c.=.malloc(sizeof(*c));.....
29840 20 69 66 20 28 21 63 29 00 00 00 2e 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 .if.(!c)........die(EXIT_FAILURE
29860 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 ,."malloc.client.failed");......
29880 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 c->win.=.win;......c->scr.=.wm.s
298a0 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 el_screen;......c->mapped.=.fals
298c0 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f e;...#..c->floating.=.wm.global_
298e0 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 floating;......c->fullscreen.=.f
29900 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 alse;......c->ws.=.false;......i
29920 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 f.(c->floating).{...1....wl_list
29940 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f _insert(&wm.floating,.&c->float_
29960 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 link);...!....wl_list_init(&c->t
29980 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 iled_link);...4....swc_window_se
299a0 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 t_handler(win,.&window_handler,.
299c0 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 c);........swc_window_set_stacke
299e0 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f d(win);......}.else.{........wl_
29a00 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 list_insert(&wm.tiled,.&c->tiled
29a20 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e _link);...!....wl_list_init(&c->
29a40 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 float_link);...4....swc_window_s
29a60 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c et_handler(win,.&window_handler,
29a80 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 .c);........swc_window_set_tiled
29aa0 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 (win);......}......swc_window_sh
29ac0 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 ow(win);......focus(c,.true);...
29ae0 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f ...tile(wm.sel_screen);.../.._lo
29b00 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f g(stderr,."new_window=%p\n",.(vo
29b20 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f id.*)win);....}.......;void.new_
29b40 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 device(struct.libinput_device.*d
29b60 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 46 76 6f 69 64 20 71 ev).{.(void)dev;.}.......Fvoid.q
29b80 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 uit(void.*data,.uint32_t.time,.u
29ba0 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b int32_t.value,.uint32_t.state).{
29bc0 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d ......(void)data;......(void)tim
29be0 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 e;......(void)value;......(void)
29c00 73 74 61 74 65 3b 00 00 00 1f 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 state;......wl_display_terminate
29c20 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 49 73 74 61 74 69 63 20 69 6e 74 (wm.dpy);....}.......Istatic.int
29c40 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 2c .write_png(const.char.*filename,
29c60 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c 20 69 6e 74 20 77 69 64 74 68 2c 00 .unsigned.char.*buf,.int.width,.
29c80 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 68 65 69 67 ........................int.heig
29ca0 68 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b 00 00 00 23 20 20 46 49 4c 45 20 2a 66 70 20 ht,.int.stride).{...#..FILE.*fp.
29cc0 3d 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 20 22 77 62 22 29 3b 00 00 00 0a 20 20 69 66 =.fopen(filename,."wb");......if
29ce0 20 28 21 66 70 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 17 20 20 70 6e .(!fp)........return.-1;......pn
29d00 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f 70 74 72 20 3d 00 00 00 47 20 20 20 20 20 20 70 6e 67 g_structp.png_ptr.=...G......png
29d20 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 50 4e 47 5f 4c 49 42 50 4e 47 5f _create_write_struct(PNG_LIBPNG_
29d40 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 VER_STRING,.NULL,.NULL,.NULL);..
29d60 00 11 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 20 7b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 ....if.(!png_ptr).{........fclos
29d80 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 03 20 20 7d 00 e(fp);........return.-2;......}.
29da0 00 00 37 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 ..7..png_infop.info_ptr.=.png_cr
29dc0 65 61 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 29 3b 00 00 00 12 20 20 eate_info_struct(png_ptr);......
29de0 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 00 00 00 2d 20 20 20 20 70 6e 67 5f 64 65 73 74 if.(!info_ptr).{...-....png_dest
29e00 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c 29 roy_write_struct(&png_ptr,.NULL)
29e20 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 ;........fclose(fp);........retu
29e40 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 24 20 20 69 66 20 28 73 65 74 6a 6d 70 28 70 6e rn.-3;......}...$..if.(setjmp(pn
29e60 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 7b 00 00 00 32 20 20 20 20 70 6e 67 g_jmpbuf(png_ptr))).{...2....png
29e80 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 _destroy_write_struct(&png_ptr,.
29ea0 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 &info_ptr);........fclose(fp);..
29ec0 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 03 20 20 7d 00 00 00 1b 20 20 70 6e 67 ......return.-4;......}......png
29ee0 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 2c 20 66 70 29 3b 00 00 00 48 20 20 70 6e 67 5f _init_io(png_ptr,.fp);...H..png_
29f00 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 2c 20 77 69 64 74 set_IHDR(png_ptr,.info_ptr,.widt
29f20 68 2c 20 68 65 69 67 68 74 2c 20 38 2c 20 50 4e 47 5f 43 4f 4c 4f 52 5f 54 59 50 45 5f 52 47 42 h,.height,.8,.PNG_COLOR_TYPE_RGB
29f40 41 2c 00 00 00 3d 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 5f 49 4e 54 45 52 4c 41 A,...=...............PNG_INTERLA
29f60 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 54 59 50 45 5f 42 41 CE_NONE,.PNG_COMPRESSION_TYPE_BA
29f80 53 45 2c 00 00 00 25 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 5f 46 49 4c 54 45 52 SE,...%...............PNG_FILTER
29fa0 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 24 20 20 70 6e 67 5f 77 72 69 74 65 5f 69 6e 66 6f _TYPE_BASE);...$..png_write_info
29fc0 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 22 20 20 66 6f 72 20 28 69 (png_ptr,.info_ptr);..."..for.(i
29fe0 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 74 3b 20 79 2b 2b 29 00 00 00 2d 20 20 nt.y.=.0;.y.<.height;.y++)...-..
2a000 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 72 2c 20 62 75 66 20 2b 20 79 ..png_write_row(png_ptr,.buf.+.y
2a020 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 23 20 20 70 6e 67 5f 77 72 69 74 65 5f 65 6e 64 28 70 .*.stride);...#..png_write_end(p
2a040 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 30 20 20 70 6e 67 5f 64 65 73 74 ng_ptr,.info_ptr);...0..png_dest
2a060 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f roy_write_struct(&png_ptr,.&info
2a080 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0b 20 20 72 65 74 _ptr);......fclose(fp);......ret
2a0a0 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 32 73 74 61 74 69 63 20 69 6e 74 20 74 61 urn.0;....}.......2static.int.ta
2a0c0 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 ke_screenshot(const.char.*filena
2a0e0 6d 65 29 20 7b 00 00 00 32 20 20 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 2a 73 me).{...2..struct.swc_screen.**s
2a100 63 72 65 65 6e 73 20 3d 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 73 28 29 3b 00 00 00 25 20 creens.=.swc_get_screens();...%.
2a120 20 69 6e 74 20 63 6f 75 6e 74 20 3d 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 5f 63 6f 75 6e .int.count.=.swc_get_screen_coun
2a140 74 28 29 3b 00 00 00 1c 20 20 69 66 20 28 21 73 63 72 65 65 6e 73 20 7c 7c 20 63 6f 75 6e 74 20 t();......if.(!screens.||.count.
2a160 3c 20 31 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 29 20 20 73 74 72 75 <.1)........return.-1;...)..stru
2a180 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 73 20 3d 20 73 63 72 65 65 6e 73 5b 30 5d 2d 3e 73 ct.wld_screen.*s.=.screens[0]->s
2a1a0 63 72 3b 00 00 00 35 20 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 20 3d 20 6d 61 cr;...5..unsigned.char.*buf.=.ma
2a1c0 6c 6c 6f 63 28 73 2d 3e 73 74 72 69 64 65 20 2a 20 73 2d 3e 68 65 69 67 68 74 29 3b 00 00 00 0b lloc(s->stride.*.s->height);....
2a1e0 20 20 69 66 20 28 21 62 75 66 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 ..if.(!buf)........return.-2;...
2a200 28 20 20 69 66 20 28 77 6c 64 5f 63 61 70 74 75 72 65 5f 73 63 72 65 65 6e 28 73 2c 20 62 75 66 (..if.(wld_capture_screen(s,.buf
2a220 29 20 21 3d 20 30 29 20 7b 00 00 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0e 20 ).!=.0).{........free(buf);.....
2a240 20 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 45 20 20 69 6e 74 20 72 65 ...return.-3;......}...E..int.re
2a260 74 20 3d 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 65 6e 61 6d 65 2c 20 62 75 66 2c 20 73 2d 3e t.=.write_png(filename,.buf,.s->
2a280 77 69 64 74 68 2c 20 73 2d 3e 68 65 69 67 68 74 2c 20 73 2d 3e 73 74 72 69 64 65 29 3b 00 00 00 width,.s->height,.s->stride);...
2a2a0 0c 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0d 20 20 72 65 74 75 72 6e 20 72 65 74 3b 00 00 ...free(buf);......return.ret;..
2a2c0 00 01 7d 00 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 ..}.......!int.main(int.argc,.ch
2a2e0 61 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 0a 20 20 73 65 74 75 70 28 29 3b 00 00 00 3a 20 20 ar.**argv).{......setup();...:..
2a300 69 66 20 28 61 72 67 63 20 3d 3d 20 33 20 26 26 20 73 74 72 63 6d 70 28 61 72 67 76 5b 31 5d 2c if.(argc.==.3.&&.strcmp(argv[1],
2a320 20 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 20 3d 3d 20 30 29 20 7b 00 00 00 28 20 20 20 20 ."--screenshot").==.0).{...(....
2a340 69 66 20 28 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 61 72 67 76 5b 32 5d 29 20 21 3d 20 if.(take_screenshot(argv[2]).!=.
2a360 30 29 20 7b 00 00 00 2d 20 20 20 20 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 22 53 0).{...-......fprintf(stderr,."S
2a380 63 72 65 65 6e 73 68 6f 74 20 66 61 69 6c 65 64 5c 6e 22 29 3b 00 00 00 0f 20 20 20 20 20 20 72 creenshot.failed\n");..........r
2a3a0 65 74 75 72 6e 20 31 3b 00 00 00 05 20 20 20 20 7d 35 81 f5 18 00 00 00 00 09 00 00 00 0b 00 00 eturn.1;........}5..............
2a3c0 00 20 01 00 00 5a 00 00 00 48 01 00 00 03 00 00 00 bc 00 00 00 00 00 00 00 81 24 00 00 00 00 00 .....Z...H................$.....
2a3e0 00 87 25 00 00 00 00 00 00 35 81 5f d0 00 00 00 72 00 00 00 74 00 00 00 00 00 00 00 00 00 00 00 ..%......5._....r...t...........
2a400 73 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 s...............................
2a420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 ................................
2a560 00 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 8e 77 04 01 00 00 00 00 00 f5 18 00 00 00 00 ......V........i..w.............
2a580 00 00 01 5b 00 00 00 00 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 ...[............5...............
2a5a0 5a 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e1 26 00 00 00 00 00 00 Z........................&......
2a5c0 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 73 00 00 00 75 00 00 00 00 00 00 00 00 00 00 00 74 ........5._....s...u...........t
2a5e0 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 00 00 00 00 00 00 ................................
2a600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2a720 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 ................................
2a740 00 00 00 00 00 56 00 00 00 00 00 00 00 00 69 95 8e 78 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 .....V........i..x..............
2a760 00 00 02 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 7d 00 00 00 ............................}...
2a780 17 23 69 6e 63 6c 75 64 65 20 22 63 6f 6d 70 6f 73 69 74 6f 72 2e 68 22 00 00 00 13 23 69 6e 63 .#include."compositor.h"....#inc
2a7a0 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 lude."config.h"....#include."typ
2a7c0 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 22 75 74 69 6c 2e 68 22 00 00 00 10 23 69 es.h"....#include."util.h"....#i
2a7e0 6e 63 6c 75 64 65 20 3c 70 6e 67 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 65 74 6a nclude.<png.h>....#include.<setj
2a800 6d 70 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 00 12 mp.h>....#include.<signal.h>....
2a820 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 75 64 65 20 3c #include.<stdio.h>....#include.<
2a840 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 stdlib.h>....#include.<swc.h>...
2a860 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 .#include.<unistd.h>....#include
2a880 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 .<wayland-server.h>....#include.
2a8a0 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 77 6c <wayland-util.h>....#include.<wl
2a8c0 64 2f 77 6c 64 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e 2f d/wld.h>...(#include.<xkbcommon/
2a8e0 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 xkbcommon-keysyms.h>....#include
2a900 20 3c 73 74 72 69 6e 67 2e 68 3e 00 00 00 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 .<string.h>.......0static.void.f
2a920 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 ocus(struct.client.*c,.bool.rais
2a940 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 e);...*static.void.on_screen_des
2a960 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 troy(void.*data);...:static.void
2a980 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 .on_screen_usable_geometry_chang
2a9a0 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f ed(void.*data);...'static.void.o
2a9c0 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 n_win_destroy(void.*data);...'st
2a9e0 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 atic.void.on_win_entered(void.*d
2aa00 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 ata);....static.void.setup(void)
2aa20 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 ;....static.void.setup_binds(voi
2aa40 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 d);...Fstatic.void.set_floating(
2aa60 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c struct.client.*c,.bool.floating,
2aa80 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c .bool.raise);...#static.void.til
2aaa0 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 e(struct.screen.*s);...(void.new
2aac0 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b _screen(struct.swc_screen.*scr);
2aae0 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 ...(void.new_window(struct.swc_w
2ab00 69 6e 64 6f 77 20 2a 77 69 6e 29 3b 00 00 00 2d 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 indow.*win);...-void.new_device(
2ab20 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 struct.libinput_device.*dev);...
2ab40 4b 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e Kvoid.focus_next(void.*data,.uin
2ab60 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
2ab80 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 32_t.state);...Kvoid.focus_prev(
2aba0 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
2abc0 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 49 76 2_t.value,.uint32_t.state);...Iv
2abe0 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f oid.kill_sel(void.*data,.uint32_
2ac00 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
2ac20 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 .state);...Kvoid.mouse_move(void
2ac40 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
2ac60 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 value,.uint32_t.state);...Mvoid.
2ac80 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f mouse_resize(void.*data,.uint32_
2aca0 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
2acc0 20 73 74 61 74 65 29 3b 00 00 00 45 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 .state);...Evoid.quit(void.*data
2ace0 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 76 61 6c 75 65 2c ,.uint32_t.time,.uint32_t.value,
2ad00 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 46 76 6f 69 64 20 73 70 61 77 6e 28 .uint32_t.state);...Fvoid.spawn(
2ad20 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
2ad40 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 2_t.value,.uint32_t.state);...Mv
2ad60 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e oid.toggle_float(void.*data,.uin
2ad80 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
2ada0 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 54 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 32_t.state);...Tvoid.toggle_floa
2adc0 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 t_global(void.*data,.uint32_t.ti
2ade0 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 me,.uint32_t.value,.uint32_t.sta
2ae00 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 te);...Lvoid.master_next(void.*d
2ae20 61 74 61 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 76 61 6c ata,.uint32_t.time,.uint32_t.val
2ae40 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 ue,.uint32_t.state);...Lvoid.mas
2ae60 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 ter_prev(void.*data,.uint32_t.ti
2ae80 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 me,.uint32_t.value,.uint32_t.sta
2aea0 74 65 29 3b 00 00 00 4e 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 te);...Nvoid.master_resize(void.
2aec0 2a 64 61 74 61 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 76 *data,.uint32_t.time,.uint32_t.v
2aee0 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 2c 73 74 alue,.uint32_t.state);.......,st
2af00 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 ruct.swc_window_handler.window_h
2af20 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f andler.=.{.........destroy.=.on_
2af40 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f win_destroy,.........entered.=.o
2af60 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 n_win_entered,....};.......,stru
2af80 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e ct.swc_screen_handler.screen_han
2afa0 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 dler.=.{...!.....destroy.=.on_sc
2afc0 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f reen_destroy,...A.....usable_geo
2afe0 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 metry_changed.=.on_screen_usable
2b000 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 21 _geometry_changed,....};.......!
2b020 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 static.uint32_t.master_width.=.0
2b040 3b 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 ;....struct.wm.wm;.......$const.
2b060 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 struct.swc_manager.manager.=.{..
2b080 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 .......new_screen.=.new_screen,.
2b0a0 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c ........new_window.=.new_window,
2b0c0 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 .........new_device.=.new_device
2b0e0 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 ,....};.......1static.void.focus
2b100 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b (struct.client.*c,.bool.raise).{
2b120 00 00 00 26 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 20 3d 20 30 ...&....uint32_t.outer_color.=.0
2b140 78 30 30 30 30 30 30 46 46 3b 00 00 00 1d 20 20 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 65 72 x000000FF;........uint32_t.outer
2b160 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 16 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c _width.=.0;........if.(wm.sel_cl
2b180 69 65 6e 74 29 00 00 00 75 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f ient)...u........swc_window_set_
2b1a0 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 border(wm.sel_client->win,.cfg.b
2b1c0 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 order_col_normal,.cfg.border_wid
2b1e0 74 68 2c 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 64 74 68 29 3b 00 00 th,.outer_color,.outer_width);..
2b200 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 69 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 ......if.(c)...i........swc_wind
2b220 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 ow_set_border(c->win,.cfg.border
2b240 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 6f _col_active,.cfg.border_width,.o
2b260 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 64 74 68 29 3b 00 00 00 22 20 20 20 uter_color,.outer_width);..."...
2b280 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 .if.(raise.&&.c.&&.c->floating).
2b2a0 00 00 24 20 20 20 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c ..$........set_floating(c,.true,
2b2c0 20 74 72 75 65 29 3b 00 00 00 28 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 .true);...(....swc_window_focus(
2b2e0 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 16 20 20 20 20 77 6d 2e 73 65 c.?.c->win.:.NULL);........wm.se
2b300 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 69 63 l_client.=.c;....}.......;static
2b320 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f .void.on_screen_usable_geometry_
2b340 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1c 20 20 20 20 73 74 72 changed(void.*data).{........str
2b360 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 0c 20 20 20 20 74 69 6c uct.screen.*s.=.data;........til
2b380 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e e(s);....}.......(static.void.on
2b3a0 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1c 20 20 _win_destroy(void.*data).{......
2b3c0 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 18 20 20 ..struct.client.*c.=.data;......
2b3e0 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 00 13 20 20 20 20 69 66 ..struct.client.*next;........if
2b400 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 2b 20 20 20 20 69 66 20 28 77 6d 2e 67 72 61 62 .(!c).return;...+....if.(wm.grab
2b420 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 7b 00 00 00 1f .active.&&.wm.grab.c.==.c).{....
2b440 20 20 20 20 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 ........wm.grab.active.=.false;.
2b460 00 00 19 20 20 20 20 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 05 ...........wm.grab.c.=.NULL;....
2b480 20 20 20 20 7d 00 00 00 14 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 ....}........if.(c->floating)...
2b4a0 27 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 '........wl_list_remove(&c->floa
2b4c0 74 5f 6c 69 6e 6b 29 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 27 20 20 20 20 20 20 20 20 t_link);........else...'........
2b4e0 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 wl_list_remove(&c->tiled_link);.
2b500 00 00 1d 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b .......if.(wm.sel_client.==.c).{
2b520 00 00 00 1d 20 20 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c ............wm.sel_client.=.NULL
2b540 3b 00 00 00 23 20 20 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 ;...#........next.=.first_float(
2b560 63 2d 3e 73 63 72 29 3b 00 00 00 12 20 20 20 20 20 20 20 20 69 66 20 28 21 6e 65 78 74 29 00 00 c->scr);............if.(!next)..
2b580 00 27 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 .'............next.=.first_tiled
2b5a0 28 63 2d 3e 73 63 72 29 3b 00 00 00 1a 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c (c->scr);............focus(next,
2b5c0 20 74 72 75 65 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 11 20 20 20 20 74 69 6c 65 28 63 2d 3e .true);........}........tile(c->
2b5e0 73 63 72 29 3b 00 00 00 0c 20 20 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 scr);........free(c);....}......
2b600 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 .(static.void.on_win_entered(voi
2b620 64 20 2a 64 61 74 61 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 d.*data).{........if.(wm.grab.ac
2b640 74 69 76 65 29 00 00 00 0f 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1c 20 20 20 20 tive)............return;........
2b660 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 13 20 20 20 20 struct.client.*c.=.data;........
2b680 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 focus(c,.true);....}........stat
2b6a0 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 21 20 20 20 20 77 6d 2e ic.void.setup(void).{...!....wm.
2b6c0 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 3f 20 20 dpy.=.wl_display_create();...?..
2b6e0 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c ..if.(!wm.dpy).die(EXIT_FAILURE,
2b700 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 ."wl_display_create.failed");...
2b720 1e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 .....wl_list_init(&wm.screens);.
2b740 00 00 1c 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 .......wl_list_init(&wm.tiled);.
2b760 00 00 1f 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 .......wl_list_init(&wm.floating
2b780 29 3b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 );........wm.sel_client.=.NULL;.
2b7a0 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 1b .......wm.sel_screen.=.NULL;....
2b7c0 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 1b 20 ....wm.grab.active.=.false;.....
2b7e0 20 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 ...wm.grab.resize.=.false;......
2b800 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 33 20 20 20 20 77 6d 2e 65 76 ..wm.grab.c.=.NULL;...3....wm.ev
2b820 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f _loop.=.wl_display_get_event_loo
2b840 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 36 20 20 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 p(wm.dpy);...6....if.(!swc_initi
2b860 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 alize(wm.dpy,.wm.ev_loop,.&manag
2b880 65 72 29 29 00 00 00 33 20 20 20 20 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 er))...3........die(EXIT_FAILURE
2b8a0 2c 20 22 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c 65 64 22 29 3b 00 00 00 12 20 ,."swc_initialize.failed");.....
2b8c0 20 20 20 73 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 20 20 20 20 20 63 6f 6e 73 74 20 63 ...setup_binds();........const.c
2b8e0 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 f5 18 00 00 00 7d 00 00 00 7e 00 har.*sock.=.wl_displa.....}...~.
2b900 00 00 00 00 00 00 00 f5 18 00 00 00 7c 00 00 00 7e 00 00 00 00 00 00 00 61 00 00 00 3a 20 20 20 ............|...~.......a...:...
2b920 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 .const.char.*sock.=.wl_display_a
2b940 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 46 20 20 20 20 69 dd_socket_auto(wm.dpy);...F....i
2b960 66 20 28 21 73 6f 63 6b 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 77 6c 5f f.(!sock).die(EXIT_FAILURE,."wl_
2b980 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 64 22 29 display_add_socket_auto.failed")
2b9a0 3b 00 00 00 27 20 20 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 ;...'....setenv("WAYLAND_DISPLAY
2b9c0 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2f 20 20 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c ",.sock,.1);.../...._log(stderr,
2b9e0 20 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 ."WAYLAND_DISPLAY=%s\n",.sock);.
2ba00 00 00 20 20 20 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 .......signal(SIGINT,.sig_handle
2ba20 72 29 3b 00 00 00 21 20 20 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 r);...!....signal(SIGTERM,.sig_h
2ba40 61 6e 64 6c 65 72 29 3b 00 00 00 21 20 20 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 andler);...!....signal(SIGQUIT,.
2ba60 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 sig_handler);....}........static
2ba80 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 41 20 20 20 .void.setup_binds(void).{...A...
2baa0 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 6f 66 28 62 .for.(size_t.i.=.0;.i.<.sizeof(b
2bac0 69 6e 64 73 29 2f 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 inds)/sizeof(binds[0]);.i++).{..
2bae0 00 29 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d .)........const.struct.bind.*b.=
2bb00 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 4b 20 20 20 20 20 20 20 20 73 77 63 5f 61 64 64 5f 62 .&binds[i];...K........swc_add_b
2bb20 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d inding(b->type,.b->mods,.b->ksym
2bb40 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 05 20 20 ,.b->fn,.(void.*)&b->arg);......
2bb60 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f ..}....}.......Gstatic.void.set_
2bb80 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 floating(struct.client.*c,.bool.
2bba0 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 13 20 20 20 20 69 floating,.bool.raise).{........i
2bbc0 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 13 20 20 20 20 69 66 20 28 66 6c 6f 61 74 69 f.(!c).return;........if.(floati
2bbe0 6e 67 29 20 7b 00 00 00 1b 20 20 20 20 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e ng).{............if.(!c->floatin
2bc00 67 29 20 7b 00 00 00 1f 20 20 20 20 20 20 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 g).{................c->floating.
2bc20 3d 20 74 72 75 65 3b 00 00 00 2b 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 =.true;...+............wl_list_r
2bc40 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 39 20 20 20 20 20 20 emove(&c->tiled_link);...9......
2bc60 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e ......wl_list_insert(&wm.floatin
2bc80 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 20 20 20 20 20 20 7d g,.&c->float_link);............}
2bca0 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 2b 20 20 20 20 20 20 20 20 20 20 .else.if.(raise).{...+..........
2bcc0 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 ..wl_list_remove(&c->float_link)
2bce0 3b 00 00 00 39 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 ;...9............wl_list_insert(
2bd00 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 &wm.floating,.&c->float_link);..
2bd20 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 27 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f ..........}...'........swc_windo
2bd40 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0c 20 20 20 20 7d 20 w_set_stacked(c->win);........}.
2bd60 65 6c 73 65 20 7b 00 00 00 1a 20 20 20 20 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e else.{............if.(c->floatin
2bd80 67 29 20 7b 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 g).{................c->floating.
2bda0 3d 20 66 61 6c 73 65 3b 00 00 00 2b 20 20 20 20 20 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f =.false;...+............wl_list_
2bdc0 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 36 20 20 20 20 20 remove(&c->float_link);...6.....
2bde0 20 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c .......wl_list_insert(&wm.tiled,
2be00 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 .&c->tiled_link);............}..
2be20 00 25 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 .%........swc_window_set_tiled(c
2be40 2d 3e 77 69 6e 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 ->win);........}....}.......$sta
2be60 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 tic.void.tile(struct.screen.*s).
2be80 7b 00 00 00 15 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1e 20 20 {........struct.client.*c;......
2bea0 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 23 ..struct.swc_rectangle.geom;...#
2bec0 20 20 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 ....struct.swc_rectangle.*scr_ge
2bee0 6f 6d 3b 00 00 00 33 20 20 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 om;...3....int32_t.out_gaps.=.cf
2bf00 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 38 20 20 g.gaps.+.cfg.border_width;...8..
2bf20 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 ..int32_t.in_gaps.=.cfg.gaps.+.(
2bf40 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 11 20 20 20 20 69 6e cfg.border_width.*.2);........in
2bf60 74 33 32 5f 74 20 78 2c 20 79 3b 00 00 00 12 20 20 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 68 t32_t.x,.y;........uint32_t.w,.h
2bf80 3b 00 00 00 13 20 20 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e 3b 00 00 00 28 20 20 20 20 ;........if.(!s).return;...(....
2bfa0 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 scr_geom.=.&s->scr->usable_geome
2bfc0 74 72 79 3b 00 00 00 11 20 20 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 47 20 20 20 try;........size_t.n.=.0;...G...
2bfe0 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 .wl_list_for_each(c,.&wm.tiled,.
2c000 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 tiled_link).if.(is_tiled(c,.s)).
2c020 6e 2b 2b 3b 00 00 00 17 20 20 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 20 72 65 74 75 72 6e 3b 00 n++;........if.(n.==.0).return;.
2c040 00 00 1f 20 20 20 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 .......x.=.scr_geom->x.+.out_gap
2c060 73 3b 00 00 00 1f 20 20 20 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f s;........y.=.scr_geom->y.+.out_
2c080 67 61 70 73 3b 00 00 00 27 20 20 20 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 gaps;...'....w.=.scr_geom->width
2c0a0 20 2d 20 28 6f 75 74 5f 67 61 70 73 2a 32 29 3b 00 00 00 28 20 20 20 20 68 20 3d 20 73 63 72 5f .-.(out_gaps*2);...(....h.=.scr_
2c0c0 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 28 6f 75 74 5f 67 61 70 73 2a 32 29 3b 00 00 00 11 geom->height.-.(out_gaps*2);....
2c0e0 20 20 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 34 20 20 20 20 20 20 20 20 77 6c 5f ....if.(n.==.1).{...4........wl_
2c100 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 list_for_each(c,.&wm.tiled,.tile
2c120 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 2a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 69 73 d_link).{...*............if.(!is
2c140 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 44 20 20 20 20 20 _tiled(c,.s)).continue;...D.....
2c160 20 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 20 67 .......geom.x.=.x;.geom.y.=.y;.g
2c180 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 eom.width.=.w;.geom.height.=.h;.
2c1a0 00 00 33 20 20 20 20 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 ..3............swc_window_set_ge
2c1c0 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 13 20 20 20 20 20 20 ometry(c->win,.&geom);..........
2c1e0 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 05 20 20 ......return;............}......
2c200 20 20 7d 00 00 00 11 20 20 20 20 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 30 20 20 20 20 ..}........size_t.i.=.0;...0....
2c220 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 wl_list_for_each(c,.&wm.tiled,.t
2c240 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 26 20 20 20 20 20 20 20 20 69 66 20 28 21 69 73 5f iled_link).{...&........if.(!is_
2c260 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 53 20 20 20 20 20 20 tiled(c,.s)).continue;...S......
2c280 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d 20 30 29 20 6d 61 73 74 65 72 5f ..if.(master_width.==.0).master_
2c2a0 77 69 64 74 68 20 3d 20 28 28 77 2d 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 width.=.((w-in_gaps).*.cfg.maste
2c2c0 72 5f 77 69 64 74 68 29 2f 31 30 30 3b 00 00 00 15 20 20 20 20 20 20 20 20 69 66 20 28 69 20 3d r_width)/100;............if.(i.=
2c2e0 3d 20 30 29 20 7b 00 00 00 4f 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 =.0).{...O............geom.x.=.x
2c300 3b 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 ;.geom.y.=.y;.geom.width.=.maste
2c320 72 5f 77 69 64 74 68 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 10 20 20 20 r_width;.geom.height.=.h;.......
2c340 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 22 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e .....}.else.{..."............uin
2c360 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 2d 31 3b 00 00 00 1f 20 20 20 20 20 20 20 20 20 t32_t.stackn.=.n-1;.............
2c380 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 2d 31 3b 00 00 00 44 20 20 20 20 20 20 ...uint32_t.idx.=.i-1;...D......
2c3a0 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 ......uint32_t.stack_height.=.(h
2c3c0 20 2d 20 69 6e 5f 67 61 70 73 2a 28 73 74 61 63 6b 6e 2d 31 29 29 2f 73 74 61 63 6b 6e 3b 00 00 .-.in_gaps*(stackn-1))/stackn;..
2c3e0 00 30 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 .0............geom.x.=.x.+.maste
2c400 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 36 20 20 20 20 20 20 20 20 20 20 r_width.+.in_gaps;...6..........
2c420 20 20 67 65 6f 6d 2e 79 20 3d 20 79 20 2b 20 28 69 64 78 2a 28 73 74 61 63 6b 5f 68 65 69 67 68 ..geom.y.=.y.+.(idx*(stack_heigh
2c440 74 2b 69 6e 5f 67 61 70 73 29 29 3b 00 00 00 34 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d t+in_gaps));...4............geom
2c460 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 .width.=.w.-.master_width.-.in_g
2c480 61 70 73 3b 00 00 00 27 20 20 20 20 20 20 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 aps;...'............geom.height.
2c4a0 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 09 20 20 20 20 20 20 20 20 7d 00 00 00 2f =.stack_height;............}.../
2c4c0 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 ........swc_window_set_geometry(
2c4e0 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0c 20 20 20 20 20 20 20 20 69 2b 2b 3b 00 c->win,.&geom);............i++;.
2c500 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 .......}....}.......)void.new_sc
2c520 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 reen(struct.swc_screen.*scr).{..
2c540 00 2a 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 .*....struct.screen.*s.=.malloc(
2c560 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 3a 20 20 20 20 69 66 20 28 21 73 29 20 64 69 65 28 sizeof(*s));...:....if.(!s).die(
2c580 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 6d 61 6c 6c 6f 63 EXIT_FAILURE,."new.screen.malloc
2c5a0 20 66 61 69 6c 65 64 22 29 3b 00 00 00 39 20 20 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 20 .failed");...9....s->scr.=.scr;.
2c5c0 73 2d 3e 78 20 3d 20 30 3b 20 73 2d 3e 79 20 3d 20 30 3b 20 73 2d 3e 77 20 3d 20 30 3b 20 73 2d s->x.=.0;.s->y.=.0;.s->w.=.0;.s-
2c5e0 3e 68 20 3d 20 30 3b 00 00 00 2a 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 >h.=.0;...*....wl_list_insert(&w
2c600 6d 2e 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 2a 20 20 20 20 69 66 20 m.screens,.&s->link);...*....if.
2c620 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d (!wm.sel_screen).wm.sel_screen.=
2c640 20 73 3b 00 00 00 34 20 20 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 .s;...4....swc_screen_set_handle
2c660 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 31 20 r(scr,.&screen_handler,.s);...1.
2c680 20 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e ..._log(stderr,."new_screen=%p\n
2c6a0 22 2c 20 28 76 6f 69 64 20 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 ",.(void.*)scr);....}.......)voi
2c6c0 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a d.new_window(struct.swc_window.*
2c6e0 77 69 6e 29 20 7b 00 00 00 2a 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d win).{...*....struct.client.*c.=
2c700 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 36 20 20 20 20 69 66 20 28 .malloc(sizeof(*c));...6....if.(
2c720 21 63 29 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c !c).die(EXIT_FAILURE,."malloc.cl
2c740 69 65 6e 74 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0b 20 20 20 20 63 2d 3e 77 69 6e 20 f5 18 00 ient.failed");........c->win....
2c760 00 00 dd 00 00 00 de 00 00 00 00 00 00 00 00 f5 18 00 00 00 dc 00 00 00 de 00 00 00 00 00 00 00 ................................
2c780 29 00 00 00 7c 20 20 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 20 63 2d 3e 73 63 72 20 3d 20 )...|....c->win.=.win;.c->scr.=.
2c7a0 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 20 63 2d 3e 6d 61 70 70 65 64 3d 66 61 6c 73 65 3b 20 wm.sel_screen;.c->mapped=false;.
2c7c0 63 2d 3e 66 6c 6f 61 74 69 6e 67 3d 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 20 c->floating=wm.global_floating;.
2c7e0 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 3d 66 61 6c 73 65 3b 20 63 2d 3e 77 73 3d 66 61 6c 73 65 c->fullscreen=false;.c->ws=false
2c800 3b 00 00 00 ad 20 20 20 20 69 66 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 7b 20 77 6c 5f 6c 69 73 ;........if(c->floating){.wl_lis
2c820 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 26 63 2d 3e 66 6c 6f 61 74 5f t_insert(&wm.floating,&c->float_
2c840 6c 69 6e 6b 29 3b 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 link);.wl_list_init(&c->tiled_li
2c860 6e 6b 29 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c nk);.swc_window_set_handler(win,
2c880 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 63 29 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 &window_handler,c);.swc_window_s
2c8a0 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 20 7d 00 00 00 9d 20 20 20 20 65 6c 73 65 20 7b et_stacked(win);.}........else.{
2c8c0 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 26 63 2d 3e 74 69 .wl_list_insert(&wm.tiled,&c->ti
2c8e0 6c 65 64 5f 6c 69 6e 6b 29 3b 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 led_link);.wl_list_init(&c->floa
2c900 74 5f 6c 69 6e 6b 29 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 t_link);.swc_window_set_handler(
2c920 77 69 6e 2c 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 63 29 3b 20 73 77 63 5f 77 69 6e 64 win,&window_handler,c);.swc_wind
2c940 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 7d 00 00 00 68 20 20 20 20 73 77 63 5f 77 ow_set_tiled(win);}...h....swc_w
2c960 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 20 66 6f 63 75 73 28 63 2c 74 72 75 65 29 3b 20 indow_show(win);.focus(c,true);.
2c980 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 20 5f 6c 6f 67 28 73 74 64 65 72 72 tile(wm.sel_screen);._log(stderr
2c9a0 2c 22 6e 65 77 5f 77 69 6e 64 6f 77 3d 25 70 5c 6e 22 2c 28 76 6f 69 64 2a 29 77 69 6e 29 3b 00 ,"new_window=%p\n",(void*)win);.
2c9c0 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 ...}.......;void.new_device(stru
2c9e0 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 ct.libinput_device.*dev).{.(void
2ca00 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 )dev;.}.......Kvoid.focus_next(v
2ca20 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 oid.*data,.uint32_t.time,.uint32
2ca40 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 00 00 00 26 20 20 _t.value,.uint32_t.state){...&..
2ca60 20 20 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 ..(void)data;(void)time;(void)va
2ca80 6c 75 65 3b 00 00 00 36 20 20 20 20 69 66 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f lue;...6....if(state.!=.WL_KEYBO
2caa0 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 ARD_KEY_STATE_PRESSED).return;..
2cac0 00 1e 20 20 20 20 69 66 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e 3b ......if(!wm.sel_screen).return;
2cae0 00 00 00 35 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3d 77 6d 2e 73 65 6c 5f ...5....struct.screen.*s=wm.sel_
2cb00 73 63 72 65 65 6e 3b 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 5a 20 20 20 screen;.struct.client.*c;...Z...
2cb20 20 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 7b 20 63 3d 66 69 72 73 74 5f 66 6c 6f .if(!wm.sel_client){.c=first_flo
2cb40 61 74 28 73 29 3b 20 69 66 28 21 63 29 63 3d 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 at(s);.if(!c)c=first_tiled(s);.f
2cb60 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 7d 00 00 00 20 20 20 20 20 69 ocus(c,false);.return;}........i
2cb80 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 7b 00 00 00 9d 20 f(wm.sel_client->floating){.....
2cba0 20 20 20 20 20 20 20 66 6f 72 28 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e .......for(c=wl_container_of(wm.
2cbc0 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 63 2c 66 6c sel_client->float_link.next,c,fl
2cbe0 6f 61 74 5f 6c 69 6e 6b 29 3b 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 21 3d 26 77 6d 2e 66 oat_link);.&c->float_link!=&wm.f
2cc00 6c 6f 61 74 69 6e 67 3b 20 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c loating;.c=wl_container_of(c->fl
2cc20 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 63 2c 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 35 oat_link.next,c,float_link))...5
2cc40 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 69 73 5f 66 6c 6f 61 74 28 63 2c 73 29 29 7b 66 6f ............if(is_float(c,s)){fo
2cc60 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 72 65 74 75 72 6e 3b 7d 00 00 00 4f 20 20 20 20 20 20 20 cus(c,false);return;}...O.......
2cc80 20 63 3d 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 69 66 28 21 63 29 63 3d 66 69 72 73 74 .c=first_tiled(s);.if(!c)c=first
2cca0 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 28 63 29 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b _float(s);.if(c).focus(c,false);
2ccc0 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 95 20 20 20 20 66 6f 72 28 63 3d 77 .return;........}........for(c=w
2cce0 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 l_container_of(wm.sel_client->ti
2cd00 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 63 2c 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 26 63 2d led_link.next,c,tiled_link);.&c-
2cd20 3e 74 69 6c 65 64 5f 6c 69 6e 6b 21 3d 26 77 6d 2e 74 69 6c 65 64 3b 63 3d 77 6c 5f 63 6f 6e 74 >tiled_link!=&wm.tiled;c=wl_cont
2cd40 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 63 2c 74 69 ainer_of(c->tiled_link.next,c,ti
2cd60 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 33 20 20 20 20 20 20 20 20 69 66 28 69 73 5f 74 69 6c 65 led_link))...3........if(is_tile
2cd80 64 28 63 2c 73 29 29 7b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b d(c,s)){.focus(c,false);.return;
2cda0 7d 00 00 00 3d 20 20 20 20 63 3d 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 28 21 63 }...=....c=first_float(s);.if(!c
2cdc0 29 63 3d 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 )c=first_tiled(s);.focus(c,false
2cde0 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 );....}.......Kvoid.focus_prev(v
2ce00 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 oid.*data,.uint32_t.time,.uint32
2ce20 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 00 00 00 26 20 20 _t.value,.uint32_t.state){...&..
2ce40 20 20 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 ..(void)data;(void)time;(void)va
2ce60 6c 75 65 3b 00 00 00 36 20 20 20 20 69 66 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f lue;...6....if(state.!=.WL_KEYBO
2ce80 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 72 65 74 75 72 6e 3b 00 00 ARD_KEY_STATE_PRESSED).return;..
2cea0 00 1e 20 20 20 20 69 66 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 72 65 74 75 72 6e 3b ......if(!wm.sel_screen).return;
2cec0 00 00 00 35 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 3d 77 6d 2e 73 65 6c 5f ...5....struct.screen.*s=wm.sel_
2cee0 73 63 72 65 65 6e 3b 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 5a 20 20 20 screen;.struct.client.*c;...Z...
2cf00 20 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 7b 20 63 3d 66 69 72 73 74 5f 66 6c 6f .if(!wm.sel_client){.c=first_flo
2cf20 61 74 28 73 29 3b 20 69 66 28 21 63 29 63 3d 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 at(s);.if(!c)c=first_tiled(s);.f
2cf40 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 7d 00 00 00 20 20 20 20 20 69 ocus(c,false);.return;}........i
2cf60 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 7b 00 00 00 9c 20 f(wm.sel_client->floating){.....
2cf80 20 20 20 20 20 20 20 66 6f 72 28 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e .......for(c=wl_container_of(wm.
2cfa0 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c 63 2c 66 6c sel_client->float_link.prev,c,fl
2cfc0 6f 61 74 5f 6c 69 6e 6b 29 3b 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 21 3d 26 77 6d 2e 66 oat_link);.&c->float_link!=&wm.f
2cfe0 6c 6f 61 74 69 6e 67 3b 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 66 6c 6f loating;c=wl_container_of(c->flo
2d000 61 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c 63 2c 66 6c 6f 61 74 5f 6c 69 6e 6b 29 29 00 00 00 35 20 at_link.prev,c,float_link))...5.
2d020 20 20 20 20 20 20 20 20 20 20 20 69 66 28 69 73 5f 66 6c 6f 61 74 28 63 2c 73 29 29 7b 66 6f 63 ...........if(is_float(c,s)){foc
2d040 75 73 28 63 2c 66 61 6c 73 65 29 3b 72 65 74 75 72 6e 3b 7d 00 00 00 4d 20 20 20 20 20 20 20 20 us(c,false);return;}...M........
2d060 63 3d 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 69 66 28 21 63 29 63 3d 6c 61 73 74 5f 66 6c c=last_tiled(s);.if(!c)c=last_fl
2d080 6f 61 74 28 73 29 3b 20 69 66 28 63 29 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 oat(s);.if(c).focus(c,false);.re
2d0a0 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 95 20 20 20 20 66 6f 72 28 63 3d 77 6c 5f 63 turn;........}........for(c=wl_c
2d0c0 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 ontainer_of(wm.sel_client->tiled
2d0e0 5f 6c 69 6e 6b 2e 70 72 65 76 2c 63 2c 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 26 63 2d 3e 74 69 _link.prev,c,tiled_link);.&c->ti
2d100 6c 65 64 5f 6c 69 6e 6b 21 3d 26 77 6d 2e 74 69 6c 65 64 3b 63 3d 77 6c 5f 63 6f 6e 74 61 69 6e led_link!=&wm.tiled;c=wl_contain
2d120 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c 63 2c 74 69 6c 65 64 er_of(c->tiled_link.prev,c,tiled
2d140 5f 6c 69 6e 6b 29 29 00 00 00 33 20 20 20 20 20 20 20 20 69 66 28 69 73 5f 74 69 6c 65 64 28 63 _link))...3........if(is_tiled(c
2d160 2c 73 29 29 7b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 20 72 65 74 75 72 6e 3b 7d 00 00 ,s)){.focus(c,false);.return;}..
2d180 00 3b 20 20 20 20 63 3d 6c 61 73 74 5f 66 6c 6f 61 74 28 73 29 3b 20 69 66 28 21 63 29 63 3d 6c .;....c=last_float(s);.if(!c)c=l
2d1a0 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 20 66 6f 63 75 73 28 63 2c 66 61 6c 73 65 29 3b 00 00 00 ast_tiled(s);.focus(c,false);...
2d1c0 01 7d 00 00 00 00 00 00 00 3e 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 .}.......>void.kill_sel(void.*da
2d1e0 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
2d200 65 2c 20 75 69 6e 74 33 f5 18 00 00 01 05 00 00 01 06 00 00 00 00 00 00 00 00 f5 18 00 00 01 04 e,.uint3........................
2d220 00 00 01 06 00 00 00 00 00 00 00 11 00 00 00 da 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f ................void.kill_sel(vo
2d240 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f id.*data,.uint32_t.time,.uint32_
2d260 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 t.value,.uint32_t.state){(void)d
2d280 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 ata;(void)time;(void)value;if(st
2d2a0 61 74 65 21 3d 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 ate!=WL_KEYBOARD_KEY_STATE_PRESS
2d2c0 45 44 29 72 65 74 75 72 6e 3b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 72 65 74 75 ED)return;if(!wm.sel_client)retu
2d2e0 72 6e 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 rn;.swc_window_close(wm.sel_clie
2d300 6e 74 2d 3e 77 69 6e 29 3b 7d 00 00 00 00 00 00 00 6a 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 nt->win);}.......jvoid.mouse_mov
2d320 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 e(void.*data,uint32_t.time,uint3
2d340 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 2_t.value,uint32_t.state){(void)
2d360 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 a4 data;(void)time;(void)value;....
2d380 69 66 28 73 74 61 74 65 3d 3d 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 if(state==WL_POINTER_BUTTON_STAT
2d3a0 45 5f 50 52 45 53 53 45 44 29 7b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 72 65 74 E_PRESSED){if(!wm.sel_client)ret
2d3c0 75 72 6e 3b 20 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 urn;.if(!wm.sel_client->floating
2d3e0 29 7b 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 74 72 75 ){set_floating(wm.sel_client,tru
2d400 65 2c 66 61 6c 73 65 29 3b 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 e,false);.tile(wm.sel_client->sc
2d420 72 29 3b 7d 00 00 00 6b 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 74 72 75 65 3b 20 77 6d 2e r);}...kwm.grab.active=true;.wm.
2d440 67 72 61 62 2e 72 65 73 69 7a 65 3d 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 77 6d 2e grab.resize=false;.wm.grab.c=wm.
2d460 73 65 6c 5f 63 6c 69 65 6e 74 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 6d 6f 76 sel_client;.swc_window_begin_mov
2d480 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 7d 00 00 00 8c 65 6c 73 65 7b 69 66 28 21 e(wm.grab.c->win);}....else{if(!
2d4a0 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 7c 7c 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 wm.grab.active.||.wm.grab.resize
2d4c0 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 72 65 74 75 72 6e 3b 20 73 77 63 5f 77 69 6e 64 6f .||.!wm.grab.c)return;.swc_windo
2d4e0 77 5f 65 6e 64 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 20 77 6d 2e 67 w_end_move(wm.grab.c->win);.wm.g
2d500 72 61 62 2e 61 63 74 69 76 65 3d 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 4e 55 4c 4c rab.active=false;.wm.grab.c=NULL
2d520 3b 7d 7d 00 00 00 00 00 00 00 6c 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 ;}}.......lvoid.mouse_resize(voi
2d540 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 d.*data,uint32_t.time,uint32_t.v
2d560 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b alue,uint32_t.state){(void)data;
2d580 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 a3 69 66 28 73 74 (void)time;(void)value;....if(st
2d5a0 61 74 65 3d 3d 57 4c 5f 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 ate==WL_POINTER_BUTTON_STATE_PRE
2d5c0 53 53 45 44 29 7b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 72 65 74 75 72 6e 3b 69 SSED){if(!wm.sel_client)return;i
2d5e0 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 7b 73 65 74 5f f(!wm.sel_client->floating){set_
2d600 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 74 72 75 65 2c 66 61 6c 73 floating(wm.sel_client,true,fals
2d620 65 29 3b 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 7d 00 00 e);.tile(wm.sel_client->scr);}..
2d640 00 9a 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 72 ..wm.grab.active=true;.wm.grab.r
2d660 65 73 69 7a 65 3d 74 72 75 65 3b 20 77 6d 2e 67 72 61 62 2e 63 3d 77 6d 2e 73 65 6c 5f 63 6c 69 esize=true;.wm.grab.c=wm.sel_cli
2d680 65 6e 74 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 72 65 73 69 7a 65 28 77 6d 2e ent;.swc_window_begin_resize(wm.
2d6a0 67 72 61 62 2e 63 2d 3e 77 69 6e 2c 20 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 52 49 47 grab.c->win,.SWC_WINDOW_EDGE_RIG
2d6c0 48 54 7c 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 42 4f 54 54 4f 4d 29 3b 7d 00 00 00 8f HT|SWC_WINDOW_EDGE_BOTTOM);}....
2d6e0 65 6c 73 65 7b 69 66 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 7c 7c 20 21 77 6d 2e 67 else{if(!wm.grab.active.||.!wm.g
2d700 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 63 29 72 65 74 75 72 6e 3b rab.resize.||.!wm.grab.c)return;
2d720 20 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 .swc_window_end_resize(wm.grab.c
2d740 2d 3e 77 69 6e 29 3b 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 3d 66 61 6c 73 65 3b 20 77 6d ->win);.wm.grab.active=false;.wm
2d760 2e 67 72 61 62 2e 63 3d 4e 55 4c 4c 3b 7d 7d 00 00 00 00 00 00 00 8f 76 6f 69 64 20 71 75 69 74 .grab.c=NULL;}}........void.quit
2d780 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 (void.*data,uint32_t.time,uint32
2d7a0 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 _t.value,uint32_t.state){(void)d
2d7c0 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 28 76 6f 69 64 ata;(void)time;(void)value;(void
2d7e0 29 73 74 61 74 65 3b 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 28 77 6d 2e )state;.wl_display_terminate(wm.
2d800 64 70 79 29 3b 7d 00 00 00 00 00 00 00 ef 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 dpy);}........void.spawn(void.*d
2d820 61 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 ata,uint32_t.time,uint32_t.value
2d840 2c 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 ,uint32_t.state){(void)time;(voi
2d860 64 29 76 61 6c 75 65 3b 20 75 6e 69 6f 6e 20 61 72 67 20 2a 61 3d 64 61 74 61 3b 20 63 68 61 72 d)value;.union.arg.*a=data;.char
2d880 20 2a 63 6f 6e 73 74 20 2a 63 6d 64 3d 28 63 68 61 72 2a 63 6f 6e 73 74 2a 29 61 2d 3e 76 3b 69 .*const.*cmd=(char*const*)a->v;i
2d8a0 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f 50 f(state!=WL_KEYBOARD_KEY_STATE_P
2d8c0 52 45 53 53 45 44 29 72 65 74 75 72 6e 3b 20 69 66 28 66 6f 72 6b 28 29 3d 3d 30 29 7b 65 78 65 RESSED)return;.if(fork()==0){exe
2d8e0 63 76 70 28 63 6d 64 5b 30 5d 2c 63 6d 64 29 3b 5f 65 78 69 74 28 31 32 37 29 3b 7d 7d 00 00 00 cvp(cmd[0],cmd);_exit(127);}}...
2d900 00 00 00 00 99 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 .....void.toggle_float(void.*dat
2d920 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 a,uint32_t.time,uint32_t.value,u
2d940 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 int32_t.state){(void)data;(void)
2d960 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 time;(void)value;if(state!=WL_KE
2d980 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 72 65 74 75 72 f5 18 YBOARD_KEY_STATE_PRESSED)retur..
2d9a0 00 00 01 15 00 00 01 16 00 00 00 00 00 00 00 00 f5 18 00 00 01 14 00 00 01 16 00 00 00 00 00 00 ................................
2d9c0 00 24 00 00 01 0a 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 .$....void.toggle_float(void.*da
2d9e0 74 61 2c 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c ta,uint32_t.time,uint32_t.value,
2da00 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 uint32_t.state){(void)data;(void
2da20 29 74 69 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b )time;(void)value;if(state!=WL_K
2da40 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 72 65 74 75 72 6e EYBOARD_KEY_STATE_PRESSED)return
2da60 3b 69 66 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 72 65 74 75 72 6e 3b 20 73 65 74 5f 66 ;if(!wm.sel_client)return;.set_f
2da80 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 21 77 6d 2e 73 65 6c 5f 63 6c loating(wm.sel_client,!wm.sel_cl
2daa0 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 2c 74 72 75 65 29 3b 20 74 69 6c 65 28 77 6d 2e 73 65 ient->floating,true);.tile(wm.se
2dac0 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 7d 00 00 00 cc 76 6f 69 64 20 74 6f 67 67 6c 65 5f l_client->scr);}....void.toggle_
2dae0 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 5f 74 float_global(void.*data,uint32_t
2db00 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 73 74 .time,uint32_t.value,uint32_t.st
2db20 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f 69 64 ate){(void)data;(void)time;(void
2db40 29 76 61 6c 75 65 3b 20 69 66 28 73 74 61 74 65 21 3d 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 )value;.if(state!=WL_KEYBOARD_KE
2db60 59 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 72 65 74 75 72 6e 3b 20 77 6d 2e 67 6c 6f 62 61 Y_STATE_PRESSED)return;.wm.globa
2db80 6c 5f 66 6c 6f 61 74 69 6e 67 3d 21 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 7d l_floating=!wm.global_floating;}
2dba0 00 00 00 78 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c ...xvoid.master_next(void.*data,
2dbc0 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e uint32_t.time,uint32_t.value,uin
2dbe0 74 33 32 5f 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 t32_t.state){(void)data;(void)ti
2dc00 6d 65 3b 28 76 6f 69 64 29 76 61 6c 75 65 3b 28 76 6f 69 64 29 73 74 61 74 65 3b 7d 00 00 00 78 me;(void)value;(void)state;}...x
2dc20 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 void.master_prev(void.*data,uint
2dc40 33 32 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 32_t.time,uint32_t.value,uint32_
2dc60 74 20 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 t.state){(void)data;(void)time;(
2dc80 76 6f 69 64 29 76 61 6c 75 65 3b 28 76 6f 69 64 29 73 74 61 74 65 3b 7d 00 00 00 7a 76 6f 69 64 void)value;(void)state;}...zvoid
2dca0 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 75 69 6e 74 33 32 .master_resize(void.*data,uint32
2dcc0 5f 74 20 74 69 6d 65 2c 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 75 69 6e 74 33 32 5f 74 20 _t.time,uint32_t.value,uint32_t.
2dce0 73 74 61 74 65 29 7b 28 76 6f 69 64 29 64 61 74 61 3b 28 76 6f 69 64 29 74 69 6d 65 3b 28 76 6f state){(void)data;(void)time;(vo
2dd00 69 64 29 76 61 6c 75 65 3b 28 76 6f 69 64 29 73 74 61 74 65 3b 7d 00 00 00 00 00 00 00 5e 73 74 id)value;(void)state;}.......^st
2dd20 61 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 atic.int.write_png(const.char.*f
2dd40 69 6c 65 6e 61 6d 65 2c 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c 69 6e 74 20 77 ilename,unsigned.char.*buf,int.w
2dd60 69 64 74 68 2c 69 6e 74 20 68 65 69 67 68 74 2c 69 6e 74 20 73 74 72 69 64 65 29 7b 00 00 00 34 idth,int.height,int.stride){...4
2dd80 20 20 20 20 46 49 4c 45 20 2a 66 70 3d 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 22 77 62 22 ....FILE.*fp=fopen(filename,"wb"
2dda0 29 3b 20 69 66 28 21 66 70 29 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 7a 20 20 20 20 70 6e 67 5f );.if(!fp)return.-1;...z....png_
2ddc0 73 74 72 75 63 74 70 20 70 6e 67 5f 70 74 72 3d 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 structp.png_ptr=png_create_write
2dde0 5f 73 74 72 75 63 74 28 50 4e 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 4e 55 _struct(PNG_LIBPNG_VER_STRING,NU
2de00 4c 4c 2c 4e 55 4c 4c 2c 4e 55 4c 4c 29 3b 20 69 66 28 21 70 6e 67 5f 70 74 72 29 7b 66 63 6c 6f LL,NULL,NULL);.if(!png_ptr){fclo
2de20 73 65 28 66 70 29 3b 72 65 74 75 72 6e 20 2d 32 3b 7d 00 00 00 84 20 20 20 20 70 6e 67 5f 69 6e se(fp);return.-2;}........png_in
2de40 66 6f 70 20 69 6e 66 6f 5f 70 74 72 3d 70 6e 67 5f 63 72 65 61 74 65 5f 69 6e 66 6f 5f 73 74 72 fop.info_ptr=png_create_info_str
2de60 75 63 74 28 70 6e 67 5f 70 74 72 29 3b 20 69 66 28 21 69 6e 66 6f 5f 70 74 72 29 7b 70 6e 67 5f uct(png_ptr);.if(!info_ptr){png_
2de80 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 4e 55 destroy_write_struct(&png_ptr,NU
2dea0 4c 4c 29 3b 66 63 6c 6f 73 65 28 66 70 29 3b 72 65 74 75 72 6e 20 2d 33 3b 7d 00 00 00 67 20 20 LL);fclose(fp);return.-3;}...g..
2dec0 20 20 69 66 28 73 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 ..if(setjmp(png_jmpbuf(png_ptr))
2dee0 29 7b 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f ){png_destroy_write_struct(&png_
2df00 70 74 72 2c 26 69 6e 66 6f 5f 70 74 72 29 3b 66 63 6c 6f 73 65 28 66 70 29 3b 72 65 74 75 72 6e ptr,&info_ptr);fclose(fp);return
2df20 20 2d 34 3b 7d 00 00 00 1c 20 20 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 .-4;}........png_init_io(png_ptr
2df40 2c 66 70 29 3b 00 00 00 88 20 20 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 ,fp);........png_set_IHDR(png_pt
2df60 72 2c 69 6e 66 6f 5f 70 74 72 2c 77 69 64 74 68 2c 68 65 69 67 68 74 2c 38 2c 50 4e 47 5f 43 4f r,info_ptr,width,height,8,PNG_CO
2df80 4c 4f 52 5f 54 59 50 45 5f 52 47 42 41 2c 50 4e 47 5f 49 4e 54 45 52 4c 41 43 45 5f 4e 4f 4e 45 LOR_TYPE_RGBA,PNG_INTERLACE_NONE
2dfa0 2c 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 54 59 50 45 5f 42 41 53 45 2c 50 4e 47 5f 46 ,PNG_COMPRESSION_TYPE_BASE,PNG_F
2dfc0 49 4c 54 45 52 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 25 20 20 20 20 70 6e 67 5f 77 72 69 ILTER_TYPE_BASE);...%....png_wri
2dfe0 74 65 5f 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 42 20 20 te_info(png_ptr,info_ptr);...B..
2e000 20 20 66 6f 72 28 69 6e 74 20 79 3d 30 3b 79 3c 68 65 69 67 68 74 3b 79 2b 2b 29 20 70 6e 67 5f ..for(int.y=0;y<height;y++).png_
2e020 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 72 2c 62 75 66 2b 79 2a 73 74 72 69 64 65 29 3b write_row(png_ptr,buf+y*stride);
2e040 00 00 00 24 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 69 6e ...$....png_write_end(png_ptr,in
2e060 66 6f 5f 70 74 72 29 3b 00 00 00 31 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 fo_ptr);...1....png_destroy_writ
2e080 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 e_struct(&png_ptr,&info_ptr);...
2e0a0 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 30 .....fclose(fp);........return.0
2e0c0 3b 00 00 00 01 7d 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 ;....}.......1static.int.take_sc
2e0e0 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 29 7b 00 reenshot(const.char.*filename){.
2e100 00 00 25 20 20 20 20 69 6e 74 20 63 6f 75 6e 74 3d 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 5f ..%....int.count=swc_get_screen_
2e120 63 6f 75 6e 74 28 29 3b 00 00 00 1a 20 20 20 20 69 66 28 63 6f 75 6e 74 3c 31 29 20 72 65 74 75 count();........if(count<1).retu
2e140 72 6e 20 2d 31 3b 00 00 00 30 20 20 20 20 73 74 72 75 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 rn.-1;...0....struct.wld_screen.
2e160 2a 73 3d 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 28 30 29 2d 3e 73 63 72 3b 00 00 00 15 20 20 *s=swc_get_screen(0)->scr;......
2e180 20 20 69 66 28 21 73 29 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 33 20 20 20 20 75 6e 73 69 67 ..if(!s).return.-2;...3....unsig
2e1a0 6e 65 64 20 63 68 61 72 20 2a 62 75 66 3d 6d 61 6c 6c 6f 63 28 73 2d 3e 73 74 72 69 64 65 2a 73 ned.char.*buf=malloc(s->stride*s
2e1c0 2d 3e 68 65 69 67 68 74 29 3b 00 00 00 17 20 20 20 20 69 66 28 21 62 75 66 29 20 72 65 74 75 72 ->height);........if(!buf).retur
2e1e0 6e 20 2d 33 3b 00 00 00 3a 20 20 20 20 69 66 28 77 6c 64 5f 63 61 70 74 75 72 65 5f 73 63 72 65 n.-3;...:....if(wld_capture_scre
2e200 65 6e 28 73 2c 62 75 66 29 21 3d 30 29 7b 66 72 65 65 28 62 75 66 29 3b 72 65 74 75 72 6e 20 2d en(s,buf)!=0){free(buf);return.-
2e220 34 3b 7d 00 00 00 41 20 20 20 20 69 6e 74 20 72 65 74 3d 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 4;}...A....int.ret=write_png(fil
2e240 65 6e 61 6d 65 2c 62 75 66 2c 73 2d 3e 77 69 64 74 68 2c 73 2d 3e 68 65 69 67 68 74 2c 73 2d 3e ename,buf,s->width,s->height,s->
2e260 73 74 72 69 64 65 29 3b 00 00 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0f 20 20 stride);........free(buf);......
2e280 20 20 72 65 74 75 72 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 69 6e 74 20 6d 61 ..return.ret;....}........int.ma
2e2a0 69 6e 28 69 6e 74 20 61 72 67 63 2c 63 68 61 72 20 2a 2a 61 72 67 76 29 7b 00 00 00 0b 20 20 20 in(int.argc,char.**argv){.......
2e2c0 20 73 65 74 75 70 28 29 f5 18 00 00 01 38 00 00 01 39 00 00 00 00 00 00 00 00 f5 18 00 00 01 37 .setup().....8...9.............7
2e2e0 00 00 01 39 00 00 00 00 00 00 00 08 00 00 00 0c 20 20 20 20 73 65 74 75 70 28 29 3b 00 00 00 35 ...9................setup();...5
2e300 20 20 20 20 69 66 28 61 72 67 63 3d 3d 33 20 26 26 20 73 74 72 63 6d 70 28 61 72 67 76 5b 31 5d ....if(argc==3.&&.strcmp(argv[1]
2e320 2c 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 3d 3d 30 29 7b 00 00 00 59 20 20 20 20 20 20 20 ,"--screenshot")==0){...Y.......
2e340 20 69 66 28 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 61 72 67 76 5b 32 5d 29 21 3d 30 29 .if(take_screenshot(argv[2])!=0)
2e360 7b 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 22 53 63 72 65 65 6e 73 68 6f 74 20 66 61 69 6c {fprintf(stderr,"Screenshot.fail
2e380 65 64 5c 6e 22 29 3b 20 72 65 74 75 72 6e 20 31 3b 7d 00 00 00 33 20 20 20 20 20 20 20 20 70 72 ed\n");.return.1;}...3........pr
2e3a0 69 6e 74 66 28 22 53 61 76 65 64 20 73 63 72 65 65 6e 73 68 6f 74 20 74 6f 20 25 73 5c 6e 22 2c intf("Saved.screenshot.to.%s\n",
2e3c0 61 72 67 76 5b 32 5d 29 3b 00 00 00 11 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 00 00 argv[2]);............return.0;..
2e3e0 00 05 20 20 20 20 7d 00 00 00 1b 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d ......}........wl_display_run(wm
2e400 2e 64 70 79 29 3b 00 00 00 06 20 20 20 20 73 77 f5 18 00 00 01 3f 00 00 01 40 00 00 00 00 00 00 .dpy);........sw.....?...@......
2e420 00 00 f5 18 00 00 01 3e 00 00 01 40 00 00 00 00 00 00 00 05 00 00 00 13 20 20 20 20 73 77 63 5f .......>...@................swc_
2e440 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1f 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 finalize();........wl_display_de
2e460 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 30 3b 00 stroy(wm.dpy);........return.0;.
2e480 00 00 01 7d 00 00 00 00 f5 18 00 00 01 43 00 00 01 44 00 00 00 00 00 00 00 00 f5 18 00 00 01 42 ...}.........C...D.............B
2e4a0 00 00 01 44 00 00 00 00 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 ...D............5...............
2e4c0 00 00 00 00 00 00 00 00 7c 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ........|.......................
2e4e0 00 10 00 00 00 00 00 00 f5 18 00 00 00 00 7c 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 60 00 ..............|...............`.
2e500 00 00 0b 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0d 00 00 00 00 00 00 f5 18 ................................
2e520 00 00 00 00 dc 00 00 00 0b 00 00 00 00 00 00 00 00 00 00 00 28 00 00 00 3e 00 00 00 00 1d 00 00 ....................(...>.......
2e540 00 00 00 00 00 00 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 f5 18 00 00 00 00 04 01 00 00 3e 00 ..............................>.
2e560 00 00 00 00 00 00 00 00 00 00 10 00 00 00 99 00 00 00 00 27 00 00 00 00 00 00 00 00 00 00 00 00 ...................'............
2e580 00 00 00 07 00 00 00 00 00 00 f5 18 00 00 00 00 14 01 00 00 99 00 00 00 00 00 00 00 00 00 00 00 ................................
2e5a0 23 00 00 00 0b 00 00 00 00 2e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 00 00 00 #...............................
2e5c0 f5 18 00 00 00 00 37 01 00 00 0b 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00 06 00 00 00 00 36 ......7........................6
2e5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 f5 18 00 00 00 00 3e 01 00 00 ............................>...
2e600 06 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 37 00 00 00 00 00 00 00 00 00 00 .....................7..........
2e620 00 00 00 00 3e 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 74 00 00 00 76 00 00 00 00 00 00 00 00 ....>.......5._....t...v........
2e640 00 00 00 75 00 00 01 43 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 00 ...u...C........................
2e660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
2e7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 8e 79 04 01 00 00 00 36 00 f5 18 00 ..................i..y.....6....
2e7c0 00 00 09 00 00 01 44 00 00 00 00 00 00 02 1c 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 ......D............#include.<str
2e7e0 69 6e 67 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 ing.h>....#include.<swc.h>....#i
2e800 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 nclude.<unistd.h>....#include.<w
2e820 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 ayland-server.h>....#include.<wa
2e840 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 14 23 69 6e 63 6c 75 64 65 20 3c 77 6c 64 2f 77 yland-util.h>....#include.<wld/w
2e860 6c 64 2e 68 3e 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 ld.h>...(#include.<xkbcommon/xkb
2e880 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 00 00 00 00 30 73 74 61 74 69 63 20 common-keysyms.h>.......0static.
2e8a0 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f void.focus(struct.client.*c,.boo
2e8c0 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 l.raise);...*static.void.on_scre
2e8e0 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 en_destroy(void.*data);...:stati
2e900 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 c.void.on_screen_usable_geometry
2e920 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 _changed(void.*data);...'static.
2e940 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b void.on_win_destroy(void.*data);
2e960 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 ...'static.void.on_win_entered(v
2e980 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 oid.*data);....static.void.setup
2e9a0 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e (void);....static.void.setup_bin
2e9c0 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f ds(void);...Fstatic.void.set_flo
2e9e0 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f ating(struct.client.*c,.bool.flo
2ea00 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f ating,.bool.raise);...#static.vo
2ea20 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 28 76 6f id.tile(struct.screen.*s);...(vo
2ea40 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 id.new_screen(struct.swc_screen.
2ea60 2a 73 63 72 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 *scr);...(void.new_window(struct
2ea80 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 3b 00 00 00 2d 76 6f 69 64 20 6e 65 77 5f 64 .swc_window.*win);...-void.new_d
2eaa0 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 evice(struct.libinput_device.*de
2eac0 76 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 v);...Kvoid.focus_next(void.*dat
2eae0 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
2eb00 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 ,.uint32_t.state);...Kvoid.focus
2eb20 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c _prev(void.*data,.uint32_t.time,
2eb40 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 .uint32_t.value,.uint32_t.state)
2eb60 3b 00 00 00 49 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 ;...Ivoid.kill_sel(void.*data,.u
2eb80 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 int32_t.time,.uint32_t.value,.ui
2eba0 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 nt32_t.state);...Kvoid.mouse_mov
2ebc0 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e e(void.*data,.uint32_t.time,.uin
2ebe0 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 t32_t.value,.uint32_t.state);...
2ec00 4d 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 Mvoid.mouse_resize(void.*data,.u
2ec20 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 int32_t.time,.uint32_t.value,.ui
2ec40 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 45 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 nt32_t.state);...Evoid.quit(void
2ec60 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
2ec80 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 46 76 6f 69 64 20 value,.uint32_t.state);...Fvoid.
2eca0 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c spawn(void.*data,.uint32_t.time,
2ecc0 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 .uint32_t.value,.uint32_t.state)
2ece0 3b 00 00 00 4d 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 ;...Mvoid.toggle_float(void.*dat
2ed00 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
2ed20 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c ,.uint32_t.state);...Cvoid.toggl
2ed40 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 e_float_global(void.*data,.uint3
2ed60 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 29 20 20 20 2_t.time,.uint32_t.value,...)...
2ed80 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 32 5f 74 20 73 ......................uint32_t.s
2eda0 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 tate);...Lvoid.master_next(void.
2edc0 2a 64 61 74 61 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 76 *data,.uint32_t.time,.uint32_t.v
2ede0 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d alue,.uint32_t.state);...Lvoid.m
2ee00 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 aster_prev(void.*data,.uint32_t.
2ee20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 time,.uint32_t.value,.uint32_t.s
2ee40 74 61 74 65 29 3b 00 00 00 4e 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 tate);...Nvoid.master_resize(voi
2ee60 64 20 2a 64 61 74 61 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 d.*data,.uint32_t.time,.uint32_t
2ee80 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 2c .value,.uint32_t.state);.......,
2eea0 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 struct.swc_window_handler.window
2eec0 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f _handler.=.{.........destroy.=.o
2eee0 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d n_win_destroy,.........entered.=
2ef00 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 .on_win_entered,....};.......,st
2ef20 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 ruct.swc_screen_handler.screen_h
2ef40 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f andler.=.{...!.....destroy.=.on_
2ef60 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 screen_destroy,...A.....usable_g
2ef80 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 eometry_changed.=.on_screen_usab
2efa0 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 le_geometry_changed,....};......
2efc0 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d .!static.uint32_t.master_width.=
2efe0 20 30 3b 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 .0;....struct.wm.wm;.......$cons
2f000 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b t.struct.swc_manager.manager.=.{
2f020 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e .........new_screen.=.new_screen
2f040 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f ,.........new_window.=.new_windo
2f060 77 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 w,.........new_device.=.new_devi
2f080 63 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 ce,....};.......1static.void.foc
2f0a0 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 us(struct.client.*c,.bool.raise)
2f0c0 20 7b 00 00 00 24 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 20 3d 20 30 .{...$..uint32_t.outer_color.=.0
2f0e0 78 30 30 30 30 30 30 46 46 3b 00 00 00 1b 20 20 75 69 6e 74 33 32 5f 74 20 6f 75 74 65 72 5f 77 x000000FF;......uint32_t.outer_w
2f100 69 64 74 68 20 3d 20 30 3b 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 idth.=.0;......if.(wm.sel_client
2f120 29 00 00 00 44 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 )...D....swc_window_set_border(w
2f140 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f m.sel_client->win,.cfg.border_co
2f160 6c 5f 6e 6f 72 6d 61 6c 2c 00 00 00 46 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 l_normal,...F...................
2f180 20 20 20 20 20 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 6f 75 74 65 72 5f 63 .......cfg.border_width,.outer_c
2f1a0 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 64 74 68 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 olor,.outer_width);......if.(c).
2f1c0 00 00 4a 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e ..J....swc_window_set_border(c->
2f1e0 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e win,.cfg.border_col_active,.cfg.
2f200 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 00 00 00 34 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 border_width,...4...............
2f220 20 20 20 20 20 20 20 20 20 20 20 6f 75 74 65 72 5f 63 6f 6c 6f 72 2c 20 6f 75 74 65 72 5f 77 69 ...........outer_color,.outer_wi
2f240 64 74 68 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e dth);......if.(raise.&&.c.&&.c->
2f260 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c floating)........set_floating(c,
2f280 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f .true,.true);...&..swc_window_fo
2f2a0 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e cus(c.?.c->win.:.NULL);......wm.
2f2c0 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 73 74 61 74 sel_client.=.c;....}.......;stat
2f2e0 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 ic.void.on_screen_usable_geometr
2f300 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 y_changed(void.*data).{......str
2f320 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 0a 20 20 74 69 6c 65 28 uct.screen.*s.=.data;......tile(
2f340 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 s);....}.......(static.void.on_w
2f360 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 in_destroy(void.*data).{......st
2f380 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 16 20 20 73 74 72 75 ruct.client.*c.=.data;......stru
2f3a0 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 ct.client.*next;......if.(!c)...
2f3c0 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 29 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 .....return;...)..if.(wm.grab.ac
2f3e0 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 tive.&&.wm.grab.c.==.c).{.......
2f400 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 .wm.grab.active.=.false;........
2f420 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 wm.grab.c.=.NULL;......}......if
2f440 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 .(c->floating)...#....wl_list_re
2f460 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 move(&c->float_link);......else.
2f480 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f ..#....wl_list_remove(&c->tiled_
2f4a0 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d link);......if.(wm.sel_client.==
2f4c0 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c .c).{........wm.sel_client.=.NUL
2f4e0 4c 3b 00 00 00 1f 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e L;........next.=.first_float(c->
2f500 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 scr);........if.(!next)...!.....
2f520 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 .next.=.first_tiled(c->scr);....
2f540 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 ....focus(next,.true);......}...
2f560 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 ...tile(c->scr);......free(c);..
2f580 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e ..}.......(static.void.on_win_en
2f5a0 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 15 20 20 69 66 20 28 77 6d 2e tered(void.*data).{......if.(wm.
2f5c0 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 grab.active)........return;.....
2f5e0 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 11 20 20 66 .struct.client.*c.=.data;......f
2f600 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 ocus(c,.true);....}........stati
2f620 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 c.void.setup(void).{......wm.dpy
2f640 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 0e 20 20 69 66 20 .=.wl_display_create();......if.
2f660 28 21 77 6d 2e 64 70 79 29 00 00 00 32 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 (!wm.dpy)...2....die(EXIT_FAILUR
2f680 45 2c 20 22 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 20 66 61 69 6c 65 64 22 29 3b 00 E,."wl_display_create.failed");.
2f6a0 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 .....wl_list_init(&wm.screens);.
2f6c0 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 .....wl_list_init(&wm.tiled);...
2f6e0 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 ...wl_list_init(&wm.floating);..
2f700 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 ....wm.sel_client.=.NULL;......w
2f720 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 m.sel_screen.=.NULL;......wm.gra
2f740 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 b.active.=.false;......wm.grab.r
2f760 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 esize.=.false;......wm.grab.c.=.
2f780 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c NULL;...1..wm.ev_loop.=.wl_displ
2f7a0 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 34 20 20 ay_get_event_loop(wm.dpy);...4..
2f7c0 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 if.(!swc_initialize(wm.dpy,.wm.e
2f7e0 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 00 00 00 2f 20 20 20 20 64 69 65 28 45 58 v_loop,.&manager)).../....die(EX
2f800 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 20 66 61 69 6c IT_FAILURE,."swc_initialize.fail
2f820 65 64 22 29 3b 00 00 00 10 20 20 73 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 ed");......setup_binds();...8..c
2f840 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 onst.char.*sock.=.wl_display_add
2f860 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 _socket_auto(wm.dpy);......if.(!
2f880 73 6f 63 6b 29 00 00 00 3b 20 20 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 sock)...;....die(EXIT_FAILURE,."
2f8a0 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 20 66 61 69 6c 65 wl_display_add_socket_auto.faile
2f8c0 64 22 29 3b 00 00 00 25 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 d");...%..setenv("WAYLAND_DISPLA
2f8e0 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 2d 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 Y",.sock,.1);...-.._log(stderr,.
2f900 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 3d 25 73 5c 6e 22 2c 20 73 6f 63 6b 29 3b 00 00 "WAYLAND_DISPLAY=%s\n",.sock);..
2f920 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b ....signal(SIGINT,.sig_handler);
2f940 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 ......signal(SIGTERM,.sig_handle
2f960 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e r);......signal(SIGQUIT,.sig_han
2f980 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 dler);....}........static.void.s
2f9a0 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 41 20 20 66 6f 72 20 28 73 69 7a etup_binds(void).{...A..for.(siz
2f9c0 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 29 20 2f 20 73 e_t.i.=.0;.i.<.sizeof(binds)./.s
2f9e0 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 izeof(binds[0]);.i++).{...%....c
2fa00 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b onst.struct.bind.*b.=.&binds[i];
2fa20 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c ...G....swc_add_binding(b->type,
2fa40 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 .b->mods,.b->ksym,.b->fn,.(void.
2fa60 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 *)&b->arg);......}....}.......Gs
2fa80 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 tatic.void.set_floating(struct.c
2faa0 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 lient.*c,.bool.floating,.bool.ra
2fac0 69 73 65 29 20 7b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 ise).{......if.(!c)........retur
2fae0 6e 3b 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 n;......if.(floating).{........i
2fb00 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 f.(!c->floating).{..........c->f
2fb20 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 loating.=.true;...%......wl_list
2fb40 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 _remove(&c->tiled_link);...3....
2fb60 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 ..wl_list_insert(&wm.floating,.&
2fb80 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 c->float_link);........}.else.if
2fba0 20 28 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f .(raise).{...%......wl_list_remo
2fbc0 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f ve(&c->float_link);...3......wl_
2fbe0 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c list_insert(&wm.floating,.&c->fl
2fc00 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 oat_link);........}...#....swc_w
2fc20 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 indow_set_stacked(c->win);......
2fc40 7d 20 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 }.else.{........if.(c->floating)
2fc60 20 7b 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b .{..........c->floating.=.false;
2fc80 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f ...%......wl_list_remove(&c->flo
2fca0 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 at_link);...0......wl_list_inser
2fcc0 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 t(&wm.tiled,.&c->tiled_link);...
2fce0 05 20 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c .....}...!....swc_window_set_til
2fd00 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 ed(c->win);......}....}.......$s
2fd20 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 tatic.void.tile(struct.screen.*s
2fd40 29 20 7b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 ).{......struct.client.*c;......
2fd60 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 21 20 20 struct.swc_rectangle.geom;...!..
2fd80 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 3b 00 struct.swc_rectangle.*scr_geom;.
2fda0 00 00 31 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 ..1..int32_t.out_gaps.=.cfg.gaps
2fdc0 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 36 20 20 69 6e 74 33 32 5f .+.cfg.border_width;...6..int32_
2fde0 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 28 63 66 67 2e 62 6f 72 64 t.in_gaps.=.cfg.gaps.+.(cfg.bord
2fe00 65 72 5f 77 69 64 74 68 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 6e 74 33 32 5f 74 20 78 2c 20 79 er_width.*.2);......int32_t.x,.y
2fe20 3b 00 00 00 10 20 20 75 69 6e 74 33 32 5f 74 20 77 2c 20 68 3b 00 00 00 09 20 20 69 66 20 28 21 ;......uint32_t.w,.h;......if.(!
2fe40 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 26 20 20 73 63 72 5f 67 65 6f 6d 20 s)........return;...&..scr_geom.
2fe60 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 0f 20 =.&s->scr->usable_geometry;.....
2fe80 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f .size_t.n.=.0;...E..wl_list_for_
2fea0 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 each(c,.&wm.tiled,.tiled_link).i
2fec0 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 0d 20 20 69 66 20 f.(is_tiled(c,.s)).n++;......if.
2fee0 28 6e 20 3d 3d 20 30 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 78 20 3d (n.==.0)........return;......x.=
2ff00 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 1d 20 20 79 20 .scr_geom->x.+.out_gaps;......y.
2ff20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 77 =.scr_geom->y.+.out_gaps;...'..w
2ff40 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 28 6f 75 74 5f 67 61 70 73 20 2a .=.scr_geom->width.-.(out_gaps.*
2ff60 20 32 29 3b 00 00 00 28 20 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d .2);...(..h.=.scr_geom->height.-
2ff80 20 28 6f 75 74 5f 67 61 70 73 20 2a 20 32 29 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 .(out_gaps.*.2);......if.(n.==.1
2ffa0 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 ).{...0....wl_list_for_each(c,.&
2ffc0 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 1a 20 20 20 20 20 wm.tiled,.tiled_link).{.........
2ffe0 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 11 20 20 20 20 20 20 20 .if.(!is_tiled(c,.s))...........
30000 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 .continue;..........geom.x.=.x;.
30020 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 15 20 20 20 20 20 20 67 65 .........geom.y.=.y;..........ge
30040 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 om.width.=.w;..........geom.heig
30060 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f ht.=.h;...-......swc_window_set_
30080 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 geometry(c->win,.&geom);........
300a0 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 ..return;........}......}......s
300c0 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 ize_t.i.=.0;......wl_list_for_ea
300e0 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 ch(c,.&wm.tiled,.tiled_link).{..
30100 00 18 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 0f 20 20 ......if.(!is_tiled(c,.s))......
30120 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f ....continue;........if.(master_
30140 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 74 width.==.0)...>......master_widt
30160 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f h.=.((w.-.in_gaps).*.cfg.master_
30180 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 29 width)./.100;........if.(i.==.0)
301a0 20 7b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 .{..........geom.x.=.x;.........
301c0 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 .geom.y.=.y;..........geom.width
301e0 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 .=.master_width;..........geom.h
30200 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 eight.=.h;........}.else.{......
30220 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b ....uint32_t.stackn.=.n.-.1;....
30240 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 ......uint32_t.idx.=.i.-.1;...D.
30260 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 .....uint32_t.stack_height.=.(h.
30280 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 -.in_gaps.*.(stackn.-.1))./.stac
302a0 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 kn;...*......geom.x.=.x.+.master
302c0 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 34 20 20 20 20 20 20 67 65 6f 6d 2e _width.+.in_gaps;...4......geom.
302e0 79 20 3d 20 79 20 2b 20 28 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 y.=.y.+.(idx.*.(stack_height.+.i
30300 6e 5f 67 61 70 73 29 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 n_gaps));..........geom.width.=.
30320 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 w.-.master_width.-.in_gaps;...!.
30340 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b .....geom.height.=.stack_height;
30360 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f ........}...+....swc_window_set_
30380 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 geometry(c->win,.&geom);........
303a0 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 i++;......}....}.......)void.new
303c0 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 _screen(struct.swc_screen.*scr).
303e0 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 {...(..struct.screen.*s.=.malloc
30400 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 32 20 20 (sizeof(*s));......if.(!s)...2..
30420 20 20 64 69 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6e 65 77 20 73 63 72 65 65 6e 20 ..die(EXIT_FAILURE,."new.screen.
30440 6d 61 6c 6c 6f 63 20 66 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 malloc.failed");......s->scr.=.s
30460 63 72 3b 00 00 00 0b 20 20 73 2d 3e 78 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 79 20 3d 20 30 cr;......s->x.=.0;......s->y.=.0
30480 3b 00 00 00 0b 20 20 73 2d 3e 77 20 3d 20 30 3b 00 00 00 0b 20 20 73 2d 3e 68 20 3d 20 30 3b 00 ;......s->w.=.0;......s->h.=.0;.
304a0 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c ..(..wl_list_insert(&wm.screens,
304c0 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 .&s->link);......if.(!wm.sel_scr
304e0 65 65 6e 29 00 00 00 16 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 een)........wm.sel_screen.=.s;..
30500 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 .2..swc_screen_set_handler(scr,.
30520 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 &screen_handler,.s);.../.._log(s
30540 74 64 65 72 72 2c 20 22 6e 65 77 5f 73 63 72 65 65 6e 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 tderr,."new_screen=%p\n",.(void.
30560 2a 29 73 63 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e *)scr);....}.......)void.new_win
30580 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 dow(struct.swc_window.*win).{...
305a0 28 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a (..struct.client.*c.=.malloc(siz
305c0 65 6f 66 28 2a 63 29 29 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 2e 20 20 20 20 64 69 eof(*c));......if.(!c)........di
305e0 65 28 45 58 49 54 5f 46 41 49 4c 55 52 45 2c 20 22 6d 61 6c 6c 6f 63 20 63 6c 69 65 6e 74 20 66 e(EXIT_FAILURE,."malloc.client.f
30600 61 69 6c 65 64 22 29 3b 00 00 00 0f 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 ailed");......c->win.=.win;.....
30620 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d .c->scr.=.wm.sel_screen;......c-
30640 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e >mapped.=.false;...#..c->floatin
30660 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e g.=.wm.global_floating;......c->
30680 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d fullscreen.=.false;......c->ws.=
306a0 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 .false;......if.(c->floating).{.
306c0 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 ..1....wl_list_insert(&wm.floati
306e0 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c ng,.&c->float_link);...!....wl_l
30700 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 ist_init(&c->tiled_link);...4...
30720 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 .swc_window_set_handler(win,.&wi
30740 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e ndow_handler,.c);........swc_win
30760 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 dow_set_stacked(win);......}.els
30780 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 e.{........wl_list_insert(&wm.ti
307a0 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f led,.&c->tiled_link);...!....wl_
307c0 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 list_init(&c->float_link);...4..
307e0 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 ..swc_window_set_handler(win,.&w
30800 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 indow_handler,.c);........swc_wi
30820 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 ndow_set_tiled(win);......}.....
30840 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 .swc_window_show(win);......focu
30860 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 s(c,.true);......tile(wm.sel_scr
30880 65 65 6e 29 3b 00 00 00 2f 20 20 5f 6c 6f 67 28 73 74 64 65 72 72 2c 20 22 6e 65 77 5f 77 69 6e een);.../.._log(stderr,."new_win
308a0 64 6f 77 3d 25 70 5c 6e 22 2c 20 28 76 6f 69 64 20 2a 29 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 dow=%p\n",.(void.*)win);....}...
308c0 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 ....;void.new_device(struct.libi
308e0 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d nput_device.*dev).{.(void)dev;.}
30900 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 .......Lvoid.focus_next(void.*da
30920 74 61 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 76 61 6c 75 ta,.uint32_t.time,.uint32_t.valu
30940 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 e,.uint32_t.state).{......(void)
30960 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 data;......(void)time;......(voi
30980 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 d)value;...-..if.(state.!=.WL_KE
309a0 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 00 00 00 0b 20 20 20 YBOARD_KEY_STATE_PRESSED).......
309c0 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e .return;......if.(!wm.sel_screen
309e0 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 73 74 72 75 63 74 20 73 63 72 )........return;...#..struct.scr
30a00 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 13 20 20 73 74 72 een.*s.=.wm.sel_screen;......str
30a20 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 17 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f uct.client.*c;......if.(!wm.sel_
30a40 63 6c 69 65 6e 74 29 20 7b 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 client).{........c.=.first_float
30a60 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 20 28 21 63 29 00 00 00 19 20 20 20 20 20 20 63 20 3d (s);........if.(!c)..........c.=
30a80 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 14 20 20 20 20 66 6f 63 75 73 28 63 2c .first_tiled(s);........focus(c,
30aa0 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d 00 00 .false);........return;......}..
30ac0 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 ....if.(wm.sel_client->floating)
30ae0 20 7b 00 00 00 4c 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f .{...L....for.(c.=.wl_container_
30b00 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 of(wm.sel_client->float_link.nex
30b20 74 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 20 20 20 20 20 26 t,.c,.float_link);...(.........&
30b40 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 3b 00 00 c->float_link.!=.&wm.floating;..
30b60 00 40 20 20 20 20 20 20 20 20 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 .@.........c.=.wl_container_of(c
30b80 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b ->float_link.next,.c,.float_link
30ba0 29 29 00 00 00 1b 20 20 20 20 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 73 29 29 20 ))..........if.(is_float(c,.s)).
30bc0 7b 00 00 00 18 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 {............focus(c,.false);...
30be0 0f 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 07 20 20 20 20 20 20 7d 00 00 00 17 20 .........return;..........}.....
30c00 20 20 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 ...c.=.first_tiled(s);........if
30c20 20 28 21 63 29 00 00 00 19 20 20 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 .(!c)..........c.=.first_float(s
30c40 29 3b 00 00 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 73 28 );........if.(c)..........focus(
30c60 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 20 7d c,.false);........return;......}
30c80 00 00 00 4a 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 ...J..for.(c.=.wl_container_of(w
30ca0 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 6e 65 78 74 2c 20 63 m.sel_client->tiled_link.next,.c
30cc0 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 23 20 20 20 20 20 20 20 26 63 2d 3e 74 69 6c ,.tiled_link);...#.......&c->til
30ce0 65 64 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 00 00 00 3e 20 20 20 20 20 20 20 ed_link.!=.&wm.tiled;...>.......
30d00 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e c.=.wl_container_of(c->tiled_lin
30d20 6b 2e 6e 65 78 74 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 19 20 20 20 20 69 k.next,.c,.tiled_link))........i
30d40 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 7b 00 00 00 16 20 20 20 20 20 20 66 6f f.(is_tiled(c,.s)).{..........fo
30d60 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 cus(c,.false);..........return;.
30d80 00 00 05 20 20 20 20 7d 00 00 00 15 20 20 63 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 73 29 .......}......c.=.first_float(s)
30da0 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f ;......if.(!c)........c.=.first_
30dc0 74 69 6c 65 64 28 73 29 3b 00 00 00 12 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 tiled(s);......focus(c,.false);.
30de0 00 00 01 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 ...}.......Lvoid.focus_prev(void
30e00 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
30e20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 value,.uint32_t.state).{......(v
30e40 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 oid)data;......(void)time;......
30e60 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 (void)value;...-..if.(state.!=.W
30e80 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 44 29 00 00 00 L_KEYBOARD_KEY_STATE_PRESSED)...
30ea0 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 .....return;......if.(!wm.sel_sc
30ec0 72 65 65 6e 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 73 74 72 75 63 74 reen)........return;...#..struct
30ee0 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 13 20 .screen.*s.=.wm.sel_screen;.....
30f00 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 17 20 20 69 66 20 28 21 77 6d 2e .struct.client.*c;......if.(!wm.
30f20 73 65 6c 5f 63 6c 69 65 6e 74 29 20 7b 00 00 00 17 20 20 20 20 63 20 3d 20 66 69 72 73 74 5f 66 sel_client).{........c.=.first_f
30f40 6c 6f 61 74 28 73 29 3b 00 00 00 0b 20 20 20 20 69 66 20 28 21 63 29 00 00 00 19 20 20 20 20 20 loat(s);........if.(!c).........
30f60 20 63 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 14 20 20 20 20 66 6f 63 75 .c.=.first_tiled(s);........focu
30f80 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 s(c,.false);........return;.....
30fa0 20 7d 00 00 00 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 .}......if.(wm.sel_client->float
30fc0 69 6e 67 29 20 7b 00 00 00 4c 20 20 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 ing).{...L....for.(c.=.wl_contai
30fe0 6e 65 72 5f 6f 66 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b ner_of(wm.sel_client->float_link
31000 2e 70 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 20 20 .prev,.c,.float_link);...(......
31020 20 20 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 66 6c 6f 61 74 69 6e ...&c->float_link.!=.&wm.floatin
31040 67 3b 00 00 00 40 20 20 20 20 20 20 20 20 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f g;...@.........c.=.wl_container_
31060 6f 66 28 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 66 6c 6f 61 74 5f of(c->float_link.prev,.c,.float_
31080 6c 69 6e 6b 29 29 00 00 00 1b 20 20 20 20 20 20 69 66 20 28 69 73 5f 66 6c 6f 61 74 28 63 2c 20 link))..........if.(is_float(c,.
310a0 73 29 29 20 7b 00 00 00 18 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 s)).{............focus(c,.false)
310c0 3b 00 00 00 0f 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 07 20 20 20 20 20 20 7d 00 ;............return;..........}.
310e0 00 00 16 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 74 69 6c 65 64 28 73 29 3b 00 00 00 0b 20 20 20 .......c.=.last_tiled(s);.......
31100 20 69 66 20 28 21 63 29 00 00 00 18 20 20 20 20 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 .if.(!c)..........c.=.last_float
31120 28 73 29 3b 00 00 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 16 20 20 20 20 20 20 66 6f 63 75 (s);........if.(c)..........focu
31140 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 03 20 s(c,.false);........return;.....
31160 20 7d 00 00 00 4a 20 20 66 6f 72 20 28 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 .}...J..for.(c.=.wl_container_of
31180 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 2e 70 72 65 76 2c (wm.sel_client->tiled_link.prev,
311a0 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 23 20 20 20 20 20 20 20 26 63 2d 3e 74 .c,.tiled_link);...#.......&c->t
311c0 69 6c 65 64 5f 6c 69 6e 6b 20 21 3d 20 26 77 6d 2e 74 69 6c 65 64 3b 00 00 00 3e 20 20 20 20 20 iled_link.!=.&wm.tiled;...>.....
311e0 20 20 63 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 63 2d 3e 74 69 6c 65 64 5f 6c ..c.=.wl_container_of(c->tiled_l
31200 69 6e 6b 2e 70 72 65 76 2c 20 63 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 29 00 00 00 19 20 20 20 ink.prev,.c,.tiled_link)).......
31220 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 7b 00 00 00 16 20 20 20 20 20 20 .if.(is_tiled(c,.s)).{..........
31240 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e focus(c,.false);..........return
31260 3b 00 00 00 05 20 20 20 20 7d 00 00 00 14 20 20 63 20 3d 20 6c 61 73 74 5f 66 6c 6f 61 74 28 73 ;........}......c.=.last_float(s
31280 29 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 16 20 20 20 20 63 20 3d 20 6c 61 73 74 5f );......if.(!c)........c.=.last_
312a0 74 69 6c 65 64 28 73 29 3b 00 00 00 12 20 20 66 6f 63 75 73 28 63 2c 20 66 61 6c 73 65 29 3b 00 tiled(s);......focus(c,.false);.
312c0 00 00 01 7d 00 00 00 00 00 00 00 4a 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a ...}.......Jvoid.kill_sel(void.*
312e0 64 61 74 61 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 76 61 data,.uint32_t.time,.uint32_t.va
31300 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 lue,.uint32_t.state).{......(voi
31320 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 d)data;......(void)time;......(v
31340 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f oid)value;...-..if.(state.!=.WL_
31360 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 44 29 00 00 00 0b 20 KEYBOARD_KEY_STATE_PRESSED).....
31380 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 ...return;......if.(!wm.sel_clie
313a0 6e 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 27 20 20 73 77 63 5f 77 69 6e 64 nt)........return;...'..swc_wind
313c0 6f 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 29 3b 00 00 00 ow_close(wm.sel_client->win);...
313e0 01 7d 00 00 00 00 00 00 00 4c 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a .}.......Lvoid.mouse_move(void.*
31400 64 61 74 61 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 76 61 data,.uint32_t.time,.uint32_t.va
31420 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 lue,.uint32_t.state).{......(voi
31440 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 d)data;......(void)time;......(v
31460 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 74 65 20 3d 3d 20 57 4c 5f oid)value;...1..if.(state.==.WL_
31480 50 4f 49 4e 54 45 52 5f 42 55 54 54 4f 4e 5f 53 54 41 54 45 5f 50 52 45 53 53 45 44 29 20 7b 00 POINTER_BUTTON_STATE_PRESSED).{.
314a0 00 00 17 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 0d 20 20 .......if.(!wm.sel_client)......
314c0 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 ....return;...#....if.(!wm.sel_c
314e0 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 2f 20 20 20 20 20 20 73 65 74 5f lient->floating).{.../......set_
31500 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c 20 74 72 75 65 2c 20 66 61 floating(wm.sel_client,.true,.fa
31520 6c 73 65 29 3b 00 00 00 1f 20 20 20 20 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e lse);..........tile(wm.sel_clien
31540 74 2d 3e 73 63 72 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 1a 20 20 20 20 77 6d 2e 67 72 61 62 t->scr);........}........wm.grab
31560 2e 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 72 .active.=.true;........wm.grab.r
31580 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 1e 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 esize.=.false;........wm.grab.c.
315a0 3d 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 69 6e 64 =.wm.sel_client;...*....swc_wind
315c0 6f 77 5f 62 65 67 69 6e 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 3b 00 00 ow_begin_move(wm.grab.c->win);..
315e0 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 38 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 ....}.else.{...8....if.(!wm.grab
31600 2e 61 63 74 69 76 65 20 7c 7c 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d .active.||.wm.grab.resize.||.!wm
31620 2e 67 72 61 62 2e 63 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 28 20 20 20 .grab.c)..........return;...(...
31640 20 73 77 63 5f 77 69 6e 64 6f 77 5f 65 6e 64 5f 6d 6f 76 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e .swc_window_end_move(wm.grab.c->
31660 77 69 6e 29 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 win);........wm.grab.active.=.fa
31680 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 lse;........wm.grab.c.=.NULL;...
316a0 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4e 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 ...}....}.......Nvoid.mouse_resi
316c0 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 ze(void.*data,.uint32_t.time,.ui
316e0 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 nt32_t.value,.uint32_t.state).{.
31700 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 .....(void)data;......(void)time
31720 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 31 20 20 69 66 20 28 73 74 61 ;......(void)value;...1..if.(sta
31740 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 50 52 te.==.WL_POINTER_BUTTON_STATE_PR
31760 45 53 53 45 44 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 ESSED).{........if.(!wm.sel_clie
31780 6e 74 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 23 20 20 20 20 69 66 20 28 nt)..........return;...#....if.(
317a0 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 2f 20 !wm.sel_client->floating).{.../.
317c0 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c .....set_floating(wm.sel_client,
317e0 20 74 72 75 65 2c 20 66 61 6c 73 65 29 3b 00 00 00 1f 20 20 20 20 20 20 74 69 6c 65 28 77 6d 2e .true,.false);..........tile(wm.
31800 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 1a 20 20 sel_client->scr);........}......
31820 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 74 72 75 65 3b 00 00 00 1a 20 20 20 20 ..wm.grab.active.=.true;........
31840 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 74 72 75 65 3b 00 00 00 1e 20 20 20 20 77 6d wm.grab.resize.=.true;........wm
31860 2e 67 72 61 62 2e 63 20 3d 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 3b 00 00 00 2b 20 20 20 20 .grab.c.=.wm.sel_client;...+....
31880 73 77 63 5f 77 69 6e 64 6f 77 5f 62 65 67 69 6e 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e swc_window_begin_resize(wm.grab.
318a0 63 2d 3e 77 69 6e 2c 00 00 00 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 c->win,...L.....................
318c0 20 20 20 20 20 20 20 53 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 52 49 47 48 54 20 7c 20 53 .......SWC_WINDOW_EDGE_RIGHT.|.S
318e0 57 43 5f 57 49 4e 44 4f 57 5f 45 44 47 45 5f 42 4f 54 54 4f 4d 29 3b 00 00 00 0a 20 20 7d 20 65 WC_WINDOW_EDGE_BOTTOM);......}.e
31900 6c 73 65 20 7b 00 00 00 39 20 20 20 20 69 66 20 28 21 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 lse.{...9....if.(!wm.grab.active
31920 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 7c 7c 20 21 77 6d 2e 67 72 61 62 2e .||.!wm.grab.resize.||.!wm.grab.
31940 63 29 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 2a 20 20 20 20 73 77 63 5f 77 c)..........return;...*....swc_w
31960 69 6e 64 6f 77 5f 65 6e 64 5f 72 65 73 69 7a 65 28 77 6d 2e 67 72 61 62 2e 63 2d 3e 77 69 6e 29 indow_end_resize(wm.grab.c->win)
31980 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b ;........wm.grab.active.=.false;
319a0 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d ........wm.grab.c.=.NULL;......}
319c0 00 00 00 01 7d 00 00 00 00 00 00 00 46 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 ....}.......Fvoid.quit(void.*dat
319e0 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
31a00 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 ,.uint32_t.state).{......(void)d
31a20 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 ata;......(void)time;......(void
31a40 29 76 61 6c 75 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 1f 20 20 77 )value;......(void)state;......w
31a60 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 l_display_terminate(wm.dpy);....
31a80 7d 00 00 00 00 00 00 00 47 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 }.......Gvoid.spawn(void.*data,.
31aa0 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 uint32_t.time,.uint32_t.value,.u
31ac0 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 int32_t.state).{......(void)time
31ae0 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 16 20 20 75 6e 69 6f 6e 20 61 ;......(void)value;......union.a
31b00 72 67 20 2a 61 20 3d 20 64 61 74 61 3b 00 00 00 29 20 20 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a rg.*a.=.data;...)..char.*const.*
31b20 63 6d 64 20 3d 20 28 63 68 61 72 20 2a 63 6f 6e 73 74 20 2a 29 61 2d 3e 76 3b 00 00 00 2d 20 20 cmd.=.(char.*const.*)a->v;...-..
31b40 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 if.(state.!=.WL_KEYBOARD_KEY_STA
31b60 54 45 5f 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 TE_PRESSED)........return;......
31b80 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 7b 00 00 00 18 20 20 20 20 65 78 65 63 76 70 if.(fork().==.0).{........execvp
31ba0 28 63 6d 64 5b 30 5d 2c 20 63 6d 64 29 3b 00 00 00 0f 20 20 20 20 5f 65 78 69 74 28 31 32 37 29 (cmd[0],.cmd);........_exit(127)
31bc0 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 4e 76 6f 69 64 20 74 6f 67 67 6c 65 ;......}....}.......Nvoid.toggle
31be0 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 _float(void.*data,.uint32_t.time
31c00 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 ,.uint32_t.value,.uint32_t.state
31c20 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 ).{......(void)data;......(void)
31c40 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 time;......(void)value;...-..if.
31c60 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b 45 59 42 4f 41 52 44 5f 4b 45 59 5f 53 54 41 54 45 5f (state.!=.WL_KEYBOARD_KEY_STATE_
31c80 50 52 45 53 53 45 44 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 15 20 20 69 66 20 PRESSED)........return;......if.
31ca0 28 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 (!wm.sel_client)........return;.
31cc0 00 00 3e 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2c ..>..set_floating(wm.sel_client,
31ce0 20 21 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 66 6c 6f 61 74 69 6e 67 2c 20 74 72 75 65 29 .!wm.sel_client->floating,.true)
31d00 3b 00 00 00 1b 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 73 63 72 29 3b ;......tile(wm.sel_client->scr);
31d20 00 00 00 01 7d 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 ....}...Cvoid.toggle_float_globa
31d40 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e l(void.*data,.uint32_t.time,.uin
31d60 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t32_t.value,...*................
31d80 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 .........uint32_t.state).{......
31da0 28 76 6f 69 64 29 64 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e (void)data;......(void)time;....
31dc0 20 20 28 76 6f 69 64 29 76 61 6c 75 65 3b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d ..(void)value;...-..if.(state.!=
31de0 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 44 29 00 .WL_KEYBOARD_KEY_STATE_PRESSED).
31e00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 2b 20 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c .......return;...+..wm.global_fl
31e20 6f 61 74 69 6e 67 20 3d 20 21 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 oating.=.!wm.global_floating;...
31e40 01 7d 00 00 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 .}...Mvoid.master_next(void.*dat
31e60 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
31e80 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 ,.uint32_t.state).{......(void)d
31ea0 61 74 61 3b 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 ata;......(void)time;......(void
31ec0 29 76 61 6c 75 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 01 7d 00 00 )value;......(void)state;....}..
31ee0 00 4d 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 .Mvoid.master_prev(void.*data,.u
31f00 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 int32_t.time,.uint32_t.value,.ui
31f20 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b nt32_t.state).{......(void)data;
31f40 00 00 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c ......(void)time;......(void)val
31f60 75 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 01 7d 00 00 00 4f 76 6f ue;......(void)state;....}...Ovo
31f80 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e id.master_resize(void.*data,.uin
31fa0 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
31fc0 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 0d 20 20 28 76 6f 69 64 29 64 61 74 61 3b 00 00 32_t.state).{......(void)data;..
31fe0 00 0d 20 20 28 76 6f 69 64 29 74 69 6d 65 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 76 61 6c 75 65 ....(void)time;......(void)value
32000 3b 00 00 00 0e 20 20 28 76 6f 69 64 29 73 74 61 74 65 3b 00 00 00 01 7d 00 00 00 00 00 00 00 49 ;......(void)state;....}.......I
32020 73 74 61 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 72 20 static.int.write_png(const.char.
32040 2a 66 69 6c 65 6e 61 6d 65 2c 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c 20 69 *filename,.unsigned.char.*buf,.i
32060 6e 74 20 77 69 64 74 68 2c 00 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt.width,.......................
32080 20 20 69 6e 74 20 68 65 69 67 68 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b 00 00 00 23 20 ..int.height,.int.stride).{...#.
320a0 20 46 49 4c 45 20 2a 66 70 20 3d 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 20 22 77 62 22 .FILE.*fp.=.fopen(filename,."wb"
320c0 29 3b 00 00 00 0a 20 20 69 66 20 28 21 66 70 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d );......if.(!fp)........return.-
320e0 31 3b 00 00 00 17 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f 70 74 72 20 3d 00 00 00 1;......png_structp.png_ptr.=...
32100 47 20 20 20 20 20 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 50 G......png_create_write_struct(P
32120 4e 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c NG_LIBPNG_VER_STRING,.NULL,.NULL
32140 2c 20 4e 55 4c 4c 29 3b 00 00 00 11 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 20 7b 00 00 00 ,.NULL);......if.(!png_ptr).{...
32160 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d .....fclose(fp);........return.-
32180 32 3b 00 00 00 03 20 20 7d 00 00 00 37 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 2;......}...7..png_infop.info_pt
321a0 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 r.=.png_create_info_struct(png_p
321c0 74 72 29 3b 00 00 00 12 20 20 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 00 00 00 2d 20 20 tr);......if.(!info_ptr).{...-..
321e0 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f ..png_destroy_write_struct(&png_
32200 70 74 72 2c 20 4e 55 4c 4c 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 ptr,.NULL);........fclose(fp);..
32220 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 24 20 20 69 66 20 ......return.-3;......}...$..if.
32240 28 73 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 7b 00 (setjmp(png_jmpbuf(png_ptr))).{.
32260 00 00 32 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 ..2....png_destroy_write_struct(
32280 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0f 20 20 20 20 66 63 6c &png_ptr,.&info_ptr);........fcl
322a0 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 03 20 20 ose(fp);........return.-4;......
322c0 7d 00 00 00 1b 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 2c 20 66 70 29 3b }......png_init_io(png_ptr,.fp);
322e0 00 00 00 48 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f ...H..png_set_IHDR(png_ptr,.info
32300 5f 70 74 72 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 38 2c 20 50 4e 47 5f 43 4f 4c 4f _ptr,.width,.height,.8,.PNG_COLO
32320 52 5f 54 59 50 45 5f 52 47 42 41 2c 00 00 00 3d 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 R_TYPE_RGBA,...=...............P
32340 4e 47 5f 49 4e 54 45 52 4c 41 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 NG_INTERLACE_NONE,.PNG_COMPRESSI
32360 4f 4e 5f 54 59 50 45 5f 42 41 53 45 2c 00 00 00 25 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ON_TYPE_BASE,...%...............
32380 50 4e 47 5f 46 49 4c 54 45 52 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 24 20 20 70 6e 67 5f PNG_FILTER_TYPE_BASE);...$..png_
323a0 77 72 69 74 65 5f 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 write_info(png_ptr,.info_ptr);..
323c0 00 22 20 20 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 74 3b 20 ."..for.(int.y.=.0;.y.<.height;.
323e0 79 2b 2b 29 00 00 00 2d 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 y++)...-....png_write_row(png_pt
32400 72 2c 20 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 23 20 20 70 6e 67 5f 77 r,.buf.+.y.*.stride);...#..png_w
32420 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 30 rite_end(png_ptr,.info_ptr);...0
32440 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f ..png_destroy_write_struct(&png_
32460 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 65 28 66 70 29 ptr,.&info_ptr);......fclose(fp)
32480 3b 00 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 32 73 74 61 ;......return.0;....}.......2sta
324a0 74 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 tic.int.take_screenshot(const.ch
324c0 61 72 20 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 25 20 20 69 6e 74 20 63 6f 75 6e 74 20 3d ar.*filename).{...%..int.count.=
324e0 20 73 77 63 5f 67 65 74 5f 73 63 72 65 65 6e 5f 63 6f 75 6e 74 28 29 3b 00 00 00 10 20 20 69 66 .swc_get_screen_count();......if
32500 20 28 63 6f 75 6e 74 20 3c 20 31 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 .(count.<.1)........return.-1;..
32520 00 30 20 20 73 74 72 75 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 73 20 3d 20 73 77 63 5f 67 .0..struct.wld_screen.*s.=.swc_g
32540 65 74 5f 73 63 72 65 65 6e 28 30 29 2d 3e 73 63 72 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 et_screen(0)->scr;......if.(!s).
32560 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 35 20 20 75 6e 73 69 67 6e 65 64 20 .......return.-2;...5..unsigned.
32580 63 68 61 72 20 2a 62 75 66 20 3d 20 6d 61 6c 6c 6f 63 28 73 2d 3e 73 74 72 69 64 65 20 2a 20 73 char.*buf.=.malloc(s->stride.*.s
325a0 2d 3e 68 65 69 67 68 74 29 3b 00 00 00 0b 20 20 69 66 20 28 21 62 75 66 29 00 00 00 0e 20 20 20 ->height);......if.(!buf).......
325c0 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 28 20 20 69 66 20 28 77 6c 64 5f 63 61 70 74 75 72 65 .return.-3;...(..if.(wld_capture
325e0 5f 73 63 72 65 65 6e 28 73 2c 20 62 75 66 29 20 21 3d 20 30 29 20 7b 00 00 00 0e 20 20 20 20 66 _screen(s,.buf).!=.0).{........f
32600 72 65 65 28 62 75 66 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 03 20 ree(buf);........return.-4;.....
32620 20 7d 00 00 00 45 20 20 69 6e 74 20 72 65 74 20 3d 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 65 .}...E..int.ret.=.write_png(file
32640 6e 61 6d 65 2c 20 62 75 66 2c 20 73 2d 3e 77 69 64 74 68 2c 20 73 2d 3e 68 65 69 67 68 74 2c 20 name,.buf,.s->width,.s->height,.
32660 73 2d 3e 73 74 72 69 64 65 29 3b 00 00 00 0c 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0d 20 s->stride);......free(buf);.....
32680 20 72 65 74 75 72 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 .return.ret;....}.......!int.mai
326a0 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 0a 20 20 n(int.argc,.char.**argv).{......
326c0 73 65 74 75 70 28 29 3b 00 00 00 3a 20 20 69 66 20 28 61 72 67 63 20 3d 3d 20 33 20 26 26 20 73 setup();...:..if.(argc.==.3.&&.s
326e0 74 72 63 6d 70 28 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 20 3d trcmp(argv[1],."--screenshot").=
32700 3d 20 30 29 20 7b 00 00 00 28 20 20 20 20 69 66 20 28 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f =.0).{...(....if.(take_screensho
32720 74 28 61 72 67 76 5b 32 5d 29 20 21 3d 20 30 29 20 7b 00 00 00 2d 20 20 20 20 20 20 66 70 72 69 t(argv[2]).!=.0).{...-......fpri
32740 6e 74 66 28 73 74 64 65 72 72 2c 20 22 53 63 72 65 65 6e 73 68 6f 74 20 66 61 69 6c 65 64 5c 6e ntf(stderr,."Screenshot.failed\n
32760 22 29 3b 00 00 00 0f 20 20 20 20 20 20 72 65 74 75 72 6e 20 31 3b 00 00 00 05 20 20 20 20 7d 00 ");..........return.1;........}.
32780 00 00 30 20 20 20 20 70 72 69 6e 74 66 28 22 53 61 76 65 64 20 73 63 72 65 65 6e 73 68 6f 74 20 ..0....printf("Saved.screenshot.
327a0 74 6f 20 25 73 5c 6e 22 2c 20 61 72 67 76 5b 32 5d 29 3b 00 00 00 0d 20 20 20 20 72 65 74 75 72 to.%s\n",.argv[2]);........retur
327c0 6e 20 30 3b 00 00 00 03 20 20 7d 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 n.0;......}......wl_display_run(
327e0 77 6d 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 wm.dpy);......swc_finalize();...
32800 1d 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 ...wl_display_destroy(wm.dpy);..
32820 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 35 81 f5 18 00 00 00 00 09 00 00 00 0b 00 ....return.0;....}5.............
32840 00 00 39 01 00 00 00 00 00 00 1b 02 00 00 01 00 00 00 bc 00 00 00 00 00 00 00 82 36 00 00 00 00 ..9........................6....
32860 00 00 03 3a 00 00 00 00 00 00 35 81 5f d0 00 00 00 75 00 00 00 77 00 00 00 00 00 00 00 00 00 00 ...:......5._....u...w..........
32880 00 76 00 00 02 04 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 .v..............................
328a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
328c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
328e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
329a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
329c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 04 00 00 00 0b 00 00 00 00 00 00 02 04 00 00 00 01 ................................
329e0 00 00 00 00 00 00 00 56 00 00 00 0b 00 00 00 00 69 95 8e bf 04 01 00 00 00 00 00 f5 18 00 00 02 .......V........i...............
32a00 03 00 00 02 16 00 00 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 03 02 00 00 00 00 00 00 12 00 00 .............5..................
32a20 00 00 00 00 00 00 00 00 00 00 00 00 00 8d 37 00 00 00 00 00 00 c2 01 00 00 00 00 00 00 00 00 00 ..............7.................
32a40 00 00 00 00 00 35 81 5f d0 00 00 00 76 00 00 00 78 00 00 00 00 00 00 00 00 00 00 00 77 00 00 02 .....5._....v...x...........w...
32a60 04 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 ................................
32a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32ba0 00 00 00 00 00 00 00 00 00 02 19 00 00 00 0b 00 00 00 00 00 00 02 19 00 00 00 01 00 00 00 00 00 ................................
32bc0 00 00 56 00 00 00 0b 00 00 00 00 69 95 8e c1 04 01 00 00 00 00 00 f5 18 00 00 02 03 00 00 02 04 ..V........i....................
32be0 00 00 02 13 00 00 00 01 00 00 00 00 f5 18 00 00 02 04 00 00 02 05 00 00 02 14 00 00 00 00 f5 18 ................................
32c00 00 00 02 03 00 00 02 05 00 00 02 14 00 00 00 16 00 00 00 32 73 74 61 74 69 63 20 69 6e 74 20 74 ...................2static.int.t
32c20 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e ake_screenshot(const.char.*filen
32c40 61 6d 65 29 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 ame).{...#....if.(wl_list_empty(
32c60 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 12 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 &wm.screens))............return.
32c80 2d 31 3b 00 00 00 00 00 00 00 41 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 -1;.......A....struct.screen.*s.
32ca0 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 =.wl_container_of(wm.screens.nex
32cc0 74 2c 20 73 2c 20 6c 69 6e 6b 29 3b 00 00 00 24 20 20 20 20 73 74 72 75 63 74 20 73 77 63 5f 73 t,.s,.link);...$....struct.swc_s
32ce0 63 72 65 65 6e 20 2a 73 63 72 20 3d 20 73 2d 3e 73 63 72 3b 00 00 00 47 20 20 20 20 73 74 72 75 creen.*scr.=.s->scr;...G....stru
32d00 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 77 73 63 72 20 3d 20 73 63 72 2d 3e 73 63 72 3b 20 ct.wld_screen.*wscr.=.scr->scr;.
32d20 2f 2f 20 77 6c 64 5f 73 63 72 65 65 6e 20 69 6e 73 69 64 65 20 73 77 63 5f 73 63 72 65 65 6e 00 //.wld_screen.inside.swc_screen.
32d40 00 00 00 00 00 00 3d 20 20 20 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 20 3d 20 ......=....unsigned.char.*buf.=.
32d60 6d 61 6c 6c 6f 63 28 77 73 63 72 2d 3e 73 74 72 69 64 65 20 2a 20 77 73 63 72 2d 3e 68 65 69 67 malloc(wscr->stride.*.wscr->heig
32d80 68 74 29 3b 00 00 00 0d 20 20 20 20 69 66 20 28 21 62 75 66 29 00 00 00 12 20 20 20 20 20 20 20 ht);........if.(!buf)...........
32da0 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 00 00 00 00 2d 20 20 20 20 69 66 20 28 77 6c 64 5f 63 .return.-2;.......-....if.(wld_c
32dc0 61 70 74 75 72 65 5f 73 63 72 65 65 6e 28 77 73 63 72 2c 20 62 75 66 29 20 21 3d 20 30 29 20 7b apture_screen(wscr,.buf).!=.0).{
32de0 00 00 00 12 20 20 20 20 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 12 20 20 20 20 20 20 ............free(buf);..........
32e00 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 05 20 20 20 20 7d 00 00 00 00 00 00 00 50 20 20 20 ..return.-3;........}.......P...
32e20 20 69 6e 74 20 72 65 74 20 3d 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 65 6e 61 6d 65 2c 20 62 .int.ret.=.write_png(filename,.b
32e40 75 66 2c 20 77 73 63 72 2d 3e 77 69 64 74 68 2c 20 77 73 63 72 2d 3e 68 65 69 67 68 74 2c 20 77 uf,.wscr->width,.wscr->height,.w
32e60 73 63 72 2d 3e 73 74 72 69 64 65 29 3b 00 00 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 scr->stride);........free(buf);.
32e80 00 00 0f 20 20 20 20 72 65 74 75 72 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 f5 18 00 00 02 .......return.ret;....}.........
32ea0 18 00 00 02 1a 00 00 02 29 00 00 00 00 35 81 f5 18 00 00 00 00 03 02 00 00 00 00 00 00 00 00 00 ........)....5..................
32ec0 00 00 00 00 00 01 00 00 00 00 00 00 00 8d 37 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 ..............7.................
32ee0 00 00 00 00 00 f5 18 00 00 00 00 03 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 15 00 00 00 00 ................................
32f00 00 00 00 8d 37 00 00 00 00 00 00 00 00 00 00 00 00 00 00 48 02 00 00 00 00 00 00 f5 18 00 00 00 ....7..............H............
32f20 00 17 02 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d4 39 00 00 00 00 00 ..........................9.....
32f40 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 77 00 00 00 79 00 00 00 .................5._....w...y...
32f60 00 00 00 00 00 00 00 00 78 00 00 02 0a 00 00 00 27 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 ........x.......'...............
32f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
32fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
330a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 19 00 00 00 0b 00 00 00 00 00 ................................
330c0 00 02 19 00 00 00 01 00 00 00 00 00 00 00 56 00 00 00 0b 00 00 00 00 69 95 8e c5 04 01 00 00 00 ..............V........i........
330e0 00 00 f5 18 00 00 02 09 00 00 02 0b 00 00 02 28 00 00 00 01 00 00 00 27 20 20 20 20 73 74 72 75 ...............(.......'....stru
33100 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 77 73 63 72 20 3d 20 73 63 72 2d 3e 73 63 72 3b 35 ct.wld_screen.*wscr.=.scr->scr;5
33120 81 f5 18 00 00 00 00 09 02 00 00 27 00 00 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 86 ...........'....................
33140 38 00 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 78 00 8......................5._....x.
33160 00 00 7a 00 00 00 00 00 00 00 00 00 00 00 79 00 00 02 0a 00 00 00 26 00 00 00 00 ff ff ff ff 00 ..z...........y.......&.........
33180 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 00 00 ................................
331a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
331c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
331e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
332a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
332c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 8e .............................i..
332e0 c6 04 01 00 00 00 35 00 f5 18 00 00 02 04 00 00 02 18 00 00 02 28 00 00 00 13 00 00 00 21 20 20 ......5..............(.......!..
33300 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 if.(wl_list_empty(&wm.screens)).
33320 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 00 00 00 00 3f 20 20 73 74 72 75 63 .......return.-1;.......?..struc
33340 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d t.screen.*s.=.wl_container_of(wm
33360 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 73 2c 20 6c 69 6e 6b 29 3b 00 00 00 22 20 20 73 74 .screens.next,.s,.link);..."..st
33380 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 20 3d 20 73 2d 3e 73 63 72 3b 00 00 ruct.swc_screen.*scr.=.s->scr;..
333a0 00 25 20 20 73 74 72 75 63 74 20 77 6c 64 5f 73 63 72 65 65 6e 20 2a 77 73 63 72 20 3d 20 73 63 .%..struct.wld_screen.*wscr.=.sc
333c0 72 2d 3e 73 63 72 3b 00 00 00 00 00 00 00 3b 20 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a r->scr;.......;..unsigned.char.*
333e0 62 75 66 20 3d 20 6d 61 6c 6c 6f 63 28 77 73 63 72 2d 3e 73 74 72 69 64 65 20 2a 20 77 73 63 72 buf.=.malloc(wscr->stride.*.wscr
33400 2d 3e 68 65 69 67 68 74 29 3b 00 00 00 0b 20 20 69 66 20 28 21 62 75 66 29 00 00 00 0e 20 20 20 ->height);......if.(!buf).......
33420 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 00 00 00 00 2b 20 20 69 66 20 28 77 6c 64 5f 63 61 70 .return.-2;.......+..if.(wld_cap
33440 74 75 72 65 5f 73 63 72 65 65 6e 28 77 73 63 72 2c 20 62 75 66 29 20 21 3d 20 30 29 20 7b 00 00 ture_screen(wscr,.buf).!=.0).{..
33460 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d ......free(buf);........return.-
33480 33 3b 00 00 00 03 20 20 7d 00 00 00 00 00 00 00 4e 20 20 69 6e 74 20 72 65 74 20 3d 20 77 72 69 3;......}.......N..int.ret.=.wri
334a0 74 65 5f 70 6e 67 28 66 69 6c 65 6e 61 6d 65 2c 20 62 75 66 2c 20 77 73 63 72 2d 3e 77 69 64 74 te_png(filename,.buf,.wscr->widt
334c0 68 2c 20 77 73 63 72 2d 3e 68 65 69 67 68 74 2c 20 77 73 63 72 2d 3e 73 74 72 69 64 65 29 3b 00 h,.wscr->height,.wscr->stride);.
334e0 00 00 0c 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0d 20 20 72 65 74 75 72 6e 20 72 65 74 3b .....free(buf);......return.ret;
33500 35 81 f5 18 00 00 00 00 04 02 00 00 02 00 00 00 12 00 00 00 02 00 00 00 12 00 00 00 00 00 00 00 5...............................
33520 c2 37 00 00 00 00 00 00 e3 01 00 00 00 00 00 00 bd 01 00 00 00 00 00 00 35 81 5f d0 00 00 00 79 .7......................5._....y
33540 00 00 00 7b 00 00 00 00 00 00 00 00 00 00 00 7a 00 00 00 01 00 00 00 04 00 00 00 00 ff ff ff ff ...{...........z................
33560 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 ................................
33580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
335a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
335c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
335e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
336a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 ..............................i.
336c0 8f 3c 04 01 00 00 00 00 00 f5 18 00 00 00 00 00 00 02 29 00 00 00 00 00 00 00 01 00 00 00 00 35 .<................)............5
336e0 81 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 28 02 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 ...............(................
33700 00 00 00 00 00 00 00 00 3b 00 00 00 00 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 7a 00 ........;..............5._....z.
33720 00 00 7c 00 00 00 00 00 00 00 00 00 00 00 7b 00 00 00 01 00 00 00 00 00 00 00 00 ff ff ff ff 00 ..|...........{.................
33740 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 00 00 ................................
33760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
337a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
337c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
337e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
33880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 8f .............................i..
338a0 3d 04 01 00 00 00 00 00 f5 18 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 =...............................
338c0 00 00 00 02 00 00 00 00 00 00 00 6a 00 00 00 17 23 69 6e 63 6c 75 64 65 20 22 63 6f 6d 70 6f 73 ...........j....#include."compos
338e0 69 74 6f 72 2e 68 22 00 00 00 13 23 69 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 itor.h"....#include."config.h"..
33900 00 12 23 69 6e 63 6c 75 64 65 20 22 74 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 ..#include."types.h"....#include
33920 20 22 75 74 69 6c 2e 68 22 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 70 6e 67 2e 68 3e 00 00 00 ."util.h"....#include.<png.h>...
33940 13 23 69 6e 63 6c 75 64 65 20 3c 73 65 74 6a 6d 70 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 .#include.<setjmp.h>....#include
33960 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 00 12 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 69 6f 2e 68 .<signal.h>....#include.<stdio.h
33980 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e 00 00 00 10 23 69 6e 63 >....#include.<stdlib.h>....#inc
339a0 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 lude.<swc.h>....#include.<unistd
339c0 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e .h>....#include.<wayland-server.
339e0 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 h>....#include.<wayland-util.h>.
33a00 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 6e ..(#include.<xkbcommon/xkbcommon
33a20 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67 2e -keysyms.h>....#include.<string.
33a40 68 3e 00 00 00 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 h>.......0static.void.focus(stru
33a60 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 ct.client.*c,.bool.raise);...*st
33a80 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 atic.void.on_screen_destroy(void
33aa0 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 .*data);...:static.void.on_scree
33ac0 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a n_usable_geometry_changed(void.*
33ae0 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 data);...'static.void.on_win_des
33b00 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 troy(void.*data);...'static.void
33b20 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 .on_win_entered(void.*data);....
33b40 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 static.void.setup(void);....stat
33b60 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 ic.void.setup_binds(void);...Fst
33b80 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c atic.void.set_floating(struct.cl
33ba0 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 ient.*c,.bool.floating,.bool.rai
33bc0 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 se);...#static.void.tile(struct.
33be0 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 screen.*s);...(void.new_screen(s
33c00 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b 00 00 00 28 76 6f 69 64 20 truct.swc_screen.*scr);...(void.
33c20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 new_window(struct.swc_window.*wi
33c40 6e 29 3b 00 00 00 2d 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 n);...-void.new_device(struct.li
33c60 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 binput_device.*dev);...Kvoid.foc
33c80 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d us_next(void.*data,.uint32_t.tim
33ca0 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 e,.uint32_t.value,.uint32_t.stat
33cc0 65 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 e);...Kvoid.focus_prev(void.*dat
33ce0 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
33d00 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 49 76 6f 69 64 20 6b 69 6c 6c 5f ,.uint32_t.state);...Ivoid.kill_
33d20 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 sel(void.*data,.uint32_t.time,.u
33d40 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 int32_t.value,.uint32_t.state);.
33d60 00 00 4b 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 ..Kvoid.mouse_move(void.*data,.u
33d80 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 int32_t.time,.uint32_t.value,.ui
33da0 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 nt32_t.state);...Mvoid.mouse_res
33dc0 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 ize(void.*data,.uint32_t.time,.u
33de0 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 int32_t.value,.uint32_t.state);.
33e00 00 00 45 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f ..Evoid.quit(void.*data,.uint32_
33e20 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
33e40 20 73 74 61 74 65 29 3b 00 00 00 46 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 .state);...Fvoid.spawn(void.*dat
33e60 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
33e80 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 74 6f 67 67 6c ,.uint32_t.state);...Mvoid.toggl
33ea0 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d e_float(void.*data,.uint32_t.tim
33ec0 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 e,.uint32_t.value,.uint32_t.stat
33ee0 65 29 3b 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 e);...Cvoid.toggle_float_global(
33f00 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 void.*data,.uint32_t.time,.uint3
33f20 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2_t.value,...)..................
33f40 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 .......uint32_t.state);...Lvoid.
33f60 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 master_next(void.*data,.uint32_t
33f80 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 .time,.uint32_t.value,.uint32_t.
33fa0 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 state);...Lvoid.master_prev(void
33fc0 20 2a 64 61 74 61 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 .*data,.uint32_t.time,.uint32_t.
33fe0 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4e 76 6f 69 64 20 value,.uint32_t.state);...Nvoid.
34000 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 master_resize(void.*data,.uint32
34020 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f _t.time,.uint32_t.value,.uint32_
34040 74 20 73 74 61 74 65 29 3b 00 00 00 00 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 t.state);........struct.wm.wm;..
34060 00 21 73 74 61 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d .!static.uint32_t.master_width.=
34080 20 30 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e .0;.......,struct.swc_window_han
340a0 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e dler.window_handler.=.{.........
340c0 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 destroy.=.on_win_destroy,.......
340e0 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d ..entered.=.on_win_entered,....}
34100 3b 00 00 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c ;.......,struct.swc_screen_handl
34120 65 72 20 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 er.screen_handler.=.{...!.....de
34140 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 stroy.=.on_screen_destroy,...A..
34160 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f ...usable_geometry_changed.=.on_
34180 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 screen_usable_geometry_changed,.
341a0 00 00 02 7d 3b 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 ...};.......$const.struct.swc_ma
341c0 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 nager.manager.=.{.........new_sc
341e0 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 reen.=.new_screen,.........new_w
34200 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f indow.=.new_window,.........new_
34220 64 65 76 69 63 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 device.=.new_device,....};......
34240 00 49 73 74 61 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 .Istatic.int.write_png(const.cha
34260 72 20 2a 66 69 6c 65 6e 61 6d 65 2c 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c r.*filename,.unsigned.char.*buf,
34280 20 69 6e 74 20 77 69 64 74 68 2c 00 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .int.width,.....................
342a0 20 20 20 20 69 6e 74 20 68 65 69 67 68 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b 00 00 00 ....int.height,.int.stride).{...
342c0 25 20 20 20 20 46 49 4c 45 20 2a 66 70 20 3d 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 20 %....FILE.*fp.=.fopen(filename,.
342e0 22 77 62 22 29 3b 00 00 00 0c 20 20 20 20 69 66 20 28 21 66 70 29 00 00 00 12 20 20 20 20 20 20 "wb");........if.(!fp)..........
34300 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 5b 20 20 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 ..return.-1;...[....png_structp.
34320 70 6e 67 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 png_ptr.=.png_create_write_struc
34340 74 28 50 4e 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e t(PNG_LIBPNG_VER_STRING,.NULL,.N
34360 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 00 2c 20 20 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 ULL,.NULL);...,....if.(!png_ptr)
34380 20 7b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 32 3b 20 7d 00 00 00 39 20 .{.fclose(fp);.return.-2;.}...9.
343a0 20 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 ...png_infop.info_ptr.=.png_crea
343c0 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 29 3b 00 00 00 57 20 20 20 20 te_info_struct(png_ptr);...W....
343e0 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 if.(!info_ptr).{.png_destroy_wri
34400 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c 29 3b 20 66 63 6c 6f 73 te_struct(&png_ptr,.NULL);.fclos
34420 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b 20 7d 00 00 00 6e 20 20 20 20 69 66 20 28 73 e(fp);.return.-3;.}...n....if.(s
34440 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 7b 20 70 6e etjmp(png_jmpbuf(png_ptr))).{.pn
34460 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c g_destroy_write_struct(&png_ptr,
34480 20 26 69 6e 66 6f 5f 70 74 72 29 3b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 .&info_ptr);.fclose(fp);.return.
344a0 2d 34 3b 20 7d 00 00 00 1d 20 20 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 -4;.}........png_init_io(png_ptr
344c0 2c 20 66 70 29 3b 00 00 00 4a 20 20 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 ,.fp);...J....png_set_IHDR(png_p
344e0 74 72 2c 20 69 6e 66 6f 5f 70 74 72 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 38 2c 20 tr,.info_ptr,.width,.height,.8,.
34500 50 4e 47 5f 43 4f 4c 4f 52 5f 54 59 50 45 5f 52 47 42 41 2c 00 00 00 56 20 20 20 20 20 20 20 20 PNG_COLOR_TYPE_RGBA,...V........
34520 20 20 20 20 20 20 20 20 20 50 4e 47 5f 49 4e 54 45 52 4c 41 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 .........PNG_INTERLACE_NONE,.PNG
34540 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 54 59 50 45 5f 42 41 53 45 2c 20 50 4e 47 5f 46 49 4c 54 _COMPRESSION_TYPE_BASE,.PNG_FILT
34560 45 52 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 26 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f ER_TYPE_BASE);...&....png_write_
34580 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 24 20 20 20 20 info(png_ptr,.info_ptr);...$....
345a0 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 74 3b 20 79 2b 2b 29 for.(int.y.=.0;.y.<.height;.y++)
345c0 00 00 00 31 20 20 20 20 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 ...1........png_write_row(png_pt
345e0 72 2c 20 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 25 20 20 20 20 70 6e 67 r,.buf.+.y.*.stride);...%....png
34600 5f 77 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 _write_end(png_ptr,.info_ptr);..
34620 00 32 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 .2....png_destroy_write_struct(&
34640 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f png_ptr,.&info_ptr);........fclo
34660 73 65 28 66 70 29 3b 00 00 00 0d 20 20 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 se(fp);........return.0;....}...
34680 00 00 00 00 32 73 74 61 74 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 ....2static.int.take_screenshot(
346a0 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 17 20 20 20 20 69 const.char.*filename).{........i
346c0 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 12 20 20 20 20 20 20 20 20 72 65 f.(!wm.sel_screen)............re
346e0 74 75 72 6e 20 2d 31 3b 00 00 00 25 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 turn.-1;...%....struct.screen.*s
34700 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 2e 20 20 20 20 69 6e 74 20 77 69 64 .=.wm.sel_screen;........int.wid
34720 74 68 20 3d 20 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 2e 77 69 64 th.=.s->scr->usable_geometry.wid
34740 74 68 3b 00 00 00 30 20 20 20 20 69 6e 74 20 68 65 69 67 68 74 20 3d 20 73 2d 3e 73 63 72 2d 3e th;...0....int.height.=.s->scr->
34760 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 2e 68 65 69 67 68 74 3b 00 00 00 1b 20 20 20 20 69 usable_geometry.height;........i
34780 6e 74 20 73 74 72 69 64 65 20 3d 20 77 69 64 74 68 20 2a 20 34 3b 00 00 00 31 20 20 20 20 75 6e nt.stride.=.width.*.4;...1....un
347a0 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 20 3d 20 6d 61 6c 6c 6f 63 28 73 74 72 69 64 65 signed.char.*buf.=.malloc(stride
347c0 20 2a 20 68 65 69 67 68 74 29 3b 00 00 00 0d 20 20 20 20 69 66 20 28 21 62 75 66 29 00 00 00 12 .*.height);........if.(!buf)....
347e0 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 4b 20 20 20 20 69 66 20 28 73 77 ........return.-2;...K....if.(sw
34800 63 5f 73 63 72 65 65 6e 5f 63 6f 70 79 5f 70 69 78 65 6c 73 28 73 2d 3e 73 63 72 2c 20 62 75 66 c_screen_copy_pixels(s->scr,.buf
34820 29 20 21 3d 20 30 29 20 7b 20 66 72 65 65 28 62 75 66 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b 20 ).!=.0).{.free(buf);.return.-3;.
34840 7d 00 00 00 3e 20 20 20 20 69 6e 74 20 72 65 74 20 3d 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c }...>....int.ret.=.write_png(fil
34860 65 6e 61 6d 65 2c 20 62 75 66 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 73 74 72 69 64 ename,.buf,.width,.height,.strid
34880 65 29 3b 00 00 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0f 20 20 20 20 72 65 74 e);........free(buf);........ret
348a0 75 72 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 urn.ret;....}.......1static.void
348c0 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 .focus(struct.client.*c,.bool.ra
348e0 69 73 65 29 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 ise).{........if.(wm.sel_client)
34900 00 00 00 6a 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 ...j........swc_window_set_borde
34920 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 r(wm.sel_client->win,.cfg.border
34940 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 30 _col_normal,.cfg.border_width,.0
34960 78 30 30 30 30 30 30 46 46 2c 20 30 29 3b 00 00 00 0a 20 20 20 20 69 66 20 28 63 29 00 00 00 5e x000000FF,.0);........if.(c)...^
34980 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d ........swc_window_set_border(c-
349a0 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 >win,.cfg.border_col_active,.cfg
349c0 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 30 78 30 30 30 30 30 30 46 46 2c 20 30 29 3b 00 00 .border_width,.0x000000FF,.0);..
349e0 00 22 20 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 ."....if.(raise.&&.c.&&.c->float
34a00 69 6e 67 29 00 00 00 03 20 20 20 f5 18 00 00 00 6a 00 00 00 6b 00 00 00 00 00 00 00 00 f5 18 00 ing)............j...k...........
34a20 00 00 69 00 00 00 6b 00 00 00 00 00 00 00 64 00 00 00 24 20 20 20 20 20 20 20 20 73 65 74 5f 66 ..i...k.......d...$........set_f
34a40 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 28 20 20 20 20 73 loating(c,.true,.true);...(....s
34a60 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c wc_window_focus(c.?.c->win.:.NUL
34a80 4c 29 3b 00 00 00 16 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 L);........wm.sel_client.=.c;...
34aa0 01 7d 00 00 00 00 00 00 00 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f .}.......+static.void.on_screen_
34ac0 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1c 20 20 20 20 73 74 72 destroy(void.*data).{........str
34ae0 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 13 20 20 20 20 69 66 20 uct.screen.*s.=.data;........if.
34b00 28 21 73 29 20 72 65 74 75 72 6e 3b 00 00 00 1d 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f (!s).return;........wl_list_remo
34b20 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 1d 20 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f ve(&s->link);........if.(wm.sel_
34b40 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b 00 00 00 3d 20 20 20 20 20 20 20 20 69 66 20 28 77 6c screen.==.s).{...=........if.(wl
34b60 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 20 77 6d 2e 73 65 6c _list_empty(&wm.screens)).wm.sel
34b80 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 53 20 20 20 20 20 20 20 20 65 6c 73 65 20 _screen.=.NULL;...S........else.
34ba0 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 wm.sel_screen.=.wl_container_of(
34bc0 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 wm.screens.next,.wm.sel_screen,.
34be0 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 0c 20 20 20 20 66 72 65 65 28 73 29 3b 00 link);........}........free(s);.
34c00 00 00 01 7d 00 00 00 00 00 00 00 49 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 ...}.......Istatic.void.on_scree
34c20 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a n_usable_geometry_changed(void.*
34c40 64 61 74 61 29 20 7b 20 74 69 6c 65 28 64 61 74 61 29 3b 20 7d 00 00 00 00 00 00 00 28 73 74 61 data).{.tile(data);.}.......(sta
34c60 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 tic.void.on_win_destroy(void.*da
34c80 74 61 29 20 7b 00 00 00 1c 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 ta).{........struct.client.*c.=.
34ca0 64 61 74 61 3b 00 00 00 13 20 20 20 20 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 57 data;........if.(!c).return;...W
34cc0 20 20 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 ....if.(wm.grab.active.&&.wm.gra
34ce0 62 2e 63 20 3d 3d 20 63 29 20 7b 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c b.c.==.c).{.wm.grab.active.=.fal
34d00 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 20 7d 00 00 00 34 20 20 20 20 69 se;.wm.grab.c.=.NULL;.}...4....i
34d20 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 f.(c->floating).wl_list_remove(&
34d40 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 28 20 20 20 20 65 6c 73 65 20 77 6c 5f 6c c->float_link);...(....else.wl_l
34d60 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1d 20 ist_remove(&c->tiled_link);.....
34d80 20 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 1d ...if.(wm.sel_client.==.c).{....
34da0 20 20 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 ........wm.sel_client.=.NULL;...
34dc0 32 20 20 20 20 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 20 3d 20 66 2........struct.client.*next.=.f
34de0 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 2e 20 20 20 20 20 20 20 20 69 irst_float(c->scr);............i
34e00 66 20 28 21 6e 65 78 74 29 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d 3e f.(!next).next.=.first_tiled(c->
34e20 73 63 72 29 3b 00 00 00 1a 20 20 20 20 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 scr);............focus(next,.tru
34e40 65 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 11 20 20 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 e);........}........tile(c->scr)
34e60 3b 00 00 00 0c 20 20 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 ;........free(c);....}.......(st
34e80 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 atic.void.on_win_entered(void.*d
34ea0 61 74 61 29 20 7b 00 00 00 1f 20 20 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 ata).{........if.(wm.grab.active
34ec0 29 20 72 65 74 75 72 6e 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 64 61 74 61 2c 20 74 72 75 ).return;........focus(data,.tru
34ee0 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 e);....}........static.void.setu
34f00 70 28 76 6f 69 64 29 20 7b 00 00 00 21 20 20 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 p(void).{...!....wm.dpy.=.wl_dis
34f20 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 24 20 20 20 20 69 66 20 28 21 77 6d 2e 64 70 play_create();...$....if.(!wm.dp
34f40 79 29 20 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 1e 20 20 20 20 77 6c y).exit(EXIT_FAILURE);........wl
34f60 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1c 20 20 20 20 _list_init(&wm.screens);........
34f80 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1f 20 20 20 20 wl_list_init(&wm.tiled);........
34fa0 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 19 20 wl_list_init(&wm.floating);.....
34fc0 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 20 20 20 20 ...wm.sel_client.=.NULL;........
34fe0 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 1b 20 20 20 20 77 6d 2e wm.sel_screen.=.NULL;........wm.
35000 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 1b 20 20 20 20 77 6d 2e 67 grab.active.=.false;........wm.g
35020 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 rab.resize.=.false;........wm.gr
35040 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 33 20 20 20 20 77 6d 2e 65 76 5f 6c 6f 6f 70 20 3d ab.c.=.NULL;...3....wm.ev_loop.=
35060 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d 2e 64 70 .wl_display_get_event_loop(wm.dp
35080 79 29 3b 00 00 00 4a 20 20 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 77 y);...J....if.(!swc_initialize(w
350a0 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 20 65 78 m.dpy,.wm.ev_loop,.&manager)).ex
350c0 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 12 20 20 20 20 73 65 74 75 70 5f 62 it(EXIT_FAILURE);........setup_b
350e0 69 6e 64 73 28 29 3b 00 00 00 3a 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 inds();...:....const.char.*sock.
35100 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e =.wl_display_add_socket_auto(wm.
35120 64 70 79 29 3b 00 00 00 22 20 20 20 20 69 66 20 28 21 73 6f 63 6b 29 20 65 78 69 74 28 45 58 49 dpy);..."....if.(!sock).exit(EXI
35140 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 27 20 20 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 T_FAILURE);...'....setenv("WAYLA
35160 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 20 20 20 20 20 73 69 ND_DISPLAY",.sock,.1);........si
35180 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 21 20 20 gnal(SIGINT,.sig_handler);...!..
351a0 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 ..signal(SIGTERM,.sig_handler);.
351c0 00 00 21 20 20 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c ..!....signal(SIGQUIT,.sig_handl
351e0 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 er);....}........static.void.set
35200 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 41 20 20 20 20 66 6f 72 20 28 73 69 7a up_binds(void).{...A....for.(siz
35220 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 29 2f 73 69 7a e_t.i.=.0;.i.<.sizeof(binds)/siz
35240 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 00 29 20 20 20 20 20 20 20 eof(binds[0]);.i++).{...).......
35260 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 .const.struct.bind.*b.=.&binds[i
35280 5d 3b 00 00 00 4b 20 20 20 20 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d ];...K........swc_add_binding(b-
352a0 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 >type,.b->mods,.b->ksym,.b->fn,.
352c0 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 (void.*)&b->arg);........}....}.
352e0 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 ......Gstatic.void.set_floating(
35300 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c struct.client.*c,.bool.floating,
35320 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 13 20 20 20 20 69 66 20 28 21 63 29 20 72 65 .bool.raise).{........if.(!c).re
35340 74 75 72 6e 3b 00 00 00 13 20 20 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 7f turn;........if.(floating).{....
35360 20 20 20 20 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 20 63 2d 3e 66 ........if.(!c->floating).{.c->f
35380 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 loating.=.true;.wl_list_remove(&
353a0 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 c->tiled_link);.wl_list_insert(&
353c0 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 7d 00 wm.floating,.&c->float_link);.}.
353e0 00 00 69 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 20 77 6c 5f ..i........else.if.(raise).{.wl_
35400 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 77 6c 5f list_remove(&c->float_link);.wl_
35420 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c list_insert(&wm.floating,.&c->fl
35440 6f 61 74 5f 6c 69 6e 6b 29 3b 20 7d 00 00 00 27 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 oat_link);.}...'........swc_wind
35460 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0c 20 20 20 20 7d ow_set_stacked(c->win);........}
35480 20 65 6c 73 65 20 7b 00 00 00 7c 20 20 20 20 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 .else.{...|........if.(c->floati
354a0 6e 67 29 20 7b 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 20 77 6c 5f 6c 69 ng).{.c->floating.=.false;.wl_li
354c0 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 77 6c 5f 6c 69 st_remove(&c->float_link);.wl_li
354e0 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c st_insert(&wm.tiled,.&c->tiled_l
35500 69 6e 6b 29 3b 20 7d 00 00 00 25 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 ink);.}...%........swc_window_se
35520 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 t_tiled(c->win);........}....}..
35540 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 .....$static.void.tile(struct.sc
35560 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 13 20 20 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e reen.*s).{........if.(!s).return
35580 3b 00 00 00 15 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1e 20 20 ;........struct.client.*c;......
355a0 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 3e ..struct.swc_rectangle.geom;...>
355c0 20 20 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 ....struct.swc_rectangle.*scr_ge
355e0 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 om.=.&s->scr->usable_geometry;..
35600 00 33 20 20 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 .3....int32_t.out_gaps.=.cfg.gap
35620 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 34 20 20 20 20 69 6e 74 s.+.cfg.border_width;...4....int
35640 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 32_t.in_gaps.=.cfg.gaps.+.cfg.bo
35660 72 64 65 72 5f 77 69 64 74 68 2a 32 3b 00 00 00 27 20 20 20 20 69 6e 74 33 32 5f 74 20 78 20 3d rder_width*2;...'....int32_t.x.=
35680 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 27 20 20 20 20 .scr_geom->x.+.out_gaps;...'....
356a0 69 6e 74 33 32 5f 74 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 int32_t.y.=.scr_geom->y.+.out_ga
356c0 70 73 3b 00 00 00 2e 20 20 20 20 75 69 6e 74 33 32 5f 74 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d ps;........uint32_t.w.=.scr_geom
356e0 2d 3e 77 69 64 74 68 20 2d 20 32 2a 6f 75 74 5f 67 61 70 73 3b 00 00 00 2f 20 20 20 20 75 69 6e ->width.-.2*out_gaps;.../....uin
35700 74 33 32 5f 74 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 32 2a 6f t32_t.h.=.scr_geom->height.-.2*o
35720 75 74 5f 67 61 70 73 3b 00 00 00 11 20 20 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 ut_gaps;........size_t.n.=.0;...
35740 47 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c G....wl_list_for_each(c,.&wm.til
35760 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 ed,.tiled_link).if.(is_tiled(c,.
35780 73 29 29 20 6e 2b 2b 3b 00 00 00 17 20 20 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 20 72 65 74 75 s)).n++;........if.(n.==.0).retu
357a0 72 6e 3b 00 00 00 c1 20 20 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 20 77 6c 5f 6c 69 73 74 rn;........if.(n.==.1).{.wl_list
357c0 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 _for_each(c,.&wm.tiled,.tiled_li
357e0 6e 6b 29 20 7b 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 nk).{.if.(!is_tiled(c,.s)).conti
35800 6e 75 65 3b 20 67 65 6f 6d 2e 78 3d 78 3b 20 67 65 6f 6d 2e 79 3d 79 3b 20 67 65 6f 6d 2e 77 69 nue;.geom.x=x;.geom.y=y;.geom.wi
35820 64 74 68 3d 77 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 3d 68 3b 20 73 77 63 5f 77 69 6e 64 6f 77 dth=w;.geom.height=h;.swc_window
35840 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 26 67 65 6f 6d 29 3b 20 72 65 74 _set_geometry(c->win,&geom);.ret
35860 75 72 6e 3b 20 7d 20 7d 00 00 00 0f 20 20 20 20 73 69 7a 65 5f 74 20 69 3d 30 3b 00 00 00 2e 20 urn;.}.}........size_t.i=0;.....
35880 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 26 77 6d 2e 74 69 6c 65 64 2c ...wl_list_for_each(c,&wm.tiled,
358a0 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 25 20 20 20 20 20 20 20 20 69 66 20 28 21 69 73 tiled_link).{...%........if.(!is
358c0 5f 74 69 6c 65 64 28 63 2c 73 29 29 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 4d 20 20 20 20 20 20 _tiled(c,s)).continue;...M......
358e0 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 3d 3d 30 29 20 6d 61 73 74 65 72 5f 77 69 ..if.(master_width==0).master_wi
35900 64 74 68 3d 28 28 77 2d 69 6e 5f 67 61 70 73 29 2a 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 dth=((w-in_gaps)*cfg.master_widt
35920 68 29 2f 31 30 30 3b 00 00 00 34 20 20 20 20 20 20 20 20 69 66 20 28 69 3d 3d 30 29 20 7b 20 67 h)/100;...4........if.(i==0).{.g
35940 65 6f 6d 2e 78 3d 78 3b 20 67 65 6f 6d 2e 79 3d 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 3d 6d f5 eom.x=x;.geom.y=y;.geom.width=m.
35960 18 00 00 00 cd 00 00 00 ce 00 00 00 00 00 00 00 00 f5 18 00 00 00 cc 00 00 00 ce 00 00 00 00 00 ................................
35980 00 00 2d 00 00 00 51 20 20 20 20 20 20 20 20 69 66 20 28 69 3d 3d 30 29 20 7b 20 67 65 6f 6d 2e ..-...Q........if.(i==0).{.geom.
359a0 78 3d 78 3b 20 67 65 6f 6d 2e 79 3d 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 3d 6d 61 73 74 65 72 x=x;.geom.y=y;.geom.width=master
359c0 5f 77 69 64 74 68 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 3d 68 3b 20 7d 00 00 00 ed 20 20 20 20 _width;.geom.height=h;.}........
359e0 20 20 20 20 65 6c 73 65 20 7b 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 3d 6e 2d 31 3b 20 ....else.{.uint32_t.stackn=n-1;.
35a00 75 69 6e 74 33 32 5f 74 20 69 64 78 3d 69 2d 31 3b 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b uint32_t.idx=i-1;.uint32_t.stack
35a20 5f 68 65 69 67 68 74 3d 28 68 2d 69 6e 5f 67 61 70 73 2a 28 73 74 61 63 6b 6e 2d 31 29 29 2f 73 _height=(h-in_gaps*(stackn-1))/s
35a40 74 61 63 6b 6e 3b 20 67 65 6f 6d 2e 78 3d 78 2b 6d 61 73 74 65 72 5f 77 69 64 74 68 2b 69 6e 5f tackn;.geom.x=x+master_width+in_
35a60 67 61 70 73 3b 20 67 65 6f 6d 2e 79 3d 79 2b 69 64 78 2a 28 73 74 61 63 6b 5f 68 65 69 67 68 74 gaps;.geom.y=y+idx*(stack_height
35a80 2b 69 6e 5f 67 61 70 73 29 3b 20 67 65 6f 6d 2e 77 69 64 74 68 3d 77 2d 6d 61 73 74 65 72 5f 77 +in_gaps);.geom.width=w-master_w
35aa0 69 64 74 68 2d 69 6e 5f 67 61 70 73 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 3d 73 74 61 63 6b 5f idth-in_gaps;.geom.height=stack_
35ac0 68 65 69 67 68 74 3b 20 7d 00 00 00 2e 20 20 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f height;.}............swc_window_
35ae0 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 26 67 65 6f 6d 29 3b 00 00 00 0c 20 set_geometry(c->win,&geom);.....
35b00 20 20 20 20 20 20 20 69 2b 2b 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 .......i++;........}....}.......
35b20 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 )void.new_screen(struct.swc_scre
35b40 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 2a 20 20 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 en.*scr).{...*....struct.screen.
35b60 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 11 20 20 20 20 *s.=.malloc(sizeof(*s));........
35b80 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 00 22 20 20 20 20 73 2d 3e 78 20 3d 20 73 2d 3e 79 s->scr.=.scr;..."....s->x.=.s->y
35ba0 20 3d 20 73 2d 3e 77 20 3d 20 73 2d 3e 68 20 3d 20 30 3b 00 00 00 29 20 20 20 20 77 6c 5f 6c 69 .=.s->w.=.s->h.=.0;...)....wl_li
35bc0 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c 26 73 2d 3e 6c 69 6e 6b 29 3b st_insert(&wm.screens,&s->link);
35be0 00 00 00 28 20 20 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 77 6d 2e 73 ...(....if.(!wm.sel_screen).wm.s
35c00 65 6c 5f 73 63 72 65 65 6e 3d 73 3b 00 00 00 32 20 20 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 el_screen=s;...2....swc_screen_s
35c20 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 73 et_handler(scr,&screen_handler,s
35c40 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 );....}.......)void.new_window(s
35c60 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 2a 20 20 20 20 truct.swc_window.*win).{...*....
35c80 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 struct.client.*c.=.malloc(sizeof
35ca0 28 2a 63 29 29 3b 00 00 00 11 20 20 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 1b 20 (*c));........c->win.=.win;.....
35cc0 20 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 ...c->scr.=.wm.sel_screen;......
35ce0 20 20 63 2d 3e 6d 61 70 70 65 64 3d 66 61 6c 73 65 3b 00 00 00 23 20 20 20 20 63 2d 3e 66 6c 6f ..c->mapped=false;...#....c->flo
35d00 61 74 69 6e 67 3d 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 20 ating=wm.global_floating;.......
35d20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 3d 66 61 6c 73 65 3b 00 00 00 10 20 20 20 20 63 2d 3e .c->fullscreen=false;........c->
35d40 77 73 3d 66 61 6c 73 65 3b 00 00 00 af 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 ws=false;........if.(c->floating
35d60 29 20 7b 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c ).{.wl_list_insert(&wm.floating,
35d80 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 &c->float_link);.wl_list_init(&c
35da0 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 ->tiled_link);.swc_window_set_ha
35dc0 6e 64 6c 65 72 28 77 69 6e 2c 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 63 29 3b 20 73 77 ndler(win,&window_handler,c);.sw
35de0 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 20 7d 00 00 00 9e c_window_set_stacked(win);.}....
35e00 20 20 20 20 65 6c 73 65 20 7b 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 ....else.{.wl_list_insert(&wm.ti
35e20 6c 65 64 2c 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 led,&c->tiled_link);.wl_list_ini
35e40 74 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 t(&c->float_link);.swc_window_se
35e60 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 63 29 t_handler(win,&window_handler,c)
35e80 3b 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 20 7d 00 00 ;.swc_window_set_tiled(win);.}..
35ea0 00 19 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 12 20 ......swc_window_show(win);.....
35ec0 20 20 20 66 6f 63 75 73 28 63 2c 74 72 75 65 29 3b 00 00 00 18 20 20 20 20 74 69 6c 65 28 77 6d ...focus(c,true);........tile(wm
35ee0 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e .sel_screen);....}.......;void.n
35f00 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 ew_device(struct.libinput_device
35f20 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 20 69 6e 74 .*dev).{.(void)dev;.}........int
35f40 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 .main(int.argc,char.**argv).{...
35f60 1f 20 20 20 20 62 6f 6f 6c 20 73 63 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 3d 66 61 6c 73 65 3b .....bool.screenshot_mode=false;
35f80 00 00 00 18 20 20 20 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 3d 4e 55 4c 4c 3b 00 00 00 61 ........char.*filename=NULL;...a
35fa0 20 20 20 20 69 66 20 28 61 72 67 63 3d 3d 33 20 26 26 20 73 74 72 63 6d 70 28 61 72 67 76 5b 31 ....if.(argc==3.&&.strcmp(argv[1
35fc0 5d 2c 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 3d 3d 30 29 20 7b 20 73 63 72 65 65 6e 73 68 ],"--screenshot")==0).{.screensh
35fe0 6f 74 5f 6d 6f 64 65 3d 74 72 75 65 3b 20 66 69 6c 65 6e 61 6d 65 3d 61 72 67 76 5b 32 5d 3b 20 ot_mode=true;.filename=argv[2];.
36000 7d 00 00 00 0c 20 20 20 20 73 65 74 75 70 28 29 3b 00 00 00 6a 20 20 20 20 69 66 20 28 73 63 72 }........setup();...j....if.(scr
36020 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 29 20 7b 20 69 6e 74 20 72 3d 74 61 6b 65 5f 73 63 72 65 65 eenshot_mode).{.int.r=take_scree
36040 6e 73 68 6f 74 28 66 69 6c 65 6e 61 6d 65 29 3b 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 nshot(filename);.wl_display_dest
36060 72 6f 79 28 77 6d 2e 64 70 79 29 3b 20 72 65 74 75 72 6e 20 72 21 3d 30 3f 31 3a 30 3b 20 7d 00 roy(wm.dpy);.return.r!=0?1:0;.}.
36080 00 00 1b 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e 64 70 79 29 3b 00 00 .......wl_display_run(wm.dpy);..
360a0 00 13 20 20 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1f 20 20 20 20 77 6c 5f ......swc_finalize();........wl_
360c0 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 0d 20 20 20 20 display_destroy(wm.dpy);........
360e0 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 f5 18 00 00 00 f9 00 00 00 fa 00 00 00 00 return.0;....}..................
36100 00 00 00 00 f5 18 00 00 00 f8 00 00 00 fa 00 00 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 00 00 ......................5.........
36120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 ..............i.................
36140 00 00 00 00 00 00 00 10 00 00 00 00 00 00 f5 18 00 00 00 00 69 00 00 00 03 00 00 00 00 00 00 00 ....................i...........
36160 00 00 00 00 63 00 00 00 34 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0e 00 00 ....c...4.......................
36180 00 00 00 00 f5 18 00 00 00 00 cc 00 00 00 34 00 00 00 00 00 00 00 00 00 00 00 2c 00 00 00 00 00 ..............4...........,.....
361a0 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b3 06 00 00 00 00 00 00 f5 18 00 00 00 00 ................................
361c0 f7 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b2 24 00 00 00 00 00 00 .........................$......
361e0 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 7b 00 00 00 7d 00 00 00 00 ................5._....{...}....
36200 00 00 00 00 00 00 00 7c 00 00 00 f8 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 .......|........................
36220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
362a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
362c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
362e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
36360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 8f 3f 04 01 00 00 00 30 ......................i..?.....0
36380 00 f5 18 00 00 00 09 00 00 00 f8 00 00 00 f8 00 00 01 45 00 00 00 13 23 69 6e 63 6c 75 64 65 20 ..................E....#include.
363a0 3c 73 74 72 69 6e 67 2e 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 <string.h>....#include.<swc.h>..
363c0 00 13 23 69 6e 63 6c 75 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 ..#include.<unistd.h>....#includ
363e0 65 20 3c 77 61 79 6c 61 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 e.<wayland-server.h>....#include
36400 20 3c 77 61 79 6c 61 6e 64 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 .<wayland-util.h>...(#include.<x
36420 6b 62 63 6f 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 kbcommon/xkbcommon-keysyms.h>...
36440 00 00 00 00 30 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c ....0static.void.focus(struct.cl
36460 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 ient.*c,.bool.raise);...*static.
36480 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 void.on_screen_destroy(void.*dat
364a0 61 29 3b 00 00 00 3a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 a);...:static.void.on_screen_usa
364c0 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 ble_geometry_changed(void.*data)
364e0 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 ;...'static.void.on_win_destroy(
36500 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 void.*data);...'static.void.on_w
36520 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 in_entered(void.*data);....stati
36540 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f c.void.setup(void);....static.vo
36560 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 id.setup_binds(void);...Fstatic.
36580 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 void.set_floating(struct.client.
365a0 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 *c,.bool.floating,.bool.raise);.
365c0 00 00 23 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 ..#static.void.tile(struct.scree
365e0 6e 20 2a 73 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 n.*s);...(void.new_screen(struct
36600 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 3b 00 00 00 28 76 6f 69 64 20 6e 65 77 5f 77 .swc_screen.*scr);...(void.new_w
36620 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 3b 00 00 indow(struct.swc_window.*win);..
36640 00 2d 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 .-void.new_device(struct.libinpu
36660 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 3b 00 00 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 6e 65 t_device.*dev);...Kvoid.focus_ne
36680 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 xt(void.*data,.uint32_t.time,.ui
366a0 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 nt32_t.value,.uint32_t.state);..
366c0 00 4b 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 .Kvoid.focus_prev(void.*data,.ui
366e0 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e nt32_t.time,.uint32_t.value,.uin
36700 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 49 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 t32_t.state);...Ivoid.kill_sel(v
36720 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 oid.*data,.uint32_t.time,.uint32
36740 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4b 76 6f _t.value,.uint32_t.state);...Kvo
36760 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 id.mouse_move(void.*data,.uint32
36780 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f _t.time,.uint32_t.value,.uint32_
367a0 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 t.state);...Mvoid.mouse_resize(v
367c0 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 oid.*data,.uint32_t.time,.uint32
367e0 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 45 76 6f _t.value,.uint32_t.state);...Evo
36800 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d id.quit(void.*data,.uint32_t.tim
36820 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 e,.uint32_t.value,.uint32_t.stat
36840 65 29 3b 00 00 00 46 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 e);...Fvoid.spawn(void.*data,.ui
36860 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e nt32_t.time,.uint32_t.value,.uin
36880 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4d 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f t32_t.state);...Mvoid.toggle_flo
368a0 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 at(void.*data,.uint32_t.time,.ui
368c0 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 nt32_t.value,.uint32_t.state);..
368e0 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 .Cvoid.toggle_float_global(void.
36900 2a 64 61 74 61 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 76 *data,.uint32_t.time,.uint32_t.v
36920 61 6c 75 65 2c 00 00 00 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 alue,...).......................
36940 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 ..uint32_t.state);...Lvoid.maste
36960 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 r_next(void.*data,.uint32_t.time
36980 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 ,.uint32_t.value,.uint32_t.state
369a0 29 3b 00 00 00 4c 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 );...Lvoid.master_prev(void.*dat
369c0 61 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 76 61 6c 75 65 a,.uint32_t.time,.uint32_t.value
369e0 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 3b 00 00 00 4e 76 6f 69 64 20 6d 61 73 74 65 ,.uint32_t.state);...Nvoid.maste
36a00 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 r_resize(void.*data,.uint32_t.ti
36a20 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 me,.uint32_t.value,.uint32_t.sta
36a40 74 65 29 3b 00 00 00 00 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 21 73 74 61 te);........struct.wm.wm;...!sta
36a60 74 69 63 20 75 69 6e 74 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 tic.uint32_t.master_width.=.0;..
36a80 00 00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 .....,struct.swc_window_handler.
36aa0 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 window_handler.=.{.........destr
36ac0 6f 79 20 3d 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 oy.=.on_win_destroy,.........ent
36ae0 65 72 65 64 20 3d 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 ered.=.on_win_entered,....};....
36b00 00 00 00 2c 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 ...,struct.swc_screen_handler.sc
36b20 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 reen_handler.=.{...!.....destroy
36b40 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 .=.on_screen_destroy,...A.....us
36b60 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 able_geometry_changed.=.on_scree
36b80 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b n_usable_geometry_changed,....};
36ba0 00 00 00 00 00 00 00 24 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 .......$const.struct.swc_manager
36bc0 20 6d 61 6e 61 67 65 72 20 3d 20 7b 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 .manager.=.{.........new_screen.
36be0 3d 20 6e 65 77 5f 73 63 72 65 65 6e 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 =.new_screen,.........new_window
36c00 20 3d 20 6e 65 77 5f 77 69 6e 64 6f 77 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 .=.new_window,.........new_devic
36c20 65 20 3d 20 6e 65 77 5f 64 65 76 69 63 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 49 73 74 61 e.=.new_device,....};.......Ista
36c40 74 69 63 20 69 6e 74 20 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 tic.int.write_png(const.char.*fi
36c60 6c 65 6e 61 6d 65 2c 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c 20 69 6e 74 20 lename,.unsigned.char.*buf,.int.
36c80 77 69 64 74 68 2c 00 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 width,.........................i
36ca0 6e 74 20 68 65 69 67 68 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b 00 00 00 23 20 20 46 49 nt.height,.int.stride).{...#..FI
36cc0 4c 45 20 2a 66 70 20 3d 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 20 22 77 62 22 29 3b 00 LE.*fp.=.fopen(filename,."wb");.
36ce0 00 00 0a 20 20 69 66 20 28 21 66 70 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 .....if.(!fp)........return.-1;.
36d00 00 00 17 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f 70 74 72 20 3d 00 00 00 47 20 20 .....png_structp.png_ptr.=...G..
36d20 20 20 20 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 50 4e 47 5f ....png_create_write_struct(PNG_
36d40 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 2c 20 4e LIBPNG_VER_STRING,.NULL,.NULL,.N
36d60 55 4c 4c 29 3b 00 00 00 11 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 20 7b 00 00 00 0f 20 20 ULL);......if.(!png_ptr).{......
36d80 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 ..fclose(fp);........return.-2;.
36da0 00 00 03 20 20 7d 00 00 00 37 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 3d .....}...7..png_infop.info_ptr.=
36dc0 20 70 6e 67 5f 63 72 65 61 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 29 .png_create_info_struct(png_ptr)
36de0 3b 00 00 00 12 20 20 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 00 00 00 2d 20 20 20 20 70 ;......if.(!info_ptr).{...-....p
36e00 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 ng_destroy_write_struct(&png_ptr
36e20 2c 20 4e 55 4c 4c 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 ,.NULL);........fclose(fp);.....
36e40 20 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 24 20 20 69 66 20 28 73 65 ...return.-3;......}...$..if.(se
36e60 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 7b 00 00 00 32 tjmp(png_jmpbuf(png_ptr))).{...2
36e80 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e ....png_destroy_write_struct(&pn
36ea0 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 g_ptr,.&info_ptr);........fclose
36ec0 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 03 20 20 7d 00 00 (fp);........return.-4;......}..
36ee0 00 1b 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 2c 20 66 70 29 3b 00 00 00 ....png_init_io(png_ptr,.fp);...
36f00 48 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 H..png_set_IHDR(png_ptr,.info_pt
36f20 72 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 38 2c 20 50 4e 47 5f 43 4f 4c 4f 52 5f 54 r,.width,.height,.8,.PNG_COLOR_T
36f40 59 50 45 5f 52 47 42 41 2c 00 00 00 3d 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 5f YPE_RGBA,...=...............PNG_
36f60 49 4e 54 45 52 4c 41 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f INTERLACE_NONE,.PNG_COMPRESSION_
36f80 54 59 50 45 5f 42 41 53 45 2c 00 00 00 25 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 TYPE_BASE,...%...............PNG
36fa0 5f 46 49 4c 54 45 52 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 24 20 20 70 6e 67 5f 77 72 69 _FILTER_TYPE_BASE);...$..png_wri
36fc0 74 65 5f 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 22 20 te_info(png_ptr,.info_ptr);...".
36fe0 20 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 74 3b 20 79 2b 2b .for.(int.y.=.0;.y.<.height;.y++
37000 29 00 00 00 2d 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 5f 70 74 72 2c 20 )...-....png_write_row(png_ptr,.
37020 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 23 20 20 70 6e 67 5f 77 72 69 74 buf.+.y.*.stride);...#..png_writ
37040 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 30 20 20 70 e_end(png_ptr,.info_ptr);...0..p
37060 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 ng_destroy_write_struct(&png_ptr
37080 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 ,.&info_ptr);......fclose(fp);..
370a0 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 32 73 74 61 74 69 63 ....return.0;....}.......2static
370c0 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 20 63 68 61 72 20 .int.take_screenshot(const.char.
370e0 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 *filename).{......if.(!wm.sel_sc
37100 72 65 65 6e 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 23 20 20 73 74 72 reen)........return.-1;...#..str
37120 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 uct.screen.*s.=.wm.sel_screen;..
37140 00 2c 20 20 69 6e 74 20 77 69 64 74 68 20 3d 20 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 .,..int.width.=.s->scr->usable_g
37160 65 6f 6d 65 74 72 79 2e 77 69 64 74 68 3b 00 00 00 2e 20 20 69 6e 74 20 68 65 69 67 68 74 20 3d eometry.width;......int.height.=
37180 20 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 2e 68 65 69 67 68 74 3b .s->scr->usable_geometry.height;
371a0 00 00 00 19 20 20 69 6e 74 20 73 74 72 69 64 65 20 3d 20 77 69 64 74 68 20 2a 20 34 3b 00 00 00 ......int.stride.=.width.*.4;...
371c0 2f 20 20 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 20 3d 20 6d 61 6c 6c 6f 63 28 73 /..unsigned.char.*buf.=.malloc(s
371e0 74 72 69 64 65 20 2a 20 68 65 69 67 68 74 29 3b 00 00 00 0b 20 20 69 66 20 28 21 62 75 66 29 00 tride.*.height);......if.(!buf).
37200 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 32 3b 00 00 00 31 20 20 69 66 20 28 73 77 63 5f 73 .......return.-2;...1..if.(swc_s
37220 63 72 65 65 6e 5f 63 6f 70 79 5f 70 69 78 65 6c 73 28 73 2d 3e 73 63 72 2c 20 62 75 66 29 20 21 creen_copy_pixels(s->scr,.buf).!
37240 3d 20 30 29 20 7b 00 00 00 0e 20 20 20 20 66 72 65 65 28 62 75 66 29 3b 00 00 00 0e 20 20 20 20 =.0).{........free(buf);........
37260 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 3c 20 20 69 6e 74 20 72 65 74 20 3d return.-3;......}...<..int.ret.=
37280 20 77 72 69 74 65 5f 70 6e 67 28 66 69 6c 65 6e 61 6d 65 2c 20 62 75 66 2c 20 77 69 64 74 68 2c .write_png(filename,.buf,.width,
372a0 20 68 65 69 67 68 74 2c 20 73 74 72 69 64 65 29 3b 00 00 00 0c 20 20 66 72 65 65 28 62 75 66 29 .height,.stride);......free(buf)
372c0 3b 00 00 00 0d 20 20 72 65 74 75 72 6e 20 72 65 74 3b 00 00 00 01 7d 00 00 00 00 00 00 00 31 73 ;......return.ret;....}.......1s
372e0 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a tatic.void.focus(struct.client.*
37300 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c c,.bool.raise).{......if.(wm.sel
37320 5f 63 6c 69 65 6e 74 29 00 00 00 44 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 _client)...D....swc_window_set_b
37340 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f order(wm.sel_client->win,.cfg.bo
37360 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 00 00 00 3b 20 20 20 20 20 20 20 20 20 20 20 20 rder_col_normal,...;............
37380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 ..............cfg.border_width,.
373a0 30 78 30 30 30 30 30 30 46 46 2c 20 30 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 4a 20 0x000000FF,.0);......if.(c)...J.
373c0 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c ...swc_window_set_border(c->win,
373e0 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 .cfg.border_col_active,.cfg.bord
37400 65 72 5f 77 69 64 74 68 2c 00 00 00 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er_width,...)...................
37420 20 20 20 20 20 20 20 30 78 30 30 30 30 30 30 46 46 2c 20 30 29 3b 00 00 00 20 20 20 69 66 20 28 .......0x000000FF,.0);......if.(
37440 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 raise.&&.c.&&.c->floating)......
37460 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 ..set_floating(c,.true,.true);..
37480 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 .&..swc_window_focus(c.?.c->win.
374a0 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b :.NULL);......wm.sel_client.=.c;
374c0 00 00 00 01 7d 00 00 00 00 00 00 00 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 ....}.......+static.void.on_scre
374e0 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 en_destroy(void.*data).{......st
37500 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 20 28 ruct.screen.*s.=.data;......if.(
37520 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f !s)........return;......wl_list_
37540 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 remove(&s->link);......if.(wm.se
37560 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c l_screen.==.s).{...#....if.(wl_l
37580 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 ist_empty(&wm.screens)).........
375a0 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c .wm.sel_screen.=.NULL;........el
375c0 73 65 00 00 00 4c 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 se...L......wm.sel_screen.=.wl_c
375e0 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e ontainer_of(wm.screens.next,.wm.
37600 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 sel_screen,.link);......}......f
37620 72 65 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 49 73 74 61 74 69 63 20 76 6f 69 64 20 ree(s);....}.......Istatic.void.
37640 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 on_screen_usable_geometry_change
37660 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 20 74 69 6c 65 28 64 61 74 61 29 3b 20 7d 00 00 00 d(void.*data).{.tile(data);.}...
37680 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 ....(static.void.on_win_destroy(
376a0 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 void.*data).{......struct.client
376c0 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 .*c.=.data;......if.(!c)........
376e0 72 65 74 75 72 6e 3b 00 00 00 29 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 return;...)..if.(wm.grab.active.
37700 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 &&.wm.grab.c.==.c).{........wm.g
37720 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 rab.active.=.false;........wm.gr
37740 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e ab.c.=.NULL;......}......if.(c->
37760 66 6c 6f 61 74 69 6e 67 29 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 floating)...#....wl_list_remove(
37780 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 &c->float_link);......else...#..
377a0 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 ..wl_list_remove(&c->tiled_link)
377c0 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b ;......if.(wm.sel_client.==.c).{
377e0 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 ........wm.sel_client.=.NULL;...
37800 2e 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 20 3d 20 66 69 72 73 74 .....struct.client.*next.=.first
37820 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 6e 65 78 74 _float(c->scr);........if.(!next
37840 29 00 00 00 21 20 20 20 20 20 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d )...!......next.=.first_tiled(c-
37860 3e 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b >scr);........focus(next,.true);
37880 00 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 ......}......tile(c->scr);......
378a0 66 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 free(c);....}.......(static.void
378c0 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 .on_win_entered(void.*data).{...
378e0 15 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 20 20 72 65 ...if.(wm.grab.active)........re
37900 74 75 72 6e 3b 00 00 00 14 20 20 66 6f 63 75 73 28 64 61 74 61 2c 20 74 72 75 65 29 3b 00 00 00 turn;......focus(data,.true);...
37920 01 7d 00 00 00 00 00 00 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 .}........static.void.setup(void
37940 29 20 7b 00 00 00 1f 20 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 ).{......wm.dpy.=.wl_display_cre
37960 61 74 65 28 29 3b 00 00 00 0e 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 17 20 20 20 20 ate();......if.(!wm.dpy)........
37980 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 exit(EXIT_FAILURE);......wl_list
379a0 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 _init(&wm.screens);......wl_list
379c0 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 _init(&wm.tiled);......wl_list_i
379e0 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 nit(&wm.floating);......wm.sel_c
37a00 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e lient.=.NULL;......wm.sel_screen
37a20 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 .=.NULL;......wm.grab.active.=.f
37a40 61 6c 73 65 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 alse;......wm.grab.resize.=.fals
37a60 65 3b 00 00 00 13 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 e;......wm.grab.c.=.NULL;...1..w
37a80 6d 2e 65 76 5f 6c 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 m.ev_loop.=.wl_display_get_event
37aa0 5f 6c 6f 6f 70 28 77 6d 2e 64 70 79 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 _loop(wm.dpy);...4..if.(!swc_ini
37ac0 74 69 61 6c 69 7a 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e tialize(wm.dpy,.wm.ev_loop,.&man
37ae0 61 67 65 72 29 29 00 00 00 17 20 20 20 20 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 ager))........exit(EXIT_FAILURE)
37b00 3b 00 00 00 10 20 20 73 65 74 75 70 5f 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 ;......setup_binds();...8..const
37b20 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 .char.*sock.=.wl_display_add_soc
37b40 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 70 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f 63 6b ket_auto(wm.dpy);......if.(!sock
37b60 29 00 00 00 17 20 20 20 20 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 25 )........exit(EXIT_FAILURE);...%
37b80 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b ..setenv("WAYLAND_DISPLAY",.sock
37ba0 2c 20 31 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 ,.1);......signal(SIGINT,.sig_ha
37bc0 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 ndler);......signal(SIGTERM,.sig
37be0 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 _handler);......signal(SIGQUIT,.
37c00 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 sig_handler);....}........static
37c20 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 41 20 20 66 .void.setup_binds(void).{...A..f
37c40 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 6f 66 28 62 69 6e or.(size_t.i.=.0;.i.<.sizeof(bin
37c60 64 73 29 20 2f 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 ds)./.sizeof(binds[0]);.i++).{..
37c80 00 25 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 .%....const.struct.bind.*b.=.&bi
37ca0 6e 64 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 nds[i];...G....swc_add_binding(b
37cc0 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c ->type,.b->mods,.b->ksym,.b->fn,
37ce0 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 .(void.*)&b->arg);......}....}..
37d00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 .....Gstatic.void.set_floating(s
37d20 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 truct.client.*c,.bool.floating,.
37d40 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 bool.raise).{......if.(!c)......
37d60 20 20 72 65 74 75 72 6e 3b 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 ..return;......if.(floating).{..
37d80 00 17 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 ......if.(!c->floating).{.......
37da0 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 ...c->floating.=.true;...%......
37dc0 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 wl_list_remove(&c->tiled_link);.
37de0 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 ..3......wl_list_insert(&wm.floa
37e00 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 ting,.&c->float_link);........}.
37e20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 else.if.(raise).{...%......wl_li
37e40 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 st_remove(&c->float_link);...3..
37e60 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c ....wl_list_insert(&wm.floating,
37e80 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 .&c->float_link);........}...#..
37ea0 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 ..swc_window_set_stacked(c->win)
37ec0 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c ;......}.else.{........if.(c->fl
37ee0 6f 61 74 69 6e 67 29 20 7b 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d oating).{..........c->floating.=
37f00 20 66 61 6c 73 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 .false;...%......wl_list_remove(
37f20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 &c->float_link);...0......wl_lis
37f40 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 t_insert(&wm.tiled,.&c->tiled_li
37f60 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f nk);........}...!....swc_window_
37f80 73 65 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 set_tiled(c->win);......}....}..
37fa0 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 .....$static.void.tile(struct.sc
37fc0 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 reen.*s).{......if.(!s)........r
37fe0 65 74 75 72 6e 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 eturn;......struct.client.*c;...
38000 1c 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 ...struct.swc_rectangle.geom;...
38020 3c 20 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f <..struct.swc_rectangle.*scr_geo
38040 6d 20 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 m.=.&s->scr->usable_geometry;...
38060 31 20 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 1..int32_t.out_gaps.=.cfg.gaps.+
38080 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 34 20 20 69 6e 74 33 32 5f 74 20 .cfg.border_width;...4..int32_t.
380a0 69 6e 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f in_gaps.=.cfg.gaps.+.cfg.border_
380c0 77 69 64 74 68 20 2a 20 32 3b 00 00 00 25 20 20 69 6e 74 33 32 5f 74 20 78 20 3d 20 73 63 72 5f width.*.2;...%..int32_t.x.=.scr_
380e0 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 25 20 20 69 6e 74 33 32 5f 74 geom->x.+.out_gaps;...%..int32_t
38100 20 79 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 2e .y.=.scr_geom->y.+.out_gaps;....
38120 20 20 75 69 6e 74 33 32 5f 74 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d ..uint32_t.w.=.scr_geom->width.-
38140 20 32 20 2a 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 2f 20 20 75 69 6e 74 33 32 5f 74 20 68 20 3d .2.*.out_gaps;.../..uint32_t.h.=
38160 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 32 20 2a 20 6f 75 74 5f 67 61 70 73 .scr_geom->height.-.2.*.out_gaps
38180 3b 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 ;......size_t.n.=.0;...E..wl_lis
381a0 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c t_for_each(c,.&wm.tiled,.tiled_l
381c0 69 6e 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 ink).if.(is_tiled(c,.s)).n++;...
381e0 0d 20 20 69 66 20 28 6e 20 3d 3d 20 30 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 ...if.(n.==.0)........return;...
38200 0f 20 20 69 66 20 28 6e 20 3d 3d 20 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f ...if.(n.==.1).{...0....wl_list_
38220 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e for_each(c,.&wm.tiled,.tiled_lin
38240 6b 29 20 7b 00 00 00 1a 20 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 k).{..........if.(!is_tiled(c,.s
38260 29 29 00 00 00 11 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 20 20 20 20 20 ))............continue;.........
38280 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 .geom.x.=.x;..........geom.y.=.y
382a0 3b 00 00 00 15 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 16 20 20 ;..........geom.width.=.w;......
382c0 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 ....geom.height.=.h;...-......sw
382e0 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 c_window_set_geometry(c->win,.&g
38300 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 eom);..........return;........}.
38320 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 .....}......size_t.i.=.0;......w
38340 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 l_list_for_each(c,.&wm.tiled,.ti
38360 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 18 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 led_link).{........if.(!is_tiled
38380 28 63 2c 20 73 29 29 00 00 00 0f 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 (c,.s))..........continue;......
383a0 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 ..if.(master_width.==.0)...>....
383c0 20 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 ..master_width.=.((w.-.in_gaps).
383e0 2a 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 *.cfg.master_width)./.100;......
38400 20 20 69 66 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 ..if.(i.==.0).{..........geom.x.
38420 3d 20 78 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 20 =.x;..........geom.y.=.y;.......
38440 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 ...geom.width.=.master_width;...
38460 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d .......geom.height.=.h;........}
38480 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e .else.{..........uint32_t.stackn
384a0 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 .=.n.-.1;..........uint32_t.idx.
384c0 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b =.i.-.1;...D......uint32_t.stack
384e0 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e _height.=.(h.-.in_gaps.*.(stackn
38500 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 .-.1))./.stackn;...*......geom.x
38520 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 .=.x.+.master_width.+.in_gaps;..
38540 00 32 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 20 2b 20 69 64 78 20 2a 20 28 73 74 61 63 .2......geom.y.=.y.+.idx.*.(stac
38560 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e 5f 67 61 70 73 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 k_height.+.in_gaps);..........ge
38580 6f 6d 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e om.width.=.w.-.master_width.-.in
385a0 5f 67 61 70 73 3b 00 00 00 21 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 _gaps;...!......geom.height.=.st
385c0 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f ack_height;........}...+....swc_
385e0 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f window_set_geometry(c->win,.&geo
38600 6d 29 3b 00 00 00 08 20 20 20 20 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 m);........i++;......}....}.....
38620 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 ..)void.new_screen(struct.swc_sc
38640 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 reen.*scr).{...(..struct.screen.
38660 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 0f 20 20 73 2d *s.=.malloc(sizeof(*s));......s-
38680 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 00 20 20 20 73 2d 3e 78 20 3d 20 73 2d 3e 79 20 3d 20 73 >scr.=.scr;......s->x.=.s->y.=.s
386a0 2d 3e 77 20 3d 20 73 2d 3e 68 20 3d 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 ->w.=.s->h.=.0;...(..wl_list_ins
386c0 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 15 20 ert(&wm.screens,.&s->link);.....
386e0 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 00 00 00 16 20 20 20 20 77 6d 2e 73 .if.(!wm.sel_screen)........wm.s
38700 65 6c 5f 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 el_screen.=.s;...2..swc_screen_s
38720 65 74 5f 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c et_handler(scr,.&screen_handler,
38740 20 73 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 .s);....}.......)void.new_window
38760 28 73 74 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 (struct.swc_window.*win).{...(..
38780 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 struct.client.*c.=.malloc(sizeof
387a0 28 2a 63 29 29 3b 00 00 00 0f 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 (*c));......c->win.=.win;......c
387c0 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d ->scr.=.wm.sel_screen;......c->m
387e0 61 70 70 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 apped.=.false;...#..c->floating.
38800 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 =.wm.global_floating;......c->fu
38820 6c 6c 73 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 llscreen.=.false;......c->ws.=.f
38840 61 6c 73 65 3b 00 00 00 14 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 alse;......if.(c->floating).{...
38860 31 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 1....wl_list_insert(&wm.floating
38880 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 ,.&c->float_link);...!....wl_lis
388a0 74 5f 69 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 t_init(&c->tiled_link);...4....s
388c0 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 wc_window_set_handler(win,.&wind
388e0 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f ow_handler,.c);........swc_windo
38900 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 w_set_stacked(win);......}.else.
38920 7b 00 00 00 2e 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 {........wl_list_insert(&wm.tile
38940 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 d,.&c->tiled_link);...!....wl_li
38960 73 74 5f 69 6e 69 74 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 st_init(&c->float_link);...4....
38980 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e swc_window_set_handler(win,.&win
389a0 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 dow_handler,.c);........swc_wind
389c0 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 ow_set_tiled(win);......}......s
389e0 77 63 5f 77 69 6e 64 6f 77 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 wc_window_show(win);......focus(
38a00 63 2c 20 74 72 75 65 29 3b 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 c,.true);......tile(wm.sel_scree
38a20 6e 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 n);....}.......;void.new_device(
38a40 73 74 72 75 63 74 20 6c 69 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 struct.libinput_device.*dev).{.(
38a60 76 6f 69 64 29 64 65 76 3b 20 7d 00 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 void)dev;.}.......!int.main(int.
38a80 61 72 67 63 2c 20 63 68 61 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 1f 20 20 62 6f 6f 6c 20 73 argc,.char.**argv).{......bool.s
38aa0 63 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 18 20 20 63 68 61 creenshot_mode.=.false;......cha
38ac0 72 20 2a 66 69 6c 65 6e 61 6d 65 20 3d 20 4e 55 4c 4c 3b 00 00 00 3a 20 20 69 66 20 28 61 72 67 r.*filename.=.NULL;...:..if.(arg
38ae0 63 20 3d 3d 20 33 20 26 26 20 73 74 72 63 6d 70 28 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 72 c.==.3.&&.strcmp(argv[1],."--scr
38b00 65 65 6e 73 68 6f 74 22 29 20 3d 3d 20 30 29 20 7b 00 00 00 1b 20 20 20 20 73 63 72 65 65 6e 73 eenshot").==.0).{........screens
38b20 68 6f 74 5f 6d 6f 64 65 20 3d 20 74 72 75 65 3b 00 00 00 17 20 20 20 20 66 69 6c 65 6e 61 6d 65 hot_mode.=.true;........filename
38b40 20 3d 20 61 72 67 76 5b 32 5d 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 73 65 74 75 70 28 29 3b .=.argv[2];......}......setup();
38b60 00 00 00 18 20 20 69 66 20 28 73 63 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 29 20 7b 00 00 00 26 ......if.(screenshot_mode).{...&
38b80 20 20 20 20 69 6e 74 20 72 20 3d 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 66 69 6c 65 ....int.r.=.take_screenshot(file
38ba0 6e 61 6d 65 29 3b 00 00 00 1f 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 name);........wl_display_destroy
38bc0 28 77 6d 2e 64 70 79 29 3b 00 00 00 1a 20 20 20 20 72 65 74 75 72 6e 20 72 20 21 3d 20 30 20 3f (wm.dpy);........return.r.!=.0.?
38be0 20 31 20 3a 20 30 3b 00 00 00 03 20 20 7d 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 .1.:.0;......}......wl_display_r
38c00 75 6e 28 77 6d 2e 64 70 79 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b un(wm.dpy);......swc_finalize();
38c20 00 00 00 1d 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 ......wl_display_destroy(wm.dpy)
38c40 3b 00 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 35 81 f5 18 00 00 00 00 09 00 00 00 0b 00 00 00 ;......return.0;5...............
38c60 ed 00 00 00 02 00 00 00 44 01 00 00 00 00 00 00 bc 00 00 00 00 00 00 00 e9 23 00 00 00 00 00 00 ........D................#......
38c80 d7 24 00 00 00 00 00 00 35 81 5f d0 00 00 00 7c 00 00 00 7f 00 00 00 00 00 00 00 00 00 00 00 7d .$......5._....|...............}
38ca0 00 00 00 0f 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 ................................
38cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 91 24 04 01 00 00 00 31 00 f5 18 00 00 00 0f 00 ..............i..$.....1........
38e20 00 00 10 00 00 01 4f 00 00 00 01 00 00 00 00 f5 18 00 00 00 0f 00 00 00 11 00 00 01 50 00 00 00 ......O.....................P...
38e40 02 00 00 00 00 00 00 00 00 f5 18 00 00 00 11 00 00 00 12 00 00 01 51 00 00 00 00 f5 18 00 00 00 ......................Q.........
38e60 11 00 00 00 12 00 00 01 51 00 00 00 00 f5 18 00 00 00 10 00 00 00 12 00 00 01 51 00 00 00 01 00 ........Q.................Q.....
38e80 00 00 47 69 6e 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 63 6f 70 79 5f 70 69 78 65 6c 73 28 73 74 ..Gint.swc_screen_copy_pixels(st
38ea0 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 65 65 6e 2c 20 75 69 6e 74 38 5f 74 ruct.swc_screen.*screen,.uint8_t
38ec0 20 2a 70 69 78 65 6c 73 29 3b 35 81 f5 18 00 00 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 .*pixels);5.....................
38ee0 00 00 01 00 00 00 00 00 00 00 49 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 ..........I.....................
38f00 00 00 f5 18 00 00 00 00 0f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................................
38f20 49 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 10 00 I...............................
38f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 47 00 00 00 4a 01 00 00 00 00 00 00 00 00 ..................G...J.........
38f60 00 00 00 00 00 00 47 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 7d 00 00 00 80 00 00 00 7e 00 00 ......G.......5._....}.......~..
38f80 00 00 00 00 00 7f 00 00 01 51 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 .........Q......................
38fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
38fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
390a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
390c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
390e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 91 cb 04 01 00 00 00 00 00 f5 ....................i...........
39100 18 00 00 01 51 00 00 01 52 00 00 00 00 00 00 00 01 00 00 00 00 f5 18 00 00 01 51 00 00 01 53 00 ....Q...R.................Q...S.
39120 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 f5 18 00 00 01 53 00 00 01 54 00 00 00 00 00 00 00 ....................S...T.......
39140 00 f5 18 00 00 01 52 00 00 01 54 00 00 00 00 00 00 00 09 00 00 00 47 76 6f 69 64 20 73 70 61 77 ......R...T...........Gvoid.spaw
39160 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e n(void.*data,.uint32_t.time,.uin
39180 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 t32_t.value,.uint32_t.state).{..
391a0 00 1c 20 20 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 2a 63 6d 64 20 3d 20 64 61 74 61 3b 00 00 ......const.char.**cmd.=.data;..
391c0 00 16 20 20 20 20 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 7b 00 00 00 11 20 20 20 20 ......if.(fork().==.0).{........
391e0 20 20 20 20 73 65 74 73 69 64 28 29 3b 00 00 00 25 20 20 20 20 20 20 20 20 65 78 65 63 76 70 28 ....setsid();...%........execvp(
39200 63 6d 64 5b 30 5d 2c 20 28 63 68 61 72 20 2a 2a 29 63 6d 64 29 3b 00 00 00 37 20 20 20 20 20 20 cmd[0],.(char.**)cmd);...7......
39220 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 22 66 61 69 6c 65 64 20 74 6f 20 65 78 65 ..fprintf(stderr,."failed.to.exe
39240 63 20 25 73 5c 6e 22 2c 20 63 6d 64 5b 30 5d 29 3b 00 00 00 1b 20 20 20 20 20 20 20 20 65 78 69 c.%s\n",.cmd[0]);............exi
39260 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d f5 18 t(EXIT_FAILURE);........}....}..
39280 00 00 01 5b 00 00 01 5c 00 00 00 00 00 00 00 00 f5 18 00 00 01 5a 00 00 01 5c 00 00 00 00 00 00 ...[...\.............Z...\......
392a0 00 01 00 00 00 01 7d 35 81 f5 18 00 00 00 00 51 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 ......}5.......Q................
392c0 00 00 00 00 00 00 00 ea 25 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 ........%.......................
392e0 18 00 00 00 00 51 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ea 25 00 .....Q........................%.
39300 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 f5 18 00 00 00 00 52 01 00 00 00 ...........................R....
39320 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 01 00 00 00 eb 25 00 00 00 00 00 00 00 00 00 00 00 ....................%...........
39340 00 00 00 0f 01 00 00 00 00 00 00 35 81 5f d0 00 00 00 7f 00 00 00 81 00 00 00 00 00 00 00 00 00 ...........5._..................
39360 00 00 80 00 00 01 5b 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 ......[.........................
39380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
393a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
393c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
393e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
394a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
394c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 91 cc 04 01 00 00 00 32 00 f5 18 00 00 .................i........2.....
394e0 01 53 00 00 01 5b 00 00 01 5b 00 00 00 07 00 00 00 1a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a .S...[...[..........const.char.*
39500 2a 63 6d 64 20 3d 20 64 61 74 61 3b 00 00 00 14 20 20 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 *cmd.=.data;......if.(fork().==.
39520 30 29 20 7b 00 00 00 0d 20 20 20 20 73 65 74 73 69 64 28 29 3b 00 00 00 21 20 20 20 20 65 78 65 0).{........setsid();...!....exe
39540 63 76 70 28 63 6d 64 5b 30 5d 2c 20 28 63 68 61 72 20 2a 2a 29 63 6d 64 29 3b 00 00 00 33 20 20 cvp(cmd[0],.(char.**)cmd);...3..
39560 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c 20 22 66 61 69 6c 65 64 20 74 6f 20 65 78 65 ..fprintf(stderr,."failed.to.exe
39580 63 20 25 73 5c 6e 22 2c 20 63 6d 64 5b 30 5d 29 3b 00 00 00 17 20 20 20 20 65 78 69 74 28 45 58 c.%s\n",.cmd[0]);........exit(EX
395a0 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 03 20 20 7d 35 81 f5 18 00 00 00 00 53 01 00 00 02 IT_FAILURE);......}5.......S....
395c0 00 00 00 06 00 00 00 02 00 00 00 06 00 00 00 00 00 00 00 35 26 00 00 00 00 00 00 c0 00 00 00 00 ...................5&...........
395e0 00 00 00 aa 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 80 00 00 00 82 00 00 00 00 00 00 00 00 00 ...........5._..................
39600 00 00 81 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 ................................
39620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
396a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
396c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
396e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 91 ff 04 01 00 00 00 00 00 f5 18 00 00 .................i..............
39780 00 00 00 00 01 5c 00 00 00 00 00 00 00 01 00 00 00 00 35 81 f5 18 00 00 00 00 00 00 00 00 00 00 .....\............5.............
397a0 00 00 5b 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e5 26 00 00 00 00 ..[........................&....
397c0 00 00 01 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 81 00 00 00 83 00 00 00 00 00 00 00 00 00 00 ..........5._...................
397e0 00 82 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 00 00 00 00 ................................
39800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
398a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
398c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
398e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
39940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 91 ff 04 01 00 00 00 00 00 f5 18 00 00 00 ................i...............
39960 01 00 00 00 02 00 00 00 00 00 00 00 00 f5 18 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 81 00 ................................
39980 00 00 17 23 69 6e 63 6c 75 64 65 20 22 63 6f 6d 70 6f 73 69 74 6f 72 2e 68 22 00 00 00 13 23 69 ...#include."compositor.h"....#i
399a0 6e 63 6c 75 64 65 20 22 63 6f 6e 66 69 67 2e 68 22 00 00 00 12 23 69 6e 63 6c 75 64 65 20 22 74 nclude."config.h"....#include."t
399c0 79 70 65 73 2e 68 22 00 00 00 11 23 69 6e 63 6c 75 64 65 20 22 75 74 69 6c 2e 68 22 00 00 00 10 ypes.h"....#include."util.h"....
399e0 23 69 6e 63 6c 75 64 65 20 3c 70 6e 67 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 65 #include.<png.h>....#include.<se
39a00 74 6a 6d 70 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 64 65 20 3c 73 69 67 6e 61 6c 2e 68 3e 00 00 tjmp.h>....#include.<signal.h>..
39a20 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 75 64 65 ..#include.<stdio.h>....#include
39a40 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 73 74 72 69 6e 67 2e .<stdlib.h>....#include.<string.
39a60 68 3e 00 00 00 10 23 69 6e 63 6c 75 64 65 20 3c 73 77 63 2e 68 3e 00 00 00 13 23 69 6e 63 6c 75 h>....#include.<swc.h>....#inclu
39a80 64 65 20 3c 75 6e 69 73 74 64 2e 68 3e 00 00 00 1b 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 de.<unistd.h>....#include.<wayla
39aa0 6e 64 2d 73 65 72 76 65 72 2e 68 3e 00 00 00 19 23 69 6e 63 6c 75 64 65 20 3c 77 61 79 6c 61 6e nd-server.h>....#include.<waylan
39ac0 64 2d 75 74 69 6c 2e 68 3e 00 00 00 28 23 69 6e 63 6c 75 64 65 20 3c 78 6b 62 63 6f 6d 6d 6f 6e d-util.h>...(#include.<xkbcommon
39ae0 2f 78 6b 62 63 6f 6d 6d 6f 6e 2d 6b 65 79 73 79 6d 73 2e 68 3e 00 00 00 00 00 00 00 4b 2f 2a 20 /xkbcommon-keysyms.h>.......K/*.
39b00 50 72 6f 74 6f 74 79 70 65 20 61 64 64 65 64 20 74 6f 20 73 61 74 69 73 66 79 20 63 6f 6d 70 69 Prototype.added.to.satisfy.compi
39b20 6c 65 72 3b 20 6c 6f 67 69 63 20 73 74 75 62 62 65 64 20 69 6e 20 74 61 6b 65 5f 73 63 72 65 65 ler;.logic.stubbed.in.take_scree
39b40 6e 73 68 6f 74 20 2a 2f 00 00 00 47 69 6e 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 63 6f 70 79 5f nshot.*/...Gint.swc_screen_copy_
39b60 70 69 78 65 6c 73 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 65 65 6e pixels(struct.swc_screen.*screen
39b80 2c 20 75 69 6e 74 38 5f 74 20 2a 70 69 78 65 6c 73 29 3b 00 00 00 00 00 00 00 30 73 74 61 74 69 ,.uint8_t.*pixels);.......0stati
39ba0 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 c.void.focus(struct.client.*c,.b
39bc0 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 2a 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 ool.raise);...*static.void.on_sc
39be0 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 3a 73 74 61 reen_destroy(void.*data);...:sta
39c00 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 tic.void.on_screen_usable_geomet
39c20 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 27 73 74 61 74 69 ry_changed(void.*data);...'stati
39c40 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 c.void.on_win_destroy(void.*data
39c60 29 3b 00 00 00 27 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 );...'static.void.on_win_entered
39c80 28 76 6f 69 64 20 2a 64 61 74 61 29 3b 00 00 00 18 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 (void.*data);....static.void.set
39ca0 75 70 28 76 6f 69 64 29 3b 00 00 00 1e 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 up(void);....static.void.setup_b
39cc0 69 6e 64 73 28 76 6f 69 64 29 3b 00 00 00 46 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 5f 66 inds(void);...Fstatic.void.set_f
39ce0 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 66 loating(struct.client.*c,.bool.f
39d00 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 3b 00 00 00 23 73 74 61 74 69 63 20 loating,.bool.raise);...#static.
39d20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 3b 00 00 00 00 void.tile(struct.screen.*s);....
39d40 00 00 00 0d 73 74 72 75 63 74 20 77 6d 20 77 6d 3b 00 00 00 21 73 74 61 74 69 63 20 75 69 6e 74 ....struct.wm.wm;...!static.uint
39d60 33 32 5f 74 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 30 3b 00 00 00 00 00 00 00 2c 73 74 32_t.master_width.=.0;.......,st
39d80 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 20 77 69 6e 64 6f 77 5f 68 ruct.swc_window_handler.window_h
39da0 61 6e 64 6c 65 72 20 3d 20 7b 00 00 00 1e 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f andler.=.{.........destroy.=.on_
39dc0 77 69 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 1e 20 20 20 20 2e 65 6e 74 65 72 65 64 20 3d 20 6f win_destroy,.........entered.=.o
39de0 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 2c 73 74 72 75 n_win_entered,....};.......,stru
39e00 63 74 20 73 77 63 5f 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 20 73 63 72 65 65 6e 5f 68 61 6e ct.swc_screen_handler.screen_han
39e20 64 6c 65 72 20 3d 20 7b 00 00 00 21 20 20 20 20 2e 64 65 73 74 72 6f 79 20 3d 20 6f 6e 5f 73 63 dler.=.{...!.....destroy.=.on_sc
39e40 72 65 65 6e 5f 64 65 73 74 72 6f 79 2c 00 00 00 41 20 20 20 20 2e 75 73 61 62 6c 65 5f 67 65 6f reen_destroy,...A.....usable_geo
39e60 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 20 3d 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 metry_changed.=.on_screen_usable
39e80 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 24 _geometry_changed,....};.......$
39ea0 63 6f 6e 73 74 20 73 74 72 75 63 74 20 73 77 63 5f 6d 61 6e 61 67 65 72 20 6d 61 6e 61 67 65 72 const.struct.swc_manager.manager
39ec0 20 3d 20 7b 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 73 63 72 65 65 6e 20 3d 20 6e 65 77 5f 73 63 .=.{.........new_screen.=.new_sc
39ee0 72 65 65 6e 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 77 69 6e 64 6f 77 20 3d 20 6e 65 77 5f 77 reen,.........new_window.=.new_w
39f00 69 6e 64 6f 77 2c 00 00 00 1d 20 20 20 20 2e 6e 65 77 5f 64 65 76 69 63 65 20 3d 20 6e 65 77 5f indow,.........new_device.=.new_
39f20 64 65 76 69 63 65 2c 00 00 00 02 7d 3b 00 00 00 00 00 00 00 49 73 74 61 74 69 63 20 69 6e 74 20 device,....};.......Istatic.int.
39f40 77 72 69 74 65 5f 70 6e 67 28 63 6f 6e 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 2c 20 write_png(const.char.*filename,.
39f60 75 6e 73 69 67 6e 65 64 20 63 68 61 72 20 2a 62 75 66 2c 20 69 6e 74 20 77 69 64 74 68 2c 00 00 unsigned.char.*buf,.int.width,..
39f80 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 68 65 69 67 68 .......................int.heigh
39fa0 74 2c 20 69 6e 74 20 73 74 72 69 64 65 29 20 7b 00 00 00 23 20 20 46 49 4c 45 20 2a 66 70 20 3d t,.int.stride).{...#..FILE.*fp.=
39fc0 20 66 6f 70 65 6e 28 66 69 6c 65 6e 61 6d 65 2c 20 22 77 62 22 29 3b 00 00 00 15 20 20 69 66 20 .fopen(filename,."wb");......if.
39fe0 28 21 66 70 29 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 59 20 20 70 6e 67 5f 73 74 72 75 63 74 (!fp).return.-1;...Y..png_struct
3a000 70 20 70 6e 67 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 p.png_ptr.=.png_create_write_str
3a020 75 63 74 28 50 4e 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c uct(PNG_LIBPNG_VER_STRING,.NULL,
3a040 20 4e 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 00 2a 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 .NULL,.NULL);...*..if.(!png_ptr)
3a060 20 7b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 32 3b 20 7d 00 00 00 37 20 .{.fclose(fp);.return.-2;.}...7.
3a080 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 .png_infop.info_ptr.=.png_create
3a0a0 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e 67 5f 70 74 72 29 3b 00 00 00 55 20 20 69 66 20 28 _info_struct(png_ptr);...U..if.(
3a0c0 21 69 6e 66 6f 5f 70 74 72 29 20 7b 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 !info_ptr).{.png_destroy_write_s
3a0e0 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c 29 3b 20 66 63 6c 6f 73 65 28 66 70 truct(&png_ptr,.NULL);.fclose(fp
3a100 29 3b 20 72 65 74 75 72 6e 20 2d 33 3b 20 7d 00 00 00 6c 20 20 69 66 20 28 73 65 74 6a 6d 70 28 );.return.-3;.}...l..if.(setjmp(
3a120 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 20 7b 20 70 6e 67 5f 64 65 73 74 png_jmpbuf(png_ptr))).{.png_dest
3a140 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f roy_write_struct(&png_ptr,.&info
3a160 5f 70 74 72 29 3b 20 66 63 6c 6f 73 65 28 66 70 29 3b 20 72 65 74 75 72 6e 20 2d 34 3b 20 7d 00 _ptr);.fclose(fp);.return.-4;.}.
3a180 00 00 1b 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 2c 20 66 70 29 3b 00 00 .....png_init_io(png_ptr,.fp);..
3a1a0 00 48 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 .H..png_set_IHDR(png_ptr,.info_p
3a1c0 74 72 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 38 2c 20 50 4e 47 5f 43 4f 4c 4f 52 5f tr,.width,.height,.8,.PNG_COLOR_
3a1e0 54 59 50 45 5f 52 47 42 41 2c 00 00 00 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 4e 47 TYPE_RGBA,...T...............PNG
3a200 5f 49 4e 54 45 52 4c 41 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 53 53 49 4f 4e _INTERLACE_NONE,.PNG_COMPRESSION
3a220 5f 54 59 50 45 5f 42 41 53 45 2c 20 50 4e 47 5f 46 49 4c 54 45 52 5f 54 59 50 45 5f 42 41 53 45 _TYPE_BASE,.PNG_FILTER_TYPE_BASE
3a240 29 3b 00 00 00 24 20 20 70 6e 67 5f 77 72 69 74 65 5f 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 20 );...$..png_write_info(png_ptr,.
3a260 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 4c 20 20 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 info_ptr);...L..for.(int.y.=.0;.
3a280 79 20 3c 20 68 65 69 67 68 74 3b 20 79 2b 2b 29 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 y.<.height;.y++).png_write_row(p
3a2a0 6e 67 5f 70 74 72 2c 20 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 23 20 20 ng_ptr,.buf.+.y.*.stride);...#..
3a2c0 70 6e 67 5f 77 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 png_write_end(png_ptr,.info_ptr)
3a2e0 3b 00 00 00 30 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 ;...0..png_destroy_write_struct(
3a300 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 &png_ptr,.&info_ptr);......fclos
3a320 65 28 66 70 29 3b 00 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 e(fp);......return.0;....}......
3a340 00 32 73 74 61 74 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e .2static.int.take_screenshot(con
3a360 73 74 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 53 20 20 2f 2a 20 54 68 69 st.char.*filename).{...S../*.Thi
3a380 73 20 73 79 6d 62 6f 6c 20 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 6c 69 s.symbol.is.missing.from.your.li
3a3a0 62 73 77 63 2e 61 3b 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 20 74 6f 20 61 6c 6c 6f 77 bswc.a;.returning.error.to.allow
3a3c0 20 6c 69 6e 6b 69 6e 67 20 2a 2f 00 00 00 56 20 20 66 70 72 69 6e 74 66 28 73 74 64 65 72 72 2c .linking.*/...V..fprintf(stderr,
3a3e0 20 22 53 63 72 65 65 6e 73 68 6f 74 20 65 72 72 6f 72 3a 20 73 77 63 5f 73 63 72 65 65 6e 5f 63 ."Screenshot.error:.swc_screen_c
3a400 6f 70 79 5f 70 69 78 65 6c 73 20 6e 6f 74 20 66 6f 75 6e 64 20 69 6e 20 6c 69 62 72 61 72 79 2e opy_pixels.not.found.in.library.
3a420 5c 6e 22 29 3b 00 00 00 0c 20 20 72 65 74 75 72 6e 20 2d 31 3b 00 00 00 01 7d 00 00 00 00 00 00 \n");......return.-1;....}......
3a440 00 18 2f 2a 20 2d 2d 2d 20 43 6f 72 65 20 4c 6f 67 69 63 20 2d 2d 2d 20 2a 2f 00 00 00 00 00 00 ../*.---.Core.Logic.---.*/......
3a460 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e .1static.void.focus(struct.clien
3a480 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 14 20 20 69 66 20 28 77 6d 2e t.*c,.bool.raise).{......if.(wm.
3a4a0 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 66 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 sel_client)...f....swc_window_se
3a4c0 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 t_border(wm.sel_client->win,.cfg
3a4e0 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 6d 61 6c 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 .border_col_normal,.cfg.border_w
3a500 69 64 74 68 2c 20 30 78 30 30 30 30 30 30 46 46 2c 20 30 29 3b 00 00 00 08 20 20 69 66 20 28 63 idth,.0x000000FF,.0);......if.(c
3a520 29 00 00 00 5a 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 )...Z....swc_window_set_border(c
3a540 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 ->win,.cfg.border_col_active,.cf
3a560 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 30 78 30 30 30 30 30 30 46 46 2c 20 30 29 3b 00 g.border_width,.0x000000FF,.0);.
3a580 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 26 20 63 2d 3e 66 6c 6f 61 74 69 .....if.(raise.&&.c.&&.c->floati
3a5a0 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 63 2c 20 74 72 75 65 2c ng)........set_floating(c,.true,
3a5c0 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 66 6f 63 75 73 28 63 20 .true);...&..swc_window_focus(c.
3a5e0 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 20 20 77 6d 2e 73 65 6c 5f 63 6c ?.c->win.:.NULL);......wm.sel_cl
3a600 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 2b 73 74 61 74 69 63 20 76 6f 69 ient.=.c;....}.......+static.voi
3a620 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 d.on_screen_destroy(void.*data).
3a640 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 64 61 74 61 3b 00 {......struct.screen.*s.=.data;.
3a660 00 00 11 20 20 69 66 20 28 21 73 29 20 72 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 .....if.(!s).return;......wl_lis
3a680 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e t_remove(&s->link);......if.(wm.
3a6a0 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 73 29 20 7b 00 00 00 39 20 20 20 20 69 66 20 28 77 6c sel_screen.==.s).{...9....if.(wl
3a6c0 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 6d 2e 73 63 72 65 65 6e 73 29 29 20 77 6d 2e 73 65 6c _list_empty(&wm.screens)).wm.sel
3a6e0 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 4f 20 20 20 20 65 6c 73 65 20 77 6d 2e 73 _screen.=.NULL;...O....else.wm.s
3a700 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 77 6d 2e 73 el_screen.=.wl_container_of(wm.s
3a720 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 6c 69 6e 6b creens.next,.wm.sel_screen,.link
3a740 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d 00 00 00 00 );......}......free(s);....}....
3a760 00 00 00 49 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 61 62 6c 65 ...Istatic.void.on_screen_usable
3a780 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 20 _geometry_changed(void.*data).{.
3a7a0 74 69 6c 65 28 64 61 74 61 29 3b 20 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 tile(data);.}.......(static.void
3a7c0 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 .on_win_destroy(void.*data).{...
3a7e0 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 00 00 11 20 ...struct.client.*c.=.data;.....
3a800 20 69 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 55 20 20 69 66 20 28 77 6d 2e 67 72 61 .if.(!c).return;...U..if.(wm.gra
3a820 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 20 3d 3d 20 63 29 20 7b 20 77 6d b.active.&&.wm.grab.c.==.c).{.wm
3a840 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 20 77 6d 2e 67 72 61 62 2e 63 20 .grab.active.=.false;.wm.grab.c.
3a860 3d 20 4e 55 4c 4c 3b 20 7d 00 00 00 32 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 =.NULL;.}...2..if.(c->floating).
3a880 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 wl_list_remove(&c->float_link);.
3a8a0 00 00 26 20 20 65 6c 73 65 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c ..&..else.wl_list_remove(&c->til
3a8c0 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 ed_link);......if.(wm.sel_client
3a8e0 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 .==.c).{........wm.sel_client.=.
3a900 4e 55 4c 4c 3b 00 00 00 2e 20 20 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 6e 65 78 74 NULL;........struct.client.*next
3a920 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 72 29 3b 00 00 00 2a 20 20 20 20 69 .=.first_float(c->scr);...*....i
3a940 66 20 28 21 6e 65 78 74 29 20 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d 3e f.(!next).next.=.first_tiled(c->
3a960 73 63 72 29 3b 00 00 00 16 20 20 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b 00 scr);........focus(next,.true);.
3a980 00 00 03 20 20 7d 00 00 00 0f 20 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 66 .....}......tile(c->scr);......f
3a9a0 72 65 65 28 63 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 ree(c);....}.......(static.void.
3a9c0 6f 6e 5f 77 69 6e 5f 65 6e 74 65 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1d on_win_entered(void.*data).{....
3a9e0 20 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 29 20 72 65 74 75 72 6e 3b 00 00 00 ..if.(wm.grab.active).return;...
3aa00 14 20 20 66 6f 63 75 73 28 64 61 74 61 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 ...focus(data,.true);....}......
3aa20 00 19 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 1f 20 ..static.void.setup(void).{.....
3aa40 20 77 6d 2e 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 .wm.dpy.=.wl_display_create();..
3aa60 00 22 20 20 69 66 20 28 21 77 6d 2e 64 70 79 29 20 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 ."..if.(!wm.dpy).exit(EXIT_FAILU
3aa80 52 45 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 72 65 65 RE);......wl_list_init(&wm.scree
3aaa0 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 6c 65 64 ns);......wl_list_init(&wm.tiled
3aac0 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e );......wl_list_init(&wm.floatin
3aae0 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 g);......wm.sel_client.=.NULL;..
3ab00 00 01 20 f5 18 00 00 00 81 00 00 00 82 00 00 00 00 00 00 00 00 f5 18 00 00 00 80 00 00 00 82 00 ................................
3ab20 00 00 00 00 00 00 6b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c ......k......wm.sel_screen.=.NUL
3ab40 4c 3b 00 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 L;......wm.grab.active.=.false;.
3ab60 00 00 19 20 20 77 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 .....wm.grab.resize.=.false;....
3ab80 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c ..wm.grab.c.=.NULL;...1..wm.ev_l
3aba0 6f 6f 70 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 oop.=.wl_display_get_event_loop(
3abc0 77 6d 2e 64 70 79 29 3b 00 00 00 48 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a wm.dpy);...H..if.(!swc_initializ
3abe0 65 28 77 6d 2e 64 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 e(wm.dpy,.wm.ev_loop,.&manager))
3ac00 20 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 10 20 20 73 65 74 75 70 5f .exit(EXIT_FAILURE);......setup_
3ac20 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 3d binds();...8..const.char.*sock.=
3ac40 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e 64 .wl_display_add_socket_auto(wm.d
3ac60 70 79 29 3b 00 00 00 20 20 20 69 66 20 28 21 73 6f 63 6b 29 20 65 78 69 74 28 45 58 49 54 5f 46 py);......if.(!sock).exit(EXIT_F
3ac80 41 49 4c 55 52 45 29 3b 00 00 00 25 20 20 73 65 74 65 6e 76 28 22 57 41 59 4c 41 4e 44 5f 44 49 AILURE);...%..setenv("WAYLAND_DI
3aca0 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 1e 20 20 73 69 67 6e 61 6c 28 53 49 SPLAY",.sock,.1);......signal(SI
3acc0 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e 61 6c 28 GINT,.sig_handler);......signal(
3ace0 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 20 73 69 67 6e SIGTERM,.sig_handler);......sign
3ad00 61 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 01 7d 00 00 al(SIGQUIT,.sig_handler);....}..
3ad20 00 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f 62 69 6e 64 73 28 76 6f ......static.void.setup_binds(vo
3ad40 69 64 29 20 7b 00 00 00 41 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 20 69 20 id).{...A..for.(size_t.i.=.0;.i.
3ad60 3c 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 29 20 2f 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 5b 30 <.sizeof(binds)./.sizeof(binds[0
3ad80 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 20 73 74 72 75 63 74 20 62 ]);.i++).{...%....const.struct.b
3ada0 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 20 20 20 20 73 77 63 5f 61 ind.*b.=.&binds[i];...G....swc_a
3adc0 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d 6f 64 73 2c 20 62 2d 3e dd_binding(b->type,.b->mods,.b->
3ade0 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d 3e 61 72 67 29 3b 00 00 ksym,.b->fn,.(void.*)&b->arg);..
3ae00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 ....}....}.......Gstatic.void.se
3ae20 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f t_floating(struct.client.*c,.boo
3ae40 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 7b 00 00 00 11 20 20 69 l.floating,.bool.raise).{......i
3ae60 66 20 28 21 63 29 20 72 65 74 75 72 6e 3b 00 00 00 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 f.(!c).return;......if.(floating
3ae80 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 ).{........if.(!c->floating).{..
3aea0 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 ........c->floating.=.true;...%.
3aec0 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 .....wl_list_remove(&c->tiled_li
3aee0 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d nk);...3......wl_list_insert(&wm
3af00 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 .floating,.&c->float_link);.....
3af20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 ...}.else.if.(raise).{...%......
3af40 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 wl_list_remove(&c->float_link);.
3af60 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 ..3......wl_list_insert(&wm.floa
3af80 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 ting,.&c->float_link);........}.
3afa0 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d ..#....swc_window_set_stacked(c-
3afc0 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 >win);......}.else.{........if.(
3afe0 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 c->floating).{..........c->float
3b000 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 ing.=.false;...%......wl_list_re
3b020 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 move(&c->float_link);...0......w
3b040 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c l_list_insert(&wm.tiled,.&c->til
3b060 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 ed_link);........}...!....swc_wi
3b080 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 ndow_set_tiled(c->win);......}..
3b0a0 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 74 69 63 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 ..}.......$static.void.tile(stru
3b0c0 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 00 11 20 20 69 66 20 28 21 73 29 20 72 65 74 ct.screen.*s).{......if.(!s).ret
3b0e0 75 72 6e 3b 00 00 00 13 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 urn;......struct.client.*c;.....
3b100 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 3c 20 .struct.swc_rectangle.geom;...<.
3b120 20 73 74 72 75 63 74 20 73 77 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 20 .struct.swc_rectangle.*scr_geom.
3b140 3d 20 26 73 2d 3e 73 63 72 2d 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 31 20 =.&s->scr->usable_geometry;...1.
3b160 20 69 6e 74 33 32 5f 74 20 6f 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 .int32_t.out_gaps.=.cfg.gaps.+.c
3b180 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 3b 00 00 00 34 20 20 69 6e 74 33 32 5f 74 20 69 6e fg.border_width;...4..int32_t.in
3b1a0 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 _gaps.=.cfg.gaps.+.cfg.border_wi
3b1c0 64 74 68 20 2a 20 32 3b 00 00 00 25 20 20 69 6e 74 33 32 5f 74 20 78 20 3d 20 73 63 72 5f 67 65 dth.*.2;...%..int32_t.x.=.scr_ge
3b1e0 6f 6d 2d 3e 78 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 25 20 20 69 6e 74 33 32 5f 74 20 79 om->x.+.out_gaps;...%..int32_t.y
3b200 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 2e 20 20 .=.scr_geom->y.+.out_gaps;......
3b220 75 69 6e 74 33 32 5f 74 20 77 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 32 uint32_t.w.=.scr_geom->width.-.2
3b240 20 2a 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 2f 20 20 75 69 6e 74 33 32 5f 74 20 68 20 3d 20 73 .*.out_gaps;.../..uint32_t.h.=.s
3b260 63 72 5f 67 65 6f 6d 2d 3e 68 65 69 67 68 74 20 2d 20 32 20 2a 20 6f 75 74 5f 67 61 70 73 3b 00 cr_geom->height.-.2.*.out_gaps;.
3b280 00 00 0f 20 20 73 69 7a 65 5f 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f .....size_t.n.=.0;...E..wl_list_
3b2a0 66 6f 72 5f 65 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e for_each(c,.&wm.tiled,.tiled_lin
3b2c0 6b 29 20 69 66 20 28 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 15 20 k).if.(is_tiled(c,.s)).n++;.....
3b2e0 20 69 66 20 28 6e 20 3d 3d 20 30 29 20 72 65 74 75 72 6e 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 .if.(n.==.0).return;......if.(n.
3b300 3d 3d 20 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 ==.1).{...0....wl_list_for_each(
3b320 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 24 20 c,.&wm.tiled,.tiled_link).{...$.
3b340 20 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e .....if.(!is_tiled(c,.s)).contin
3b360 75 65 3b 00 00 00 3e 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 20 67 65 6f 6d 2e 79 20 ue;...>......geom.x.=.x;.geom.y.
3b380 3d 20 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 =.y;.geom.width.=.w;.geom.height
3b3a0 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 .=.h;...-......swc_window_set_ge
3b3c0 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 20 20 20 ometry(c->win,.&geom);..........
3b3e0 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 73 69 7a return;........}......}......siz
3b400 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 e_t.i.=.0;......wl_list_for_each
3b420 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 22 (c,.&wm.tiled,.tiled_link).{..."
3b440 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 20 63 6f 6e 74 69 6e 75 ....if.(!is_tiled(c,.s)).continu
3b460 65 3b 00 00 00 53 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 3d 20 30 29 e;...S....if.(master_width.==.0)
3b480 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a .master_width.=.((w.-.in_gaps).*
3b4a0 20 63 66 67 2e 6d 61 73 74 65 72 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 .cfg.master_width)./.100;.......
3b4c0 20 69 66 20 28 69 20 3d 3d 20 30 29 20 7b 00 00 00 49 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d .if.(i.==.0).{...I......geom.x.=
3b4e0 20 78 3b 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 6d 61 73 .x;.geom.y.=.y;.geom.width.=.mas
3b500 74 65 72 5f 77 69 64 74 68 3b 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 ter_width;.geom.height.=.h;.....
3b520 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 ...}.else.{..........uint32_t.st
3b540 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 ackn.=.n.-.1;..........uint32_t.
3b560 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 idx.=.i.-.1;...D......uint32_t.s
3b580 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 20 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 tack_height.=.(h.-.in_gaps.*.(st
3b5a0 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 ackn.-.1))./.stackn;...*......ge
3b5c0 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 om.x.=.x.+.master_width.+.in_gap
3b5e0 73 3b 00 00 00 32 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 20 2b 20 69 64 78 20 2a 20 28 s;...2......geom.y.=.y.+.idx.*.(
3b600 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 6e 5f 67 61 70 73 29 3b 00 00 00 2e 20 20 20 20 stack_height.+.in_gaps);........
3b620 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 ..geom.width.=.w.-.master_width.
3b640 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 -.in_gaps;...!......geom.height.
3b660 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 =.stack_height;........}...+....
3b680 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 swc_window_set_geometry(c->win,.
3b6a0 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 &geom);........i++;......}....}.
3b6c0 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 ......)void.new_screen(struct.sw
3b6e0 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 c_screen.*scr).{...(..struct.scr
3b700 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 0f een.*s.=.malloc(sizeof(*s));....
3b720 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 00 00 20 20 20 73 2d 3e 78 20 3d 20 73 2d 3e 79 ..s->scr.=.scr;......s->x.=.s->y
3b740 20 3d 20 73 2d 3e 77 20 3d 20 73 2d 3e 68 20 3d 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 .=.s->w.=.s->h.=.0;...(..wl_list
3b760 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 _insert(&wm.screens,.&s->link);.
3b780 00 00 28 20 20 69 66 20 28 21 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 20 77 6d 2e 73 65 6c 5f ..(..if.(!wm.sel_screen).wm.sel_
3b7a0 73 63 72 65 65 6e 20 3d 20 73 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f screen.=.s;...2..swc_screen_set_
3b7c0 68 61 6e 64 6c 65 72 28 73 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 handler(scr,.&screen_handler,.s)
3b7e0 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 ;....}.......)void.new_window(st
3b800 72 75 63 74 20 73 77 63 5f 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 72 ruct.swc_window.*win).{...(..str
3b820 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 uct.client.*c.=.malloc(sizeof(*c
3b840 29 29 3b 00 00 00 0f 20 20 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 2d 3e 73 ));......c->win.=.win;......c->s
3b860 63 72 20 3d 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d 61 70 70 cr.=.wm.sel_screen;......c->mapp
3b880 65 64 20 3d 20 66 61 6c 73 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 ed.=.false;...#..c->floating.=.w
3b8a0 6d 2e 67 6c 6f 62 61 6c 5f 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 6c 6c 73 m.global_floating;......c->fulls
3b8c0 63 72 65 65 6e 20 3d 20 66 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 creen.=.false;......c->ws.=.fals
3b8e0 65 3b 00 00 00 14 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 31 20 20 e;......if.(c->floating).{...1..
3b900 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 ..wl_list_insert(&wm.floating,.&
3b920 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 c->float_link);...!....wl_list_i
3b940 6e 69 74 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 12 20 20 20 20 73 77 63 5f nit(&c->tiled_link);........swc_
3b960 77 69 6e 64 6f 77 5f 73 65 74 f5 18 00 00 00 eb 00 00 00 ec 00 00 00 00 00 00 00 00 f5 18 00 00 window_set......................
3b980 00 ea 00 00 00 ec 00 00 00 00 00 00 00 3e 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 .............>...4....swc_window
3b9a0 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 _set_handler(win,.&window_handle
3b9c0 72 2c 20 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 r,.c);........swc_window_set_sta
3b9e0 63 6b 65 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 cked(win);......}.else.{........
3ba00 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 wl_list_insert(&wm.tiled,.&c->ti
3ba20 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 led_link);...!....wl_list_init(&
3ba40 63 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f c->float_link);...4....swc_windo
3ba60 77 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c w_set_handler(win,.&window_handl
3ba80 65 72 2c 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 er,.c);........swc_window_set_ti
3baa0 6c 65 64 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 led(win);......}......swc_window
3bac0 5f 73 68 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b _show(win);......focus(c,.true);
3bae0 00 00 00 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 01 7d 00 ......tile(wm.sel_screen);....}.
3bb00 00 00 00 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 ......;void.new_device(struct.li
3bb20 62 69 6e 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b binput_device.*dev).{.(void)dev;
3bb40 20 7d 00 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 .}.......!int.main(int.argc,.cha
3bb60 72 20 2a 2a 61 72 67 76 29 20 7b 00 00 00 1f 20 20 62 6f 6f 6c 20 73 63 72 65 65 6e 73 68 6f 74 r.**argv).{......bool.screenshot
3bb80 5f 6d 6f 64 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 18 20 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 _mode.=.false;......char.*filena
3bba0 6d 65 20 3d 20 4e 55 4c 4c 3b 00 00 00 3a 20 20 69 66 20 28 61 72 67 63 20 3d 3d 20 33 20 26 26 me.=.NULL;...:..if.(argc.==.3.&&
3bbc0 20 73 74 72 63 6d 70 28 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 .strcmp(argv[1],."--screenshot")
3bbe0 20 3d 3d 20 30 29 20 7b 00 00 00 1b 20 20 20 20 73 63 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 20 .==.0).{........screenshot_mode.
3bc00 3d 20 74 72 75 65 3b 00 00 00 17 20 20 20 20 66 69 6c 65 6e 61 6d 65 20 3d 20 61 72 67 76 5b 32 =.true;........filename.=.argv[2
3bc20 5d 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 73 65 74 75 70 28 29 3b 00 00 00 18 20 20 69 66 20 ];......}......setup();......if.
3bc40 28 73 63 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 29 20 7b 00 00 00 26 20 20 20 20 69 6e 74 20 72 (screenshot_mode).{...&....int.r
3bc60 20 3d 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 66 69 6c 65 6e 61 6d 65 29 3b 00 00 00 .=.take_screenshot(filename);...
3bc80 1f 20 20 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b .....wl_display_destroy(wm.dpy);
3bca0 00 00 00 1a 20 20 20 20 72 65 74 75 72 6e 20 72 20 21 3d 20 30 20 3f 20 31 20 3a 20 30 3b 00 00 ........return.r.!=.0.?.1.:.0;..
3bcc0 00 03 20 20 7d 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e 64 70 79 ....}......wl_display_run(wm.dpy
3bce0 29 3b 00 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d 20 20 77 6c 5f );......swc_finalize();......wl_
3bd00 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 0b 20 20 72 65 display_destroy(wm.dpy);......re
3bd20 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 2f 2a 20 2d 2d 2d 20 42 69 6e 64 20 turn.0;....}.......)/*.---.Bind.
3bd40 48 61 6e 64 6c 65 72 73 20 28 44 65 66 69 6e 69 74 69 6f 6e 73 29 20 2d 2d 2d 20 2a 2f 00 00 00 Handlers.(Definitions).---.*/...
3bd60 00 00 00 00 47 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 ....Gvoid.spawn(void.*data,.uint
3bd80 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32_t.time,.uint32_t.value,.uint3
3bda0 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 35 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 2_t.state).{...5..if.(state.!=.W
3bdc0 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 44 29 20 72 65 L_KEYBOARD_KEY_STATE_PRESSED).re
3bde0 74 75 72 6e 3b 00 00 00 1a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 2a 63 6d 64 20 3d 20 64 61 turn;......const.char.**cmd.=.da
3be00 74 61 3b 00 00 00 14 20 20 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 7b 00 00 00 0d 20 ta;......if.(fork().==.0).{.....
3be20 20 20 20 73 65 74 73 69 64 28 29 3b 00 00 00 21 20 20 20 20 65 78 65 63 76 70 28 63 6d 64 5b 30 ...setsid();...!....execvp(cmd[0
3be40 5d 2c 20 28 63 68 61 72 20 2a 2a 29 63 6d 64 29 3b 00 00 00 17 20 20 20 20 65 78 69 74 28 45 58 ],.(char.**)cmd);........exit(EX
3be60 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 46 IT_FAILURE);......}....}.......F
3be80 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 void.quit(void.*data,.uint32_t.t
3bea0 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 ime,.uint32_t.value,.uint32_t.st
3bec0 61 74 65 29 20 7b 00 00 00 1f 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 6e 61 74 65 ate).{......wl_display_terminate
3bee0 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 59 76 6f 69 64 20 66 6f 63 75 73 (wm.dpy);....}.......Yvoid.focus
3bf00 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c _next(void.*data,.uint32_t.time,
3bf20 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 .uint32_t.value,.uint32_t.state)
3bf40 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 59 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 .{./*.stub.*/.}...Yvoid.focus_pr
3bf60 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 ev(void.*data,.uint32_t.time,.ui
3bf80 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 nt32_t.value,.uint32_t.state).{.
3bfa0 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 4a 76 6f 69 64 20 6b 69 6c 6c 5f 73 65 6c 28 76 6f /*.stub.*/.}...Jvoid.kill_sel(vo
3bfc0 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f id.*data,.uint32_t.time,.uint32_
3bfe0 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 00 00 00 3a 20 20 t.value,.uint32_t.state).{...:..
3c000 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 20 73 77 63 5f 77 69 6e 64 6f 77 5f 63 6c if.(wm.sel_client).swc_window_cl
3c020 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 ose(wm.sel_client->win);....}...
3c040 59 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e Yvoid.mouse_move(void.*data,.uin
3c060 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
3c080 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 5b 76 6f 32_t.state).{./*.stub.*/.}...[vo
3c0a0 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 id.mouse_resize(void.*data,.uint
3c0c0 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32_t.time,.uint32_t.value,.uint3
3c0e0 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 5b 76 6f 69 2_t.state).{./*.stub.*/.}...[voi
3c100 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 d.toggle_float(void.*data,.uint3
3c120 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 2_t.time,.uint32_t.value,.uint32
3c140 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 62 76 6f 69 64 _t.state).{./*.stub.*/.}...bvoid
3c160 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c .toggle_float_global(void.*data,
3c180 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 76 61 6c 75 65 2c 20 .uint32_t.time,.uint32_t.value,.
3c1a0 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 uint32_t.state).{./*.stub.*/.}..
3c1c0 00 5a 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 .Zvoid.master_next(void.*data,.u
3c1e0 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 int32_t.time,.uint32_t.value,.ui
3c200 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 5a nt32_t.state).{./*.stub.*/.}...Z
3c220 76 6f 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e void.master_prev(void.*data,.uin
3c240 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
3c260 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 5c 76 6f 32_t.state).{./*.stub.*/.}...\vo
3c280 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e id.master_resize(void.*data,.uin
3c2a0 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 t32_t.time,.uint32_t.value,.uint
3c2c0 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d f5 18 00 00 01 28 32_t.state).{./*.stub.*/.}.....(
3c2e0 00 00 01 29 00 00 00 00 00 00 00 00 f5 18 00 00 01 27 00 00 01 29 00 00 00 00 00 00 00 01 00 00 ...).............'...)..........
3c300 00 5c 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c .\void.master_resize(void.*data,
3c320 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 76 61 6c 75 65 2c 20 .uint32_t.time,.uint32_t.value,.
3c340 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 35 81 uint32_t.state).{./*.stub.*/.}5.
3c360 f5 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 01 00 00 00 00 00 ................................
3c380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 f5 18 00 00 00 00 80 00 00 00 ................................
3c3a0 01 00 00 00 00 00 00 00 00 00 00 00 6a 00 00 00 12 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 ............j...................
3c3c0 00 00 00 00 00 0d 00 00 00 00 00 00 f5 18 00 00 00 00 ea 00 00 00 12 00 00 00 00 00 00 00 00 00 ................................
3c3e0 00 00 3d 00 00 00 5c 00 00 00 00 1d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7f 08 00 00 00 00 ..=...\.........................
3c400 00 00 35 81 5f d0 00 00 00 82 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 83 00 00 01 28 00 00 ..5._........................(..
3c420 00 5b 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 00 00 .[..............................
3c440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3c580 00 00 00 00 00 00 00 00 69 95 92 00 04 01 00 00 00 34 00 f5 18 00 00 00 33 00 00 01 29 00 00 00 ........i........4......3...)...
3c5a0 00 00 00 01 2e 00 00 00 0a 20 20 69 66 20 28 21 66 70 29 00 00 00 0e 20 20 20 20 72 65 74 75 72 ...........if.(!fp)........retur
3c5c0 6e 20 2d 31 3b 00 00 00 17 20 20 70 6e 67 5f 73 74 72 75 63 74 70 20 70 6e 67 5f 70 74 72 20 3d n.-1;......png_structp.png_ptr.=
3c5e0 00 00 00 47 20 20 20 20 20 20 70 6e 67 5f 63 72 65 61 74 65 5f 77 72 69 74 65 5f 73 74 72 75 63 ...G......png_create_write_struc
3c600 74 28 50 4e 47 5f 4c 49 42 50 4e 47 5f 56 45 52 5f 53 54 52 49 4e 47 2c 20 4e 55 4c 4c 2c 20 4e t(PNG_LIBPNG_VER_STRING,.NULL,.N
3c620 55 4c 4c 2c 20 4e 55 4c 4c 29 3b 00 00 00 11 20 20 69 66 20 28 21 70 6e 67 5f 70 74 72 29 20 7b ULL,.NULL);......if.(!png_ptr).{
3c640 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 ........fclose(fp);........retur
3c660 6e 20 2d 32 3b 00 00 00 03 20 20 7d 00 00 00 37 20 20 70 6e 67 5f 69 6e 66 6f 70 20 69 6e 66 6f n.-2;......}...7..png_infop.info
3c680 5f 70 74 72 20 3d 20 70 6e 67 5f 63 72 65 61 74 65 5f 69 6e 66 6f 5f 73 74 72 75 63 74 28 70 6e _ptr.=.png_create_info_struct(pn
3c6a0 67 5f 70 74 72 29 3b 00 00 00 12 20 20 69 66 20 28 21 69 6e 66 6f 5f 70 74 72 29 20 7b 00 00 00 g_ptr);......if.(!info_ptr).{...
3c6c0 2d 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 -....png_destroy_write_struct(&p
3c6e0 6e 67 5f 70 74 72 2c 20 4e 55 4c 4c 29 3b 00 00 00 0f 20 20 20 20 66 63 6c 6f 73 65 28 66 70 29 ng_ptr,.NULL);........fclose(fp)
3c700 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 33 3b 00 00 00 03 20 20 7d 00 00 00 24 20 20 ;........return.-3;......}...$..
3c720 69 66 20 28 73 65 74 6a 6d 70 28 70 6e 67 5f 6a 6d 70 62 75 66 28 70 6e 67 5f 70 74 72 29 29 29 if.(setjmp(png_jmpbuf(png_ptr)))
3c740 20 7b 00 00 00 32 20 20 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 .{...2....png_destroy_write_stru
3c760 63 74 28 26 70 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0f 20 20 20 20 ct(&png_ptr,.&info_ptr);........
3c780 66 63 6c 6f 73 65 28 66 70 29 3b 00 00 00 0e 20 20 20 20 72 65 74 75 72 6e 20 2d 34 3b 00 00 00 fclose(fp);........return.-4;...
3c7a0 03 20 20 7d 00 00 00 1b 20 20 70 6e 67 5f 69 6e 69 74 5f 69 6f 28 70 6e 67 5f 70 74 72 2c 20 66 ...}......png_init_io(png_ptr,.f
3c7c0 70 29 3b 00 00 00 48 20 20 70 6e 67 5f 73 65 74 5f 49 48 44 52 28 70 6e 67 5f 70 74 72 2c 20 69 p);...H..png_set_IHDR(png_ptr,.i
3c7e0 6e 66 6f 5f 70 74 72 2c 20 77 69 64 74 68 2c 20 68 65 69 67 68 74 2c 20 38 2c 20 50 4e 47 5f 43 nfo_ptr,.width,.height,.8,.PNG_C
3c800 4f 4c 4f 52 5f 54 59 50 45 5f 52 47 42 41 2c 00 00 00 3d 20 20 20 20 20 20 20 20 20 20 20 20 20 OLOR_TYPE_RGBA,...=.............
3c820 20 20 50 4e 47 5f 49 4e 54 45 52 4c 41 43 45 5f 4e 4f 4e 45 2c 20 50 4e 47 5f 43 4f 4d 50 52 45 ..PNG_INTERLACE_NONE,.PNG_COMPRE
3c840 53 53 49 4f 4e 5f 54 59 50 45 5f 42 41 53 45 2c 00 00 00 25 20 20 20 20 20 20 20 20 20 20 20 20 SSION_TYPE_BASE,...%............
3c860 20 20 20 50 4e 47 5f 46 49 4c 54 45 52 5f 54 59 50 45 5f 42 41 53 45 29 3b 00 00 00 24 20 20 70 ...PNG_FILTER_TYPE_BASE);...$..p
3c880 6e 67 5f 77 72 69 74 65 5f 69 6e 66 6f 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 ng_write_info(png_ptr,.info_ptr)
3c8a0 3b 00 00 00 22 20 20 66 6f 72 20 28 69 6e 74 20 79 20 3d 20 30 3b 20 79 20 3c 20 68 65 69 67 68 ;..."..for.(int.y.=.0;.y.<.heigh
3c8c0 74 3b 20 79 2b 2b 29 00 00 00 2d 20 20 20 20 70 6e 67 5f 77 72 69 74 65 5f 72 6f 77 28 70 6e 67 t;.y++)...-....png_write_row(png
3c8e0 5f 70 74 72 2c 20 62 75 66 20 2b 20 79 20 2a 20 73 74 72 69 64 65 29 3b 00 00 00 23 20 20 70 6e _ptr,.buf.+.y.*.stride);...#..pn
3c900 67 5f 77 72 69 74 65 5f 65 6e 64 28 70 6e 67 5f 70 74 72 2c 20 69 6e 66 6f 5f 70 74 72 29 3b 00 g_write_end(png_ptr,.info_ptr);.
3c920 00 00 30 20 20 70 6e 67 5f 64 65 73 74 72 6f 79 5f 77 72 69 74 65 5f 73 74 72 75 63 74 28 26 70 ..0..png_destroy_write_struct(&p
3c940 6e 67 5f 70 74 72 2c 20 26 69 6e 66 6f 5f 70 74 72 29 3b 00 00 00 0d 20 20 66 63 6c 6f 73 65 28 ng_ptr,.&info_ptr);......fclose(
3c960 66 70 29 3b 00 00 00 0b 20 20 72 65 74 75 72 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 32 fp);......return.0;....}.......2
3c980 73 74 61 74 69 63 20 69 6e 74 20 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 63 6f 6e 73 74 static.int.take_screenshot(const
3c9a0 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 29 20 7b 00 00 00 50 20 20 2f 2a 20 54 68 69 73 20 .char.*filename).{...P../*.This.
3c9c0 73 79 6d 62 6f 6c 20 69 73 20 6d 69 73 73 69 6e 67 20 66 72 6f 6d 20 79 6f 75 72 20 6c 69 62 73 symbol.is.missing.from.your.libs
3c9e0 77 63 2e 61 3b 20 72 65 74 75 72 6e 69 6e 67 20 65 72 72 6f 72 20 74 6f 20 61 6c 6c 6f 77 20 6c wc.a;.returning.error.to.allow.l
3ca00 69 6e 6b 69 6e 67 00 00 00 05 20 20 20 2a 2f 00 00 00 11 20 20 66 70 72 69 6e 74 66 28 73 74 64 inking.......*/......fprintf(std
3ca20 65 72 72 2c 00 00 00 4e 20 20 20 20 20 20 20 20 20 20 22 53 63 72 65 65 6e 73 68 6f 74 20 65 72 err,...N.........."Screenshot.er
3ca40 72 6f 72 3a 20 73 77 63 5f 73 63 72 65 65 6e 5f 63 6f 70 79 5f 70 69 78 65 6c 73 20 6e 6f 74 20 ror:.swc_screen_copy_pixels.not.
3ca60 66 6f 75 6e 64 20 69 6e 20 6c 69 62 72 61 72 79 2e 5c 6e 22 29 3b 00 00 00 0c 20 20 72 65 74 75 found.in.library.\n");......retu
3ca80 72 6e 20 2d 31 3b 00 00 00 01 7d 00 00 00 00 00 00 00 18 2f 2a 20 2d 2d 2d 20 43 6f 72 65 20 4c rn.-1;....}......../*.---.Core.L
3caa0 6f 67 69 63 20 2d 2d 2d 20 2a 2f 00 00 00 00 00 00 00 31 73 74 61 74 69 63 20 76 6f 69 64 20 66 ogic.---.*/.......1static.void.f
3cac0 6f 63 75 73 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 2c 20 62 6f 6f 6c 20 72 61 69 73 ocus(struct.client.*c,.bool.rais
3cae0 65 29 20 7b 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 44 e).{......if.(wm.sel_client)...D
3cb00 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 77 6d 2e 73 65 6c ....swc_window_set_border(wm.sel
3cb20 5f 63 6c 69 65 6e 74 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 63 6f 6c 5f 6e 6f 72 _client->win,.cfg.border_col_nor
3cb40 6d 61 6c 2c 00 00 00 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mal,...;........................
3cb60 20 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 20 30 78 30 30 30 30 30 30 46 46 2c 20 ..cfg.border_width,.0x000000FF,.
3cb80 30 29 3b 00 00 00 08 20 20 69 66 20 28 63 29 00 00 00 4a 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 0);......if.(c)...J....swc_windo
3cba0 77 5f 73 65 74 5f 62 6f 72 64 65 72 28 63 2d 3e 77 69 6e 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f w_set_border(c->win,.cfg.border_
3cbc0 63 6f 6c 5f 61 63 74 69 76 65 2c 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 2c 00 00 00 col_active,.cfg.border_width,...
3cbe0 29 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 30 78 30 30 30 )..........................0x000
3cc00 30 30 30 46 46 2c 20 30 29 3b 00 00 00 20 20 20 69 66 20 28 72 61 69 73 65 20 26 26 20 63 20 26 000FF,.0);......if.(raise.&&.c.&
3cc20 26 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 20 20 20 20 20 73 65 74 5f 66 6c 6f 61 74 69 &.c->floating)........set_floati
3cc40 6e 67 28 63 2c 20 74 72 75 65 2c 20 74 72 75 65 29 3b 00 00 00 26 20 20 73 77 63 5f 77 69 6e 64 ng(c,.true,.true);...&..swc_wind
3cc60 6f 77 5f 66 6f 63 75 73 28 63 20 3f 20 63 2d 3e 77 69 6e 20 3a 20 4e 55 4c 4c 29 3b 00 00 00 14 ow_focus(c.?.c->win.:.NULL);....
3cc80 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 63 3b 00 00 00 01 7d 00 00 00 00 00 00 00 ..wm.sel_client.=.c;....}.......
3cca0 2b 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 64 65 73 74 72 6f 79 28 76 +static.void.on_screen_destroy(v
3ccc0 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 oid.*data).{......struct.screen.
3cce0 2a 73 20 3d 20 64 61 74 61 3b 00 00 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 *s.=.data;......if.(!s)........r
3cd00 65 74 75 72 6e 3b 00 00 00 1b 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 73 2d 3e 6c eturn;......wl_list_remove(&s->l
3cd20 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 3d 20 ink);......if.(wm.sel_screen.==.
3cd40 73 29 20 7b 00 00 00 23 20 20 20 20 69 66 20 28 77 6c 5f 6c 69 73 74 5f 65 6d 70 74 79 28 26 77 s).{...#....if.(wl_list_empty(&w
3cd60 6d 2e 73 63 72 65 65 6e 73 29 29 00 00 00 1b 20 20 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 m.screens))..........wm.sel_scre
3cd80 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 08 20 20 20 20 65 6c 73 65 00 00 00 4c 20 20 20 20 20 20 en.=.NULL;........else...L......
3cda0 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 77 6c 5f 63 6f 6e 74 61 69 6e 65 72 5f 6f 66 28 wm.sel_screen.=.wl_container_of(
3cdc0 77 6d 2e 73 63 72 65 65 6e 73 2e 6e 65 78 74 2c 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 2c 20 wm.screens.next,.wm.sel_screen,.
3cde0 6c 69 6e 6b 29 3b 00 00 00 03 20 20 7d 00 00 00 0a 20 20 66 72 65 65 28 73 29 3b 00 00 00 01 7d link);......}......free(s);....}
3ce00 00 00 00 00 00 00 00 49 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 73 63 72 65 65 6e 5f 75 73 .......Istatic.void.on_screen_us
3ce20 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 5f 63 68 61 6e 67 65 64 28 76 6f 69 64 20 2a 64 61 74 61 able_geometry_changed(void.*data
3ce40 29 20 7b 20 74 69 6c 65 28 64 61 74 61 29 3b 20 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 ).{.tile(data);.}.......(static.
3ce60 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 64 65 73 74 72 6f 79 28 76 6f 69 64 20 2a 64 61 74 61 29 20 void.on_win_destroy(void.*data).
3ce80 7b 00 00 00 1a 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 20 3d 20 64 61 74 61 3b 00 {......struct.client.*c.=.data;.
3cea0 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 29 20 .....if.(!c)........return;...).
3cec0 20 69 66 20 28 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 26 26 20 77 6d 2e 67 72 61 62 2e 63 .if.(wm.grab.active.&&.wm.grab.c
3cee0 20 3d 3d 20 63 29 20 7b 00 00 00 1b 20 20 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d .==.c).{........wm.grab.active.=
3cf00 20 66 61 6c 73 65 3b 00 00 00 15 20 20 20 20 77 6d 2e 67 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b .false;........wm.grab.c.=.NULL;
3cf20 00 00 00 03 20 20 7d 00 00 00 12 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 00 00 00 ......}......if.(c->floating)...
3cf40 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 #....wl_list_remove(&c->float_li
3cf60 6e 6b 29 3b 00 00 00 06 20 20 65 6c 73 65 00 00 00 23 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 nk);......else...#....wl_list_re
3cf80 6d 6f 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 1b 20 20 69 66 20 28 77 move(&c->tiled_link);......if.(w
3cfa0 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 3d 20 63 29 20 7b 00 00 00 19 20 20 20 20 77 6d 2e 73 m.sel_client.==.c).{........wm.s
3cfc0 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c 3b 00 00 00 2e 20 20 20 20 73 74 72 75 63 74 20 el_client.=.NULL;........struct.
3cfe0 63 6c 69 65 6e 74 20 2a 6e 65 78 74 20 3d 20 66 69 72 73 74 5f 66 6c 6f 61 74 28 63 2d 3e 73 63 client.*next.=.first_float(c->sc
3d000 72 29 3b 00 00 00 0e 20 20 20 20 69 66 20 28 21 6e 65 78 74 29 00 00 00 21 20 20 20 20 20 20 6e r);........if.(!next)...!......n
3d020 65 78 74 20 3d 20 66 69 72 73 74 5f 74 69 6c 65 64 28 63 2d 3e 73 63 72 29 3b 00 00 00 16 20 20 ext.=.first_tiled(c->scr);......
3d040 20 20 66 6f 63 75 73 28 6e 65 78 74 2c 20 74 72 75 65 29 3b 00 00 00 03 20 20 7d 00 00 00 0f 20 ..focus(next,.true);......}.....
3d060 20 74 69 6c 65 28 63 2d 3e 73 63 72 29 3b 00 00 00 0a 20 20 66 72 65 65 28 63 29 3b 00 00 00 01 .tile(c->scr);......free(c);....
3d080 7d 00 00 00 00 00 00 00 28 73 74 61 74 69 63 20 76 6f 69 64 20 6f 6e 5f 77 69 6e 5f 65 6e 74 65 }.......(static.void.on_win_ente
3d0a0 72 65 64 28 76 6f 69 64 20 2a 64 61 74 61 29 20 7b 00 00 00 15 20 20 69 66 20 28 77 6d 2e 67 72 red(void.*data).{......if.(wm.gr
3d0c0 61 62 2e 61 63 74 69 76 65 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 14 20 20 66 ab.active)........return;......f
3d0e0 6f 63 75 73 28 64 61 74 61 2c 20 74 72 75 65 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 19 73 74 ocus(data,.true);....}........st
3d100 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 28 76 6f 69 64 29 20 7b 00 00 00 1f 20 20 77 6d 2e atic.void.setup(void).{......wm.
3d120 64 70 79 20 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 63 72 65 61 74 65 28 29 3b 00 00 00 0e 20 20 dpy.=.wl_display_create();......
3d140 69 66 20 28 21 77 6d 2e 64 70 79 29 00 00 00 17 20 20 20 20 65 78 69 74 28 45 58 49 54 5f 46 41 if.(!wm.dpy)........exit(EXIT_FA
3d160 49 4c 55 52 45 29 3b 00 00 00 1c 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 73 63 ILURE);......wl_list_init(&wm.sc
3d180 72 65 65 6e 73 29 3b 00 00 00 1a 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 74 69 reens);......wl_list_init(&wm.ti
3d1a0 6c 65 64 29 3b 00 00 00 1d 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 77 6d 2e 66 6c 6f 61 led);......wl_list_init(&wm.floa
3d1c0 74 69 6e 67 29 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 20 3d 20 4e 55 4c 4c ting);......wm.sel_client.=.NULL
3d1e0 3b 00 00 00 17 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 4e 55 4c 4c 3b 00 00 00 19 ;......wm.sel_screen.=.NULL;....
3d200 20 20 77 6d 2e 67 72 61 62 2e 61 63 74 69 76 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 19 20 20 77 ..wm.grab.active.=.false;......w
3d220 6d 2e 67 72 61 62 2e 72 65 73 69 7a 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 13 20 20 77 6d 2e 67 m.grab.resize.=.false;......wm.g
3d240 72 61 62 2e 63 20 3d 20 4e 55 4c 4c 3b 00 00 00 31 20 20 77 6d 2e 65 76 5f 6c 6f 6f 70 20 3d 20 rab.c.=.NULL;...1..wm.ev_loop.=.
3d260 77 6c 5f 64 69 73 70 6c 61 79 5f 67 65 74 5f 65 76 65 6e 74 5f 6c 6f 6f 70 28 77 6d 2e 64 70 79 wl_display_get_event_loop(wm.dpy
3d280 29 3b 00 00 00 34 20 20 69 66 20 28 21 73 77 63 5f 69 6e 69 74 69 61 6c 69 7a 65 28 77 6d 2e 64 );...4..if.(!swc_initialize(wm.d
3d2a0 70 79 2c 20 77 6d 2e 65 76 5f 6c 6f 6f 70 2c 20 26 6d 61 6e 61 67 65 72 29 29 00 00 00 17 20 20 py,.wm.ev_loop,.&manager))......
3d2c0 20 20 65 78 69 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 10 20 20 73 65 74 75 70 ..exit(EXIT_FAILURE);......setup
3d2e0 5f 62 69 6e 64 73 28 29 3b 00 00 00 38 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 73 6f 63 6b 20 _binds();...8..const.char.*sock.
3d300 3d 20 77 6c 5f 64 69 73 70 6c 61 79 5f 61 64 64 5f 73 6f 63 6b 65 74 5f 61 75 74 6f 28 77 6d 2e =.wl_display_add_socket_auto(wm.
3d320 64 70 79 29 3b 00 00 00 0c 20 20 69 66 20 28 21 73 6f 63 6b 29 00 00 00 17 20 20 20 20 65 78 69 dpy);......if.(!sock)........exi
3d340 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 25 20 20 73 65 74 65 6e 76 28 22 57 41 t(EXIT_FAILURE);...%..setenv("WA
3d360 59 4c 41 4e 44 5f 44 49 53 50 4c 41 59 22 2c 20 73 6f 63 6b 2c 20 31 29 3b 00 00 00 1e 20 20 73 YLAND_DISPLAY",.sock,.1);......s
3d380 69 67 6e 61 6c 28 53 49 47 49 4e 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 00 1f 20 ignal(SIGINT,.sig_handler);.....
3d3a0 20 73 69 67 6e 61 6c 28 53 49 47 54 45 52 4d 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 3b 00 00 .signal(SIGTERM,.sig_handler);..
3d3c0 00 1f 20 20 73 69 67 6e 61 6c 28 53 49 47 51 55 49 54 2c 20 73 69 67 5f 68 61 6e 64 6c 65 72 29 ....signal(SIGQUIT,.sig_handler)
3d3e0 3b 00 00 00 01 7d 00 00 00 00 00 00 00 1f 73 74 61 74 69 63 20 76 6f 69 64 20 73 65 74 75 70 5f ;....}........static.void.setup_
3d400 62 69 6e 64 73 28 76 6f 69 64 29 20 7b 00 00 00 41 20 20 66 6f 72 20 28 73 69 7a 65 5f 74 20 69 binds(void).{...A..for.(size_t.i
3d420 20 3d 20 30 3b 20 69 20 3c 20 73 69 7a 65 6f 66 28 62 69 6e 64 73 29 20 2f 20 73 69 7a 65 6f 66 .=.0;.i.<.sizeof(binds)./.sizeof
3d440 28 62 69 6e 64 73 5b 30 5d 29 3b 20 69 2b 2b 29 20 7b 00 00 00 25 20 20 20 20 63 6f 6e 73 74 20 (binds[0]);.i++).{...%....const.
3d460 73 74 72 75 63 74 20 62 69 6e 64 20 2a 62 20 3d 20 26 62 69 6e 64 73 5b 69 5d 3b 00 00 00 47 20 struct.bind.*b.=.&binds[i];...G.
3d480 20 20 20 73 77 63 5f 61 64 64 5f 62 69 6e 64 69 6e 67 28 62 2d 3e 74 79 70 65 2c 20 62 2d 3e 6d ...swc_add_binding(b->type,.b->m
3d4a0 6f 64 73 2c 20 62 2d 3e 6b 73 79 6d 2c 20 62 2d 3e 66 6e 2c 20 28 76 6f 69 64 20 2a 29 26 62 2d ods,.b->ksym,.b->fn,.(void.*)&b-
3d4c0 3e 61 72 67 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 47 73 74 61 74 69 63 >arg);......}....}.......Gstatic
3d4e0 20 76 6f 69 64 20 73 65 74 5f 66 6c 6f 61 74 69 6e 67 28 73 74 72 75 63 74 20 63 6c 69 65 6e 74 .void.set_floating(struct.client
3d500 20 2a 63 2c 20 62 6f 6f 6c 20 66 6c 6f 61 74 69 6e 67 2c 20 62 6f 6f 6c 20 72 61 69 73 65 29 20 .*c,.bool.floating,.bool.raise).
3d520 7b 00 00 00 09 20 20 69 66 20 28 21 63 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 {......if.(!c)........return;...
3d540 11 20 20 69 66 20 28 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 17 20 20 20 20 69 66 20 28 21 63 ...if.(floating).{........if.(!c
3d560 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 19 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 ->floating).{..........c->floati
3d580 6e 67 20 3d 20 74 72 75 65 3b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f ng.=.true;...%......wl_list_remo
3d5a0 76 65 28 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f ve(&c->tiled_link);...3......wl_
3d5c0 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c list_insert(&wm.floating,.&c->fl
3d5e0 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 17 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 72 61 69 oat_link);........}.else.if.(rai
3d600 73 65 29 20 7b 00 00 00 25 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 se).{...%......wl_list_remove(&c
3d620 2d 3e 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 33 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f ->float_link);...3......wl_list_
3d640 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f 6c insert(&wm.floating,.&c->float_l
3d660 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 7d 00 00 00 23 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 ink);........}...#....swc_window
3d680 5f 73 65 74 5f 73 74 61 63 6b 65 64 28 63 2d 3e 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 _set_stacked(c->win);......}.els
3d6a0 65 20 7b 00 00 00 16 20 20 20 20 69 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 e.{........if.(c->floating).{...
3d6c0 1a 20 20 20 20 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 66 61 6c 73 65 3b 00 00 00 25 20 .......c->floating.=.false;...%.
3d6e0 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 72 65 6d 6f 76 65 28 26 63 2d 3e 66 6c 6f 61 74 5f 6c 69 .....wl_list_remove(&c->float_li
3d700 6e 6b 29 3b 00 00 00 30 20 20 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d nk);...0......wl_list_insert(&wm
3d720 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 05 20 20 20 20 .tiled,.&c->tiled_link);........
3d740 7d 00 00 00 21 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 28 63 2d }...!....swc_window_set_tiled(c-
3d760 3e 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 24 73 74 61 74 69 63 >win);......}....}.......$static
3d780 20 76 6f 69 64 20 74 69 6c 65 28 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 29 20 7b 00 00 .void.tile(struct.screen.*s).{..
3d7a0 00 09 20 20 69 66 20 28 21 73 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 13 20 20 ....if.(!s)........return;......
3d7c0 73 74 72 75 63 74 20 63 6c 69 65 6e 74 20 2a 63 3b 00 00 00 1c 20 20 73 74 72 75 63 74 20 73 77 struct.client.*c;......struct.sw
3d7e0 63 5f 72 65 63 74 61 6e 67 6c 65 20 67 65 6f 6d 3b 00 00 00 3c 20 20 73 74 72 75 63 74 20 73 77 c_rectangle.geom;...<..struct.sw
3d800 63 5f 72 65 63 74 61 6e 67 6c 65 20 2a 73 63 72 5f 67 65 6f 6d 20 3d 20 26 73 2d 3e 73 63 72 2d c_rectangle.*scr_geom.=.&s->scr-
3d820 3e 75 73 61 62 6c 65 5f 67 65 6f 6d 65 74 72 79 3b 00 00 00 31 20 20 69 6e 74 33 32 5f 74 20 6f >usable_geometry;...1..int32_t.o
3d840 75 74 5f 67 61 70 73 20 3d 20 63 66 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f ut_gaps.=.cfg.gaps.+.cfg.border_
3d860 77 69 64 74 68 3b 00 00 00 34 20 20 69 6e 74 33 32 5f 74 20 69 6e 5f 67 61 70 73 20 3d 20 63 66 width;...4..int32_t.in_gaps.=.cf
3d880 67 2e 67 61 70 73 20 2b 20 63 66 67 2e 62 6f 72 64 65 72 5f 77 69 64 74 68 20 2a 20 32 3b 00 00 g.gaps.+.cfg.border_width.*.2;..
3d8a0 00 25 20 20 69 6e 74 33 32 5f 74 20 78 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 78 20 2b 20 6f 75 .%..int32_t.x.=.scr_geom->x.+.ou
3d8c0 74 5f 67 61 70 73 3b 00 00 00 25 20 20 69 6e 74 33 32 5f 74 20 79 20 3d 20 73 63 72 5f 67 65 6f t_gaps;...%..int32_t.y.=.scr_geo
3d8e0 6d 2d 3e 79 20 2b 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 2e 20 20 75 69 6e 74 33 32 5f 74 20 77 m->y.+.out_gaps;......uint32_t.w
3d900 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 77 69 64 74 68 20 2d 20 32 20 2a 20 6f 75 74 5f 67 61 70 .=.scr_geom->width.-.2.*.out_gap
3d920 73 3b 00 00 00 2f 20 20 75 69 6e 74 33 32 5f 74 20 68 20 3d 20 73 63 72 5f 67 65 6f 6d 2d 3e 68 s;.../..uint32_t.h.=.scr_geom->h
3d940 65 69 67 68 74 20 2d 20 32 20 2a 20 6f 75 74 5f 67 61 70 73 3b 00 00 00 0f 20 20 73 69 7a 65 5f eight.-.2.*.out_gaps;......size_
3d960 74 20 6e 20 3d 20 30 3b 00 00 00 45 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 t.n.=.0;...E..wl_list_for_each(c
3d980 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 69 66 20 28 69 73 5f ,.&wm.tiled,.tiled_link).if.(is_
3d9a0 74 69 6c 65 64 28 63 2c 20 73 29 29 20 6e 2b 2b 3b 00 00 00 0d 20 20 69 66 20 28 6e 20 3d 3d 20 tiled(c,.s)).n++;......if.(n.==.
3d9c0 30 29 00 00 00 0b 20 20 20 20 72 65 74 75 72 6e 3b 00 00 00 0f 20 20 69 66 20 28 6e 20 3d 3d 20 0)........return;......if.(n.==.
3d9e0 31 29 20 7b 00 00 00 30 20 20 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 61 63 68 28 63 2c 20 1).{...0....wl_list_for_each(c,.
3da00 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 00 00 1a 20 20 20 20 &wm.tiled,.tiled_link).{........
3da20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 11 20 20 20 20 20 20 ..if.(!is_tiled(c,.s))..........
3da40 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b ..continue;..........geom.x.=.x;
3da60 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 15 20 20 20 20 20 20 67 ..........geom.y.=.y;..........g
3da80 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e 68 65 69 eom.width.=.w;..........geom.hei
3daa0 67 68 74 20 3d 20 68 3b 00 00 00 2d 20 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 ght.=.h;...-......swc_window_set
3dac0 5f 67 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 0d 20 20 20 _geometry(c->win,.&geom);.......
3dae0 20 20 20 72 65 74 75 72 6e 3b 00 00 00 05 20 20 20 20 7d 00 00 00 03 20 20 7d 00 00 00 0f 20 20 ...return;........}......}......
3db00 73 69 7a 65 5f 74 20 69 20 3d 20 30 3b 00 00 00 2e 20 20 77 6c 5f 6c 69 73 74 5f 66 6f 72 5f 65 size_t.i.=.0;......wl_list_for_e
3db20 61 63 68 28 63 2c 20 26 77 6d 2e 74 69 6c 65 64 2c 20 74 69 6c 65 64 5f 6c 69 6e 6b 29 20 7b 00 ach(c,.&wm.tiled,.tiled_link).{.
3db40 00 00 18 20 20 20 20 69 66 20 28 21 69 73 5f 74 69 6c 65 64 28 63 2c 20 73 29 29 00 00 00 0f 20 .......if.(!is_tiled(c,.s)).....
3db60 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 00 00 00 1a 20 20 20 20 69 66 20 28 6d 61 73 74 65 72 .....continue;........if.(master
3db80 5f 77 69 64 74 68 20 3d 3d 20 30 29 00 00 00 3e 20 20 20 20 20 20 6d 61 73 74 65 72 5f 77 69 64 _width.==.0)...>......master_wid
3dba0 74 68 20 3d 20 28 28 77 20 2d 20 69 6e 5f 67 61 70 73 29 20 2a 20 63 66 67 2e 6d 61 73 74 65 72 th.=.((w.-.in_gaps).*.cfg.master
3dbc0 5f 77 69 64 74 68 29 20 2f 20 31 30 30 3b 00 00 00 11 20 20 20 20 69 66 20 28 69 20 3d 3d 20 30 _width)./.100;........if.(i.==.0
3dbe0 29 20 7b 00 00 00 11 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 3b 00 00 00 11 20 20 20 20 ).{..........geom.x.=.x;........
3dc00 20 20 67 65 6f 6d 2e 79 20 3d 20 79 3b 00 00 00 20 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 ..geom.y.=.y;..........geom.widt
3dc20 68 20 3d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 3b 00 00 00 16 20 20 20 20 20 20 67 65 6f 6d 2e h.=.master_width;..........geom.
3dc40 68 65 69 67 68 74 20 3d 20 68 3b 00 00 00 0c 20 20 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 1e 20 height.=.h;........}.else.{.....
3dc60 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 6e 20 3d 20 6e 20 2d 20 31 3b 00 00 00 .....uint32_t.stackn.=.n.-.1;...
3dc80 1b 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 69 64 78 20 3d 20 69 20 2d 20 31 3b 00 00 00 44 .......uint32_t.idx.=.i.-.1;...D
3dca0 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 63 6b 5f 68 65 69 67 68 74 20 3d 20 28 68 ......uint32_t.stack_height.=.(h
3dcc0 20 2d 20 69 6e 5f 67 61 70 73 20 2a 20 28 73 74 61 63 6b 6e 20 2d 20 31 29 29 20 2f 20 73 74 61 .-.in_gaps.*.(stackn.-.1))./.sta
3dce0 63 6b 6e 3b 00 00 00 2a 20 20 20 20 20 20 67 65 6f 6d 2e 78 20 3d 20 78 20 2b 20 6d 61 73 74 65 ckn;...*......geom.x.=.x.+.maste
3dd00 72 5f 77 69 64 74 68 20 2b 20 69 6e 5f 67 61 70 73 3b 00 00 00 32 20 20 20 20 20 20 67 65 6f 6d r_width.+.in_gaps;...2......geom
3dd20 2e 79 20 3d 20 79 20 2b 20 69 64 78 20 2a 20 28 73 74 61 63 6b 5f 68 65 69 67 68 74 20 2b 20 69 .y.=.y.+.idx.*.(stack_height.+.i
3dd40 6e 5f 67 61 70 73 29 3b 00 00 00 2e 20 20 20 20 20 20 67 65 6f 6d 2e 77 69 64 74 68 20 3d 20 77 n_gaps);..........geom.width.=.w
3dd60 20 2d 20 6d 61 73 74 65 72 5f 77 69 64 74 68 20 2d 20 69 6e 5f 67 61 70 73 3b 00 00 00 21 20 20 .-.master_width.-.in_gaps;...!..
3dd80 20 20 20 20 67 65 6f 6d 2e 68 65 69 67 68 74 20 3d 20 73 74 61 63 6b 5f 68 65 69 67 68 74 3b 00 ....geom.height.=.stack_height;.
3dda0 00 00 05 20 20 20 20 7d 00 00 00 2b 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 67 .......}...+....swc_window_set_g
3ddc0 65 6f 6d 65 74 72 79 28 63 2d 3e 77 69 6e 2c 20 26 67 65 6f 6d 29 3b 00 00 00 08 20 20 20 20 69 eometry(c->win,.&geom);........i
3dde0 2b 2b 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f ++;......}....}.......)void.new_
3de00 73 63 72 65 65 6e 28 73 74 72 75 63 74 20 73 77 63 5f 73 63 72 65 65 6e 20 2a 73 63 72 29 20 7b screen(struct.swc_screen.*scr).{
3de20 00 00 00 28 20 20 73 74 72 75 63 74 20 73 63 72 65 65 6e 20 2a 73 20 3d 20 6d 61 6c 6c 6f 63 28 ...(..struct.screen.*s.=.malloc(
3de40 73 69 7a 65 6f 66 28 2a 73 29 29 3b 00 00 00 0f 20 20 73 2d 3e 73 63 72 20 3d 20 73 63 72 3b 00 sizeof(*s));......s->scr.=.scr;.
3de60 00 00 20 20 20 73 2d 3e 78 20 3d 20 73 2d 3e 79 20 3d 20 73 2d 3e 77 20 3d 20 73 2d 3e 68 20 3d .....s->x.=.s->y.=.s->w.=.s->h.=
3de80 20 30 3b 00 00 00 28 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 73 63 72 65 .0;...(..wl_list_insert(&wm.scre
3dea0 65 6e 73 2c 20 26 73 2d 3e 6c 69 6e 6b 29 3b 00 00 00 15 20 20 69 66 20 28 21 77 6d 2e 73 65 6c ens,.&s->link);......if.(!wm.sel
3dec0 5f 73 63 72 65 65 6e 29 00 00 00 16 20 20 20 20 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 20 3d 20 _screen)........wm.sel_screen.=.
3dee0 73 3b 00 00 00 32 20 20 73 77 63 5f 73 63 72 65 65 6e 5f 73 65 74 5f 68 61 6e 64 6c 65 72 28 73 s;...2..swc_screen_set_handler(s
3df00 63 72 2c 20 26 73 63 72 65 65 6e 5f 68 61 6e 64 6c 65 72 2c 20 73 29 3b 00 00 00 01 7d 00 00 00 cr,.&screen_handler,.s);....}...
3df20 00 00 00 00 29 76 6f 69 64 20 6e 65 77 5f 77 69 6e 64 6f 77 28 73 74 72 75 63 74 20 73 77 63 5f ....)void.new_window(struct.swc_
3df40 77 69 6e 64 6f 77 20 2a 77 69 6e 29 20 7b 00 00 00 28 20 20 73 74 72 75 63 74 20 63 6c 69 65 6e window.*win).{...(..struct.clien
3df60 74 20 2a 63 20 3d 20 6d 61 6c 6c 6f 63 28 73 69 7a 65 6f 66 28 2a 63 29 29 3b 00 00 00 0f 20 20 t.*c.=.malloc(sizeof(*c));......
3df80 63 2d 3e 77 69 6e 20 3d 20 77 69 6e 3b 00 00 00 19 20 20 63 2d 3e 73 63 72 20 3d 20 77 6d 2e 73 c->win.=.win;......c->scr.=.wm.s
3dfa0 65 6c 5f 73 63 72 65 65 6e 3b 00 00 00 14 20 20 63 2d 3e 6d 61 70 70 65 64 20 3d 20 66 61 6c 73 el_screen;......c->mapped.=.fals
3dfc0 65 3b 00 00 00 23 20 20 63 2d 3e 66 6c 6f 61 74 69 6e 67 20 3d 20 77 6d 2e 67 6c 6f 62 61 6c 5f e;...#..c->floating.=.wm.global_
3dfe0 66 6c 6f 61 74 69 6e 67 3b 00 00 00 18 20 20 63 2d 3e 66 75 6c 6c 73 63 72 65 65 6e 20 3d 20 66 floating;......c->fullscreen.=.f
3e000 61 6c 73 65 3b 00 00 00 10 20 20 63 2d 3e 77 73 20 3d 20 66 61 6c 73 65 3b 00 00 00 14 20 20 69 alse;......c->ws.=.false;......i
3e020 66 20 28 63 2d 3e 66 6c 6f 61 74 69 6e 67 29 20 7b 00 00 00 31 20 20 20 20 77 6c 5f 6c 69 73 74 f.(c->floating).{...1....wl_list
3e040 5f 69 6e 73 65 72 74 28 26 77 6d 2e 66 6c 6f 61 74 69 6e 67 2c 20 26 63 2d 3e 66 6c 6f 61 74 5f _insert(&wm.floating,.&c->float_
3e060 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e 74 link);...!....wl_list_init(&c->t
3e080 69 6c 65 64 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 iled_link);...4....swc_window_se
3e0a0 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c 20 t_handler(win,.&window_handler,.
3e0c0 63 29 3b 00 00 00 20 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 73 74 61 63 6b 65 c);........swc_window_set_stacke
3e0e0 64 28 77 69 6e 29 3b 00 00 00 0a 20 20 7d 20 65 6c 73 65 20 7b 00 00 00 2e 20 20 20 20 77 6c 5f d(win);......}.else.{........wl_
3e100 6c 69 73 74 5f 69 6e 73 65 72 74 28 26 77 6d 2e 74 69 6c 65 64 2c 20 26 63 2d 3e 74 69 6c 65 64 list_insert(&wm.tiled,.&c->tiled
3e120 5f 6c 69 6e 6b 29 3b 00 00 00 21 20 20 20 20 77 6c 5f 6c 69 73 74 5f 69 6e 69 74 28 26 63 2d 3e _link);...!....wl_list_init(&c->
3e140 66 6c 6f 61 74 5f 6c 69 6e 6b 29 3b 00 00 00 34 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 float_link);...4....swc_window_s
3e160 65 74 5f 68 61 6e 64 6c 65 72 28 77 69 6e 2c 20 26 77 69 6e 64 6f 77 5f 68 61 6e 64 6c 65 72 2c et_handler(win,.&window_handler,
3e180 20 63 29 3b 00 00 00 1e 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 65 74 5f 74 69 6c 65 64 .c);........swc_window_set_tiled
3e1a0 28 77 69 6e 29 3b 00 00 00 03 20 20 7d 00 00 00 17 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 73 68 (win);......}......swc_window_sh
3e1c0 6f 77 28 77 69 6e 29 3b 00 00 00 11 20 20 66 6f 63 75 73 28 63 2c 20 74 72 75 65 29 3b 00 00 00 ow(win);......focus(c,.true);...
3e1e0 16 20 20 74 69 6c 65 28 77 6d 2e 73 65 6c 5f 73 63 72 65 65 6e 29 3b 00 00 00 01 7d 00 00 00 00 ...tile(wm.sel_screen);....}....
3e200 00 00 00 3b 76 6f 69 64 20 6e 65 77 5f 64 65 76 69 63 65 28 73 74 72 75 63 74 20 6c 69 62 69 6e ...;void.new_device(struct.libin
3e220 70 75 74 5f 64 65 76 69 63 65 20 2a 64 65 76 29 20 7b 20 28 76 6f 69 64 29 64 65 76 3b 20 7d 00 put_device.*dev).{.(void)dev;.}.
3e240 00 00 00 00 00 00 21 69 6e 74 20 6d 61 69 6e 28 69 6e 74 20 61 72 67 63 2c 20 63 68 61 72 20 2a ......!int.main(int.argc,.char.*
3e260 2a 61 72 67 76 29 20 7b 00 00 00 1f 20 20 62 6f 6f 6c 20 73 63 72 65 65 6e 73 68 6f 74 5f 6d 6f *argv).{......bool.screenshot_mo
3e280 64 65 20 3d 20 66 61 6c 73 65 3b 00 00 00 18 20 20 63 68 61 72 20 2a 66 69 6c 65 6e 61 6d 65 20 de.=.false;......char.*filename.
3e2a0 3d 20 4e 55 4c 4c 3b 00 00 00 3a 20 20 69 66 20 28 61 72 67 63 20 3d 3d 20 33 20 26 26 20 73 74 =.NULL;...:..if.(argc.==.3.&&.st
3e2c0 72 63 6d 70 28 61 72 67 76 5b 31 5d 2c 20 22 2d 2d 73 63 72 65 65 6e 73 68 6f 74 22 29 20 3d 3d rcmp(argv[1],."--screenshot").==
3e2e0 20 30 29 20 7b 00 00 00 1b 20 20 20 20 73 63 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 20 3d 20 74 .0).{........screenshot_mode.=.t
3e300 72 75 65 3b 00 00 00 17 20 20 20 20 66 69 6c 65 6e 61 6d 65 20 3d 20 61 72 67 76 5b 32 5d 3b 00 rue;........filename.=.argv[2];.
3e320 00 00 03 20 20 7d 00 00 00 0a 20 20 73 65 74 75 70 28 29 3b 00 00 00 18 20 20 69 66 20 28 73 63 .....}......setup();......if.(sc
3e340 72 65 65 6e 73 68 6f 74 5f 6d 6f 64 65 29 20 7b 00 00 00 26 20 20 20 20 69 6e 74 20 72 20 3d 20 reenshot_mode).{...&....int.r.=.
3e360 74 61 6b 65 5f 73 63 72 65 65 6e 73 68 6f 74 28 66 69 6c 65 6e 61 6d 65 29 3b 00 00 00 1f 20 20 take_screenshot(filename);......
3e380 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 ..wl_display_destroy(wm.dpy);...
3e3a0 1a 20 20 20 20 72 65 74 75 72 6e 20 72 20 21 3d 20 30 20 3f 20 31 20 3a 20 30 3b 00 00 00 03 20 .....return.r.!=.0.?.1.:.0;.....
3e3c0 20 7d 00 00 00 19 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 72 75 6e 28 77 6d 2e 64 70 79 29 3b 00 .}......wl_display_run(wm.dpy);.
3e3e0 00 00 11 20 20 73 77 63 5f 66 69 6e 61 6c 69 7a 65 28 29 3b 00 00 00 1d 20 20 77 6c 5f 64 69 73 .....swc_finalize();......wl_dis
3e400 70 6c 61 79 5f 64 65 73 74 72 6f 79 28 77 6d 2e 64 70 79 29 3b 00 00 00 0b 20 20 72 65 74 75 72 play_destroy(wm.dpy);......retur
3e420 6e 20 30 3b 00 00 00 01 7d 00 00 00 00 00 00 00 29 2f 2a 20 2d 2d 2d 20 42 69 6e 64 20 48 61 6e n.0;....}.......)/*.---.Bind.Han
3e440 64 6c 65 72 73 20 28 44 65 66 69 6e 69 74 69 6f 6e 73 29 20 2d 2d 2d 20 2a 2f 00 00 00 00 00 00 dlers.(Definitions).---.*/......
3e460 00 47 76 6f 69 64 20 73 70 61 77 6e 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f .Gvoid.spawn(void.*data,.uint32_
3e480 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 t.time,.uint32_t.value,.uint32_t
3e4a0 20 73 74 61 74 65 29 20 7b 00 00 00 2d 20 20 69 66 20 28 73 74 61 74 65 20 21 3d 20 57 4c 5f 4b .state).{...-..if.(state.!=.WL_K
3e4c0 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 00 00 00 0b 20 20 EYBOARD_KEY_STATE_PRESSED)......
3e4e0 20 20 72 65 74 75 72 6e 3b 00 00 00 1a 20 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 2a 63 6d 64 20 ..return;......const.char.**cmd.
3e500 3d 20 64 61 74 61 3b 00 00 00 14 20 20 69 66 20 28 66 6f 72 6b 28 29 20 3d 3d 20 30 29 20 7b 00 =.data;......if.(fork().==.0).{.
3e520 00 00 0d 20 20 20 20 73 65 74 73 69 64 28 29 3b 00 00 00 21 20 20 20 20 65 78 65 63 76 70 28 63 .......setsid();...!....execvp(c
3e540 6d 64 5b 30 5d 2c 20 28 63 68 61 72 20 2a 2a 29 63 6d 64 29 3b 00 00 00 17 20 20 20 20 65 78 69 md[0],.(char.**)cmd);........exi
3e560 74 28 45 58 49 54 5f 46 41 49 4c 55 52 45 29 3b 00 00 00 03 20 20 7d 00 00 00 01 7d 00 00 00 00 t(EXIT_FAILURE);......}....}....
3e580 00 00 00 46 76 6f 69 64 20 71 75 69 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 ...Fvoid.quit(void.*data,.uint32
3e5a0 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f _t.time,.uint32_t.value,.uint32_
3e5c0 74 20 73 74 61 74 65 29 20 7b 00 00 00 1f 20 20 77 6c 5f 64 69 73 70 6c 61 79 5f 74 65 72 6d 69 t.state).{......wl_display_termi
3e5e0 6e 61 74 65 28 77 6d 2e 64 70 79 29 3b 00 00 00 01 7d 00 00 00 00 00 00 00 3a 76 6f 69 64 20 66 nate(wm.dpy);....}.......:void.f
3e600 6f 63 75 73 5f 6e 65 78 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 ocus_next(void.*data,.uint32_t.t
3e620 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 2e 20 20 20 20 20 20 20 20 ime,.uint32_t.value,............
3e640 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 ........uint32_t.state).{./*.stu
3e660 62 20 2a 2f 20 7d 00 00 00 3a 76 6f 69 64 20 66 6f 63 75 73 5f 70 72 65 76 28 76 6f 69 64 20 2a b.*/.}...:void.focus_prev(void.*
3e680 64 61 74 61 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 76 61 data,.uint32_t.time,.uint32_t.va
3e6a0 6c 75 65 2c 00 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 lue,....................uint32_t
3e6c0 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 4a 76 6f 69 64 20 6b .state).{./*.stub.*/.}...Jvoid.k
3e6e0 69 6c 6c 5f 73 65 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d ill_sel(void.*data,.uint32_t.tim
3e700 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 e,.uint32_t.value,.uint32_t.stat
3e720 65 29 20 7b 00 00 00 14 20 20 69 66 20 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 6e 74 29 00 00 00 29 e).{......if.(wm.sel_client)...)
3e740 20 20 20 20 73 77 63 5f 77 69 6e 64 6f 77 5f 63 6c 6f 73 65 28 77 6d 2e 73 65 6c 5f 63 6c 69 65 ....swc_window_close(wm.sel_clie
3e760 6e 74 2d 3e 77 69 6e 29 3b 00 00 00 01 7d 00 00 00 3a 76 6f 69 64 20 6d 6f 75 73 65 5f 6d 6f 76 nt->win);....}...:void.mouse_mov
3e780 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e e(void.*data,.uint32_t.time,.uin
3e7a0 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t32_t.value,....................
3e7c0 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 uint32_t.state).{./*.stub.*/.}..
3e7e0 00 3c 76 6f 69 64 20 6d 6f 75 73 65 5f 72 65 73 69 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 .<void.mouse_resize(void.*data,.
3e800 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 uint32_t.time,.uint32_t.value,..
3e820 00 30 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 73 74 61 .0..................uint32_t.sta
3e840 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 3c 76 6f 69 64 20 74 6f 67 67 6c te).{./*.stub.*/.}...<void.toggl
3e860 65 5f 66 6c 6f 61 74 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d e_float(void.*data,.uint32_t.tim
3e880 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 30 20 20 20 20 20 20 20 20 20 20 e,.uint32_t.value,...0..........
3e8a0 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 ........uint32_t.state).{./*.stu
3e8c0 62 20 2a 2f 20 7d 00 00 00 43 76 6f 69 64 20 74 6f 67 67 6c 65 5f 66 6c 6f 61 74 5f 67 6c 6f 62 b.*/.}...Cvoid.toggle_float_glob
3e8e0 61 6c 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 al(void.*data,.uint32_t.time,.ui
3e900 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 37 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt32_t.value,...7...............
3e920 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 ..........uint32_t.state).{./*.s
3e940 74 75 62 20 2a 2f 20 7d 00 00 00 3b 76 6f 69 64 20 6d 61 73 74 65 72 5f 6e 65 78 74 28 76 6f 69 tub.*/.}...;void.master_next(voi
3e960 64 20 2a 64 61 74 61 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 d.*data,.uint32_t.time,.uint32_t
3e980 20 76 61 6c 75 65 2c 00 00 00 2f 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 .value,.../.................uint
3e9a0 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 3b 76 6f 32_t.state).{./*.stub.*/.}...;vo
3e9c0 69 64 20 6d 61 73 74 65 72 5f 70 72 65 76 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 id.master_prev(void.*data,.uint3
3e9e0 32 5f 74 20 74 69 6d 65 2c 20 75 69 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 2f 20 20 20 2_t.time,.uint32_t.value,.../...
3ea00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 ..............uint32_t.state).{.
3ea20 2f 2a 20 73 74 75 62 20 2a 2f 20 7d 00 00 00 3d 76 6f 69 64 20 6d 61 73 74 65 72 5f 72 65 73 69 /*.stub.*/.}...=void.master_resi
3ea40 7a 65 28 76 6f 69 64 20 2a 64 61 74 61 2c 20 75 69 6e 74 33 32 5f 74 20 74 69 6d 65 2c 20 75 69 ze(void.*data,.uint32_t.time,.ui
3ea60 6e 74 33 32 5f 74 20 76 61 6c 75 65 2c 00 00 00 31 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt32_t.value,...1...............
3ea80 20 20 20 20 75 69 6e 74 33 32 5f 74 20 73 74 61 74 65 29 20 7b 20 2f 2a 20 73 74 75 62 20 2a 2f ....uint32_t.state).{./*.stub.*/
3eaa0 20 7d 35 81 f5 18 00 00 00 00 33 00 00 00 0a 00 00 00 f4 00 00 00 3d 00 00 00 2d 01 00 00 12 00 .}5.......3...........=...-.....
3eac0 00 00 c9 05 00 00 00 00 00 00 97 1f 00 00 00 00 00 00 49 21 00 00 00 00 00 00 35 81 5f d0 00 00 ..................I!......5._...
3eae0 00 7d 00 00 00 00 00 00 00 00 00 00 00 7f 00 00 00 7e 00 00 01 51 00 00 00 00 00 00 00 00 ff ff .}...............~...Q..........
3eb00 ff 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 ................................
3eb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3eb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3eb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3eb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3eba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ebc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ebe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ec00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ec20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ec40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3ec60 69 95 91 c8 04 01 00 00 00 00 00 f5 18 00 00 01 51 00 00 01 52 00 00 00 00 00 00 00 00 f5 18 00 i...............Q...R...........
3ec80 00 01 51 00 00 01 52 00 00 00 00 00 00 00 1b 00 00 00 21 6c 61 79 65 72 72 75 6c 65 20 3d 20 62 ..Q...R...........!layerrule.=.b
3eca0 6c 75 72 2c 20 67 74 6b 2d 6c 61 79 65 72 2d 73 68 65 6c 6c 00 00 00 00 00 00 00 3a 23 20 68 74 lur,.gtk-layer-shell.......:#.ht
3ecc0 74 70 73 3a 2f 2f 77 69 6b 69 2e 68 79 70 72 2e 6c 61 6e 64 2f 43 6f 6e 66 69 67 75 72 69 6e 67 tps://wiki.hypr.land/Configuring
3ece0 2f 56 61 72 69 61 62 6c 65 73 2f 23 64 65 63 6f 72 61 74 69 6f 6e 00 00 00 0c 64 65 63 6f 72 61 /Variables/#decoration....decora
3ed00 74 69 6f 6e 20 7b 00 00 00 10 20 20 20 20 72 6f 75 6e 64 69 6e 67 20 3d 20 30 00 00 00 16 20 20 tion.{........rounding.=.0......
3ed20 20 20 72 6f 75 6e 64 69 6e 67 5f 70 6f 77 65 72 20 3d 20 32 00 00 00 00 00 00 00 3a 20 20 20 20 ..rounding_power.=.2.......:....
3ed40 23 20 43 68 61 6e 67 65 20 74 72 61 6e 73 70 61 72 65 6e 63 79 20 6f 66 20 66 6f 63 75 73 65 64 #.Change.transparency.of.focused
3ed60 20 61 6e 64 20 75 6e 66 6f 63 75 73 65 64 20 77 69 6e 64 6f 77 73 00 00 00 18 20 20 20 20 61 63 .and.unfocused.windows........ac
3ed80 74 69 76 65 5f 6f 70 61 63 69 74 79 20 3d 20 31 2e 30 00 00 00 1a 20 20 20 20 69 6e 61 63 74 69 tive_opacity.=.1.0........inacti
3eda0 76 65 5f 6f 70 61 63 69 74 79 20 3d 20 31 2e 30 00 00 00 00 00 00 00 0c 20 20 20 20 73 68 61 64 ve_opacity.=.1.0............shad
3edc0 6f 77 20 7b 00 00 00 16 20 20 20 20 20 20 20 20 65 6e 61 62 6c 65 64 20 3d 20 74 72 75 65 00 00 ow.{............enabled.=.true..
3ede0 00 11 20 20 20 20 20 20 20 20 72 61 6e 67 65 20 3d 20 34 00 00 00 18 20 20 20 20 20 20 20 20 72 ..........range.=.4............r
3ee00 65 6e 64 65 72 5f 70 6f 77 65 72 20 3d 20 33 00 00 00 1e 20 20 20 20 20 20 20 20 63 6f 6c 6f 72 ender_power.=.3............color
3ee20 20 3d 20 72 67 62 61 28 31 61 31 61 31 61 65 65 29 00 00 00 05 20 20 20 20 7d 00 00 00 00 00 00 .=.rgba(1a1a1aee)........}......
3ee40 00 38 20 20 20 20 23 20 68 74 74 70 73 3a 2f 2f 77 69 6b 69 2e 68 79 70 72 2e 6c 61 6e 64 2f 43 .8....#.https://wiki.hypr.land/C
3ee60 6f 6e 66 69 67 75 72 69 6e 67 2f 56 61 72 69 61 62 6c 65 73 2f 23 62 6c 75 72 00 00 00 0a 20 20 onfiguring/Variables/#blur......
3ee80 20 20 62 6c 75 72 20 7b 00 00 00 16 20 20 20 20 20 20 20 20 65 6e 61 62 6c 65 64 20 3d 20 74 72 ..blur.{............enabled.=.tr
3eea0 75 65 00 00 00 10 20 20 20 20 20 20 20 20 73 69 7a 65 20 3d 20 33 00 00 00 12 20 20 20 20 20 20 ue............size.=.3..........
3eec0 20 20 70 61 73 73 65 73 20 3d 20 31 00 00 00 19 20 20 20 20 20 20 20 20 76 69 62 72 61 6e 63 79 ..passes.=.1............vibrancy
3eee0 20 3d 20 30 2e 31 36 39 36 00 00 00 1a 09 09 6e 65 77 5f 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 .=.0.1696......new_optimizations
3ef00 20 3d 20 74 72 75 65 00 00 00 05 20 20 20 20 7d 00 00 00 01 7d 35 81 f5 18 00 00 00 00 51 01 00 .=.true........}....}5.......Q..
3ef20 00 00 00 00 00 00 00 00 00 00 00 00 00 1b 00 00 00 00 00 00 00 ea 25 00 00 00 00 00 00 00 00 00 ......................%.........
3ef40 00 00 00 00 00 35 02 00 00 00 00 00 00 35 81 5f d0 00 00 00 5e 00 00 00 00 00 00 00 00 00 00 00 .....5.......5._....^...........
3ef60 60 00 00 00 5f 00 00 00 9a 00 00 00 00 00 00 00 00 ff ff ff ff 00 01 00 00 00 00 00 00 00 00 00 `..._...........................
3ef80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3efa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3efc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3efe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9a 00 00 00 02 00 00 00 00 00 00 00 9a 00 ................................
3f0c0 00 00 02 00 00 00 00 00 00 00 56 00 00 00 02 00 00 00 00 69 95 81 bd 04 01 00 00 00 00 00 f5 18 ..........V........i............
3f0e0 00 00 00 99 00 00 00 9b 00 00 00 00 00 00 00 00 35 81 f5 18 00 00 00 00 99 00 00 00 00 00 00 00 ................5...............
3f100 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 65 11 00 00 00 00 00 00 42 00 00 00 00 00 00 00 ................e.......B.......
3f120 00 00 00 00 00 00 00 00 35 81 5f d0 00 00 00 41 00 00 00 00 00 00 00 00 00 00 00 43 00 00 00 42 ........5._....A...........C...B
3f140 00 00 00 10 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 ................................
3f160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 69 95 7e d9 04 01 00 00 00 00 00 f5 18 00 00 00 0f 00 ..............i.~...............
3f2c0 00 00 11 00 00 02 27 00 00 00 01 00 00 00 05 74 72 75 63 74 35 81 f5 18 00 00 00 00 0f 00 00 00 ......'........truct5...........
3f2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 86 01 00 00 00 00 00 00 00 00 00 00 ................................
3f300 00 00 00 00 02 00 00 00 00 00 00 00 f5 18 00 00 00 00 0f 00 00 00 01 00 00 00 00 00 00 00 01 00 ................................
3f320 00 00 00 00 00 00 04 00 00 00 87 01 00 00 00 00 00 00 01 00 00 00 00 00 00 00 04 00 00 00 00 00 ................................
3f340 00 00 35 81 5f d0 00 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 1e 00 00 00 1d 00 00 00 0d 00 00 ..5._...........................
3f360 00 1e 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 00 00 ................................
3f380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
3f4c0 00 00 00 00 00 00 00 00 69 95 6f 66 04 01 00 00 00 00 00 f5 18 00 00 00 0c 00 00 00 0e 00 00 00 ........i.of....................
3f4e0 00 00 00 00 00 35 81 f5 18 00 00 00 00 0c 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 .....5..........................
3f500 00 00 00 00 00 fd 00 00 00 00 00 00 00 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 35 81 e7 .............)...............5..
3f520 aa .