all repos — ryudo

the floatiling window manager that flows; fork of rio from plan9port

branches

1.1.0

1.2.0

1.3.0

1.4.0

main

tags

v1.4.2

v1.4.2

- remove usleep code in mapreq as with the associated code moved here it is no longer needed
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmPWn2EACgkQO3+8IhRO
Y5j1yg//VdDS7iXXavDjExsTIGHMYCb/l6zHrgVnDx1mqg9kmTBLMtBbBIL+qVPQ
qtTDx0IBHJQfOpsebA+irN30XNr2upD7QSj3XVoMCza8W5v+lvCeb0Tnhtvr0zco
sOfb7QMhlvYImEA9k7u9+DFw4xMfcPKMQ4hgoXXZWYijS1f9iG+lpEY5QHP2U+X5
UZcLLxC3te2AMRdQKxHnX6tkpyJ98PhppT7gz8gpW0OVH2uY59S8w70W7/1okJbG
Ucr5d0lY+kc71c5uCdqjpGJWt0kWQQL+REmhnsHCU3YoHnWwI3zyR11341GSEA8p
33MGsoRaS9iu65mb3+/YQ1ocL82tEOtAdS/cz+YTZ7t+Vt/27A32xAWK7C4N4Pon
/KjNup8q/wEnRy2IVIeMvXvodMFZHitO7G0JbcPiJ9YzISsbtJqjM4mHGyjlWMj1
lZ2Vt/O5SCr05Y35jRIPcVAkiKrKa7mpKGqYVSTfX9pBPMBBQJH6V0Eo3VY6xM2J
mf17zfSxQp98e7SoCfxsxu6zN4wzOU+olRTGtqJi4iRPXTQr4qkXmLjliMprWzLC
0E9OkO5J7whf2IxfTnN3ctMjVMe+siRj5PY/wFGM2S08+OMZ5CqzH2HnQ+CEetJW
RmM976s0NPbdzzLyfS9J+MoJWvzdh/tZy1NhsE6pjfPe7WCwRE8=
=aZBA
-----END PGP SIGNATURE-----

v1.4.1

v1.4.1

- fix code that waits with usleep after spawning a window with the keyboard to shape it
- make a config option (optional, defaults in code) to configure the usleep interval
- update the manpage and version string (forgot to do it with 1.4.0)
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmPTFCkACgkQO3+8IhRO
Y5iIBg//ZMmI2Yk5bzODYH5qbLMVddk4HCVzenY3jaTSFLUkMk4xlbv8NbKC96oL
HvAK552XV3vF1aOcFaPUkfY6TXDhwQWV9qL7RKb7tEbe/P6rhKINVWtGYnPDCcDb
tGJRzqig1TwPodbqvDCArb6m2Fde5C4Xd/8tw1XybLrif3DrrkbFWmML1mvHhe2O
E4cYBS3xNKUnvdiyqNhg9Ea43GrHLmuxizA9negOKtk8RXG6TH1f783PQBhUwnrJ
tJX8rquU0C1aHHzJ7FvDwwMzaRluloZHmVj0T8qG6q/GbhFNFdtTZBO3g+iFno38
CAi99sLNNOIE28M8amp69U+4Tnt1rcUTYLlIOb5HyCl2zOu/nYol6cufl6R4N1Rm
rv8xvP+EXxWyxD6AI03et7jxpVv5ZJeoouTVra7hEPDH1YgB7yzotlKFmss1SR3G
zcxv8rQ9RmqclGktWeoGwhDs5aluY5j8S05tm74hc8UNUsyaLOR9c1YDeQA3jtAZ
ZaaIEnvew/Jx9WhB+xYtw5jjwPPnu+ALre79SnWqv5WeUro2YVdVhh9Y4mqQCkU9
K+j0ipqi1bM7L/3r6c7Fgpld8u3reMt6QrGpQi0XqQoa3KT2Bh9lXtywzbDSdwOh
JTxWVJ+PSJ8TPzLOOEGwvGGWKCFF7T4qHillMFf3XQcOTyXeglY=
=tRFC
-----END PGP SIGNATURE-----

v1.4.0

v1.4.0

- change mouse focus behavior to pass click through on all 3 buttons
- slight logic fixes
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmNgogsACgkQO3+8IhRO
Y5i95w/+KE7PztX2prKAiEUcskVGZ8LAkRMK4dC7oG74B9K3EFVogDJbe29B195c
vQOOzvOoVCRm4l+pBI7Ordft8sMzzJ+7f+CBKupegmUIXNLpjLMGA4+o9AFAm/qa
1pX8uYngZAn+wAHTfnZ38A9J46gc7NzU+dMkFreg4cbAdr9aH/bEtoQeHfd557BQ
Caze0aSfTkbvuH6hPkTj9IhWAzoKAIKIu3lYBWYA8+P5qaqiYBvF7UgChLKRy6C4
ddYZrbOeVcTjzVZABTvZgpz9XMdILIORTTKgtJ7mNdeVIuvqycKwu62uk6be2HZt
lQqCCnso2Ka5vfYoYLSk0bxLGdoNTtPiyAGE3oRRBJ8hfSJxPVl6uOJ9BQOjRZ0w
VmhQA9m93JC1yBbTBC5tbL+ZXuf0tK4GtD1PV+lsRE5H56engwaMLbokIvUingdk
ef07aMY35NLCD3Sea1vw4ril6yd0MPpujuqykNAcUf1uyxT3QgQLOA4zd6GOoJwt
Gt6fWQhL08FVLEE7B2/a1/syxnk5yYh4tX+xaP7CsDbbJvsEv4nnXk5jJAhp5NBp
UcQ/A6dL28iVSNhXqMKXIDWLm+Qr/7A3OJaC4aCVBO9aL4A+aht8NiyulN8bwPBo
XPh7YJ4NfsCaDePbS4SaJqVH2VAdAsro29W7iXe7AlYiir+6Kzs=
=DEdN
-----END PGP SIGNATURE-----

v1.3.4

v1.3.4:

- fix keyboard focus being locked until new window is drawn when unmapping some window (nitrogen, libreoffice) without another window for focus to fall back to
- fix logic for monitorinfo refresh if number of monitors decreases but there are still at least two left
- tweak final focusing logic when switching virtual desktops
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIoRz4ACgkQO3+8IhRO
Y5g4NQ//SITi2OFmRCCZTjEQKI5++JwpJ0I37Eqe7ADbuyQguIxPmmks1bXLMiaE
Ykp2sNFeIZvpwlt1qNRmnIJWxSxW3K3vvLXtUCsZXzW9PqPFfZtDlL4t+9ySWz4r
a2qKsowZKMmVPvzkI5ziE1tERd3ZnSmZIwAUeAIlpgJgT/dQCSSm1B2qSwDYcLD5
iODtv9rVKWHUZ7RR3fhChfT8zQRvaZ38BYwOp75P3BvuXo2aByCY40pc6HhyzB69
+CDv/nZ+2RpmYxfTLFCa56aarW2cc+U+IXCauw5f6k3qp6azUkLxNRgUDxEVD5IF
OxMFZTkAy8IpQRXrtFzjkSgTUuCDoV+GS0pRDmLX8UXZkjHhNvJseNRkXsOeXhtL
PK+g1gwUC5Tfk2Nu6kytmddV0G/xS979HACUWHXr3K50llggSOhjjOTgNjVSGmEy
uBqcddEwd+irzqnM+umyomAKNCWY0S10Ah5F4I+HgBeYub7a0w5I3vp5T2Zher4L
8dIsFd+A8Bgzni9XM+vmAfjNgjXGiWYpXgIKBMi28dFXmOoz0fY38HjrpYAGJoDi
i5Q/Uee5XXU4UBFEZkoSeMMvPHeTL22wQJ46bckTuGQc6L0AZTcWbV/pRB8d2kAh
dDJ3EhVSGefeoOl+MRxOObRLqnA7NTJoid/+yjM8+/XbYDAJPyE=
=80gV
-----END PGP SIGNATURE-----

v1.3.3

v1.3.3

- kinda fix behavior if closing/hiding active window immediately after switching from empty desktop
  - it should revert but the revert is unset if previous desktop has no current and closed/hidden window is not transient
  - for now we shuffle to keep something active
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIlLqMACgkQO3+8IhRO
Y5is2Q/+IQNwGffzV20oxbzCU7X3iekKuLs0LIsKE6U7h4xpKB6kHaENNIIcqxBq
NFn0y3LI/A+gHEWkWsPx2Wg6VwmTCDqB2DKJew/vMEzk+IVC0N2xwptZNKD/r1im
QSCQ0btBYiAGNaixYYMLF9iQo6IEHylqddj+2lUUFYqcbz1CkIYZz/WrITtdz89+
KG72IOUcQEtE2JuPRjzR8TmoieRL9Y9mtGqQQ+croHZXe3fAx9i1Do72Z6Bxlv6L
n6eMi4hn3Aogy4GQlT7xPrPQ8H2D7IV3eevu+iwmfVy4Mom/RFGYdfK3K4tixf50
OT9d0Z0xwKXqafDK8QM3ZoFBp5+GwCKDQ3wZAUtbFkeJIvEv6vaAiv+w1W1xrDM5
WB9Un15JvMNFztK8J782vWreerOZ2CQD6iY+X9h8ydx7ndvriXne0vgiZLJsuVcV
9Vz5OtAS086cMYus8iNLy6DjQeeElDlQfEJj1/Lp0H0/jiel3WgZgHkMReyFEPhk
GO850I14AY+/4rUEw3pXtihBK/4USPnSQMF6y5Ua+FFpjLo110Te1VYcwDoTJo0c
ow8GXDWJv8ZhIpzQCL0zQkVd1Dn5vm5X2hUtBH5X9FMmFiTTn0O9dgaf2sCB5u0x
Y+MuQ2lKGrKHRznm3NWGGvg7OUQd+iBTOehAYXD3kD8KvqP3TOw=
=WZhz
-----END PGP SIGNATURE-----

v1.3.2

1.3.2 - focus model improvements

Fix more regressions introduced in the focus model with multimonitor support.
Now closing or minimizing the active window should focus:
  - the parent if it was transient, or
  - the last visible window that was focused on that monitor
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIjnGsACgkQO3+8IhRO
Y5gT+Q//Sd6M5l/rn+YVCmTtjOUT/QEbmV5PG/wPTbhHwEhiafnjYgoXn86tWMTt
Xn1YizHAXITF0MKDonAUBG3dy1wtKHlNgYwVVNJhh5srGLCPqA9DjtRsDN2hg1Y6
Gb7l0rOex4G3NORF6scjqCnGktXsurvrfA8x4pkQgKD1AtJ96+fq0BBSbzyZYVU1
pftsfE9eBqi5GlQDXWwcsB4b+hDPRwTPupfiFVjlAp+eGD6AeRIuG45vsHAWmdC6
JTzoeyjVdKPlf5QaP8tLEXaqHr57Sw0Mx6Xd3lg5LB8qSHvxvk4w34H1mGtmoV2h
lhLCsfxngUVFMilOsd47N8A77RSThHUzdkNzpo7wHxKAMd0/fJEY7ZE/SGNWuqCf
BP/YbOhcow6B6oswE49rXW7/DHNn9m/qLnopLCSWtR+VgU1iLZKIURg6ggP6Bc2A
SVXZMzbglbZIVE+XnziBqeLhX+BTcp3lUPtAraNrGL5q6sHlCBrp+ViR6mZ9+BzC
lRzVHEF5tJygWxJ10hzGDBCGuO6OJeNjZchWfdefto4VKKdCZmxEqZ0zrsQkny41
lnzLsVvZSPzKfZJKdUkzyvd8NV1OruYCb9/z9X6c0VHOZDSsWRmOZzb3spSOVPjh
PUuq64/AClPiq3Iy+7c6VBIeaft/cBLciz87/kKKTsNJS73V+ps=
=RfJ6
-----END PGP SIGNATURE-----

v1.3.1

v1.3.1 - bugfixes

- hiding a window will switch focus to a window in the same monitor
- fixed configure request handling to enforce drawing borders on windows unless they are maximized
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIejuAACgkQO3+8IhRO
Y5hpuA/+Mes+PGG9LxVtzXYm/DxFCc8XfV+zQ4A70BitlDZcz0dxIkwlrtIrOFEa
qYmqUBqHDEKOVJhjDy1tmpf7Bn5J08IjNEDaY6iv7pOOJMyKFk8GztNdMnkUr5Cj
EtiIJuOpMJwnkGZMZZIqkPxCYi4R3nyAQGE4ejUaFExDFH86OIXdaHyIzyiUV3rV
1nv0BfKrzq5f7AoZOeQ1OZsvToeV8DCdRTh5t8BgPZ+pqtnJ4MmV3u8W75XcaxKS
fJxhtDAwfZHqmbfah3Lyk1DJWYRl0QZn4kBqbOvkDoEOS58XmUZL8MKhwv0QnnD9
8Qv1OWXEEpQdvdzV3HwU/uFNh7FL2vg/SPRof91+0wiakU8/AoQKwaHC98EFqyDO
L3Mc4I+zeEp9AB8+4iHQkJVBgSvXg8pYuHZ1v1fcpkcAlVYyhn+3gVsyjiDbr7wl
NLvK7XEbv2gENw2aOsBy/3IZk8OVA5f4OxnDmICRmj6QF9gc44p4Uf7hAfL+7Ws/
uEHjKYemTsU4YZ2oTVdhwiK6a/SPi2MFThWkGU0xSsI0a/kzOjLPCo03QMnzF+V/
VMjpciBuJ0SqyJFJHgRKxf+D07Cy+OijCOq9WUtTihP7PJkfujZflDhXkkLEyiGz
PLHDvJ7db5/xezmKqmLLPgpnkQzUBHKbEUWV2quGX3dkQZ4kz4o=
=hx5V
-----END PGP SIGNATURE-----

v1.3.0

v1.3.0 - multimonitor support

- Now requires libXrandr
- new keybinds for Wrangling windows to another monitor or switching focus to another monitor
- new config.h setting for focus model of new windows in multimonitor
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIecswACgkQO3+8IhRO
Y5jQaRAAiagedoosBwgDkvcmwi+kfxfy4rqf2nUV1///cW6TviSw+wqQgnOHptKm
lIvj1yLJ3RbX6r8Faw/CB8MExXMfaXacybNHYjGgr20QgmLbDHC+Y0R/Lj+lDbme
TNHqcpeUXsX8WC0gDUQMsUeDcU4hMWmhmB3YZQem7RlSKx6YipqRGsM26R/jiA7c
crIMl0kEKe/UtthVxdcTFffKww7OhxszXXOVZ2YIqh2GOwu2n/Lm1C4HKJ/yJErV
lAczVNPpL3CdhHlcIBBZCr1odHcyNphv4psBHA5NM7Xi6z7Cu3IIj9/1kuhlwI+F
W+DUWUZfdjJP+USFXOPSqX1ZC0NMFmHz+g0V5iNJM5JL+0C2q32ZLsjaYZ9O4pA5
P4oVCx9sfmAWDejBtF/UpvrZV1gP7SfrPjcA0UPmQPe6biVkISdyqkdmqCMBauf6
r5388DFs7cZj055rytsAae2KMKALXiTtIUbd0Mh95j/cfUqtFz9DtkZcok+VqTgo
cgQ4NM/FPtBZXjpIO8CNFrPfis3wemkH3dZTbXFUoRI3jN5oCX4z3v9P4269bPlH
CHei5WmNfIZkyFbxnbMukON/cmlZbItVW2w5JJKfsMlUDLdsomFlCn4VKOK3L0GE
BVftCPNGLDv1khWk1qSkeiAlX7ROa98orG0nZKonO07mo2ou9e4=
=eBQ+
-----END PGP SIGNATURE-----

v1.2.2

v1.2.2: bugfix enables dragging smallish uxn windows around

basically, we only do sanity checks comparing the dx/dy of the window to the min_dx/min_dy if we are resizing it; if we are just moving it, we don't care
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmIZvPsACgkQO3+8IhRO
Y5g/bg//crmC3MpTcjm7kgA8a/cF3BdSCM9rzogCD7mLnsJASaPUv5nbRBXG1yfu
LqJvGS7C0YPUlO1SBU6760FaP58m1wmLLQN0ZNbEkur9yGW8ft86dk2aJBFq9yDo
CBC+jiWavqtGm9bgjyeaztMwLY/uhTw65fYXGg0mN3FW4yBLAxm6BFX+cwEkrwt2
dgMnyRMUmH9pESeu3nbhnpKPm1XN/5iOHUzYOfAL/ZPzFM6lnFNUgnP64b2RTytx
HUc1Ai+Ns/APXl0AuDk8Dax4d6m8ziO5t+kp2N5cvOF8KlD7pTSCFTRBs1ilcyx9
isLzD3R/tGICDLvYXEkr3FPgpM0DjukcQgkr2NJLleWBf6d143XlJEw+l+9Ofiio
DU0oDO323+QRjCm680Vaw+Nm/wWPQCnDRBmDlRGcbYIoPH7uJ6efcwW3Tx8xKwqZ
7erveIZz6P2sE3Y3kdOknl1JcfdylwDMJmkuM3ACCkXs7kGrdT/7fob+O1ETwJvL
EkB+XsIoVw81B9zAns4qtJbK+lthqek8BbjE8Mm7+Iez/yROrE4QCjVpe49QqJXW
g7DuNuVhQhED2K3UTVlHNRFQKfmhL8MiWgh8EVmbzLw/rzHywQRHsGbKr92MV8u2
rmTJGVpagbzKcVT8RVI9LzmV3xSaNEhB2QJcEkReQkdnQxyP4R4=
=AOXx
-----END PGP SIGNATURE-----

v1.2.1

v1.2.1

Fix a bug where terminal processes started from the keyboard would linger as zombies
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmHnUSwACgkQO3+8IhRO
Y5h3mQ//el3zzlKsbP5Iq4J81LW8z8JZQwaBT9GCtmhhFh8BYYuAEK4ng/NzTPWe
svzaoV2MA5Uu2B1sHifQ3jhRpByrGvE9KmuZxpuE1WrHEmeKgLRO9qzzFSSmQrpm
7YDRANSzKhiHW4Y+ZfI4cNkrBgrnyedG70mx+0ZxG1ffqqnD0fNx6HgHRNAFLOHX
Coz27NPoPu8RbFoOT/XjG/FL0B86snVqzU+1exS8w3CEPCrW100eskxnHTqcFq3S
DJPnOUxPg5DaIQ4oA3mpqdVYL4LsS6PMWfiH66aTo56d/sow9cvZ/RtmGGC4RwMM
bA0z5l0QdgMB/KCSRIwhBtDMaCL3WlknO0401RGI8/pjuEDhFjfNuKDGliskOysD
0z7OjOjYGg478kldqq7Ede+1xpLs+6tIHzYs8h2B7N7Jj2yQAq+W4z5J0tZ5P+dp
N2HltBOjU/C9OqWRdA989GoPpyLSHR49ToOwHQ/75hAhFDh50fFQLAfVB81gz4V6
X/oP1SKvVhglYTQUHK65B0keCem9EC0AoQE678VXttcLI6p4UO5vCQpa9LedapeA
LkFFuoYnP0CDxUctUdTeCke24LblaMNK+pjaWEnGu8750HRygfb2N+XQh00gOIb4
YOLCxcGMXBBtKD5hhIWfqoU1uFM0tjaOjcqJof+etMB3CZHL038=
=woLI
-----END PGP SIGNATURE-----

v1.2.0

v1.2.0:
- add OPACITY and TRANSPARENTLIST macros and support _NET_WM_WINDOW_OPACITY atom
- add clang-format to build script (not required to build though)
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmGUhP0ACgkQO3+8IhRO
Y5jYyw/+MYeMQswXRZB+ndWqs6ZFpgLThjQIZjCtmSz5IeGoXnIi8bxcOUFptrjQ
Gb74BgFD3LeVvti7Gy8jAUfMgmi+XybplNX1Kb1u+Ec/nOEUSmgstsxvtsMCydSH
xIT1CmkAo4ssT2DxA1A1h0PFJP70rbQEVNq577f4eBZQf7PJah+UgGyphWGTncts
kDNj7FyDSEBh6bbC0TycOcJDrjDVCR1aDtnvfEx5LHnadP6kt3/myrvc4V30AP6K
/lz0WhM0WZSDF3QuSc+5Kq3C86tL7ZVPty0GzmlX1z+g2007y4EdpI5fM0/pvfs1
K2EHexa6ybRTi2CNTFbovjgiIy+qd+dZswhMSUB8fmz74zq+aP6nxTzeMDU+OMVM
N/PNXrxm0GKR5VdtNe3cIJV/hk7oq0u1EXqdvcMvXpQH/Tx4RorIcZL2sMx6+ReE
hHyj03XuSEmxXAo33anZj+TfU4viU4nU/mblL4XKGaTQqFAdnQ1CJtyYx5agt5d2
oyJ1L7joigaX+p9TY7sI4OpN8YnGdiPJ0zRQD8XJR477lt6EuvIlJUuJ7UJhoa+R
eKTSYuBToyXVvFA9NtrEiaS4tNG5ZcfXwPPV3Sa6kJdfYsxxpZW7FimqIGjTO0iv
LCEoew3bHu2np1d5y3sBk1/SlXIrEy2vWzeca8hO/hmk0IfbA80=
=2CEa
-----END PGP SIGNATURE-----

v1.1.0

v1.1.0:
- allow numlock in keybinds
- scrollwheel to switch virtuals wraps around
- add session wrapper and .desktop file
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmGNeX8ACgkQO3+8IhRO
Y5hHSQ//SWO29Dz6Z5hp9V20hX1d1wXPLteegCl6Bu2F5X+QLL3Kxz3SIVAYXvje
QoEUiIfXLwojbYilx5MgEEVAIx/Qukqoq+UHfowC7cy3dUVgUXWWwadJ+RznHagj
R6KzmS+OtXImv7J10q/JgQQVvFR5HQ8qsJmAQwJjUtGRZlFepiMBFuyfoaqmgnz/
tGNIOQxh0bFyxrr2azHj1qzo9O2pltXALPjOo8gjvJlY1+AqhT1cd1CgjQkGaVwZ
wgh1UXqo8nUrtGN6U6iXxo/ZcLlT+xMvmbqE/kk9KUbb6kYZm8ZG4jVUgoiink3e
ePlvpA1BKcQgpxHJbR2nRJ17vGiTIlPpX600mHZJvzv6C3a6+Jv/4QFmv9y64wMx
IdhNNJEoA9vhymw8SeaLpe0AoELzthulQY+6XQDY694nvhcCbA+mMZBxSq76wW+3
yd+VpuqIsu1caS9FxmJ8n+o+c8SZ4f8SjTMQmPulplLXABkRjhgKQVdQdxxBY0oV
PnxPD8vPNrcD3BNky65QWg+hPxanknnW3GfBkuhAI77cRUWzv4rsnVtVuSbNue+A
z4CJNKmIwV/r1zIyNt9jMu9ISCUOWy+NMr69iJY4FwDM5Jxkewvpn6U3/UDJ//wa
mDmYha74AMMq1tPwyOE3SlrMWtpJiX5qv4+y0i0HJu1WQp4IK1U=
=lB3v
-----END PGP SIGNATURE-----

v1.0

v1.0 release!

There are some bugs lurking, but they are few and far between. Should be stable enough to use as a daily driver on a single-monitor setup!
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQJDBAABCAAtFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmFKvugPHG5pbGl4QG5p
bGZtLmNjAAoJEDt/vCIUTmOY1E8QAI6NuJxLC+dWuJjjPSqhfyv0NZyjWQ5emGLp
netMcvrueO37KumoVO076fXoU6uN9OnyY38zdxKu/wuxCpIPknTMSlaH0jge84zS
GE7aXpjZp7I+WNdzeEMJbHWOIrMAjg0/Updr0sf7oONcEMZq1qWHv2ad/xJ0zP12
Sawq0sksPXXc9/BNcBoDuraG9WeyKfGxs2mgqlKdl1bRikes0+dz5sA1pget1xxm
zeSKbTq6UXr9go8eLd1fwQDPAN/W840shgpK2A7hJlT6rI9wH03W6O+d0Irf7YsC
a0EdEdhcQ7UdB3kIT4KnIOs33q6c08ZehVKx7rLuhmUIBQjG+3eP6mo5pbNnWYbY
pNoH6hRo/QVyE4J4MhAZ4Y7mKs7dVd9C7wpgrMErWiPsK4V0+w9D2v3vH3nwjVo2
jud3t85iehpZHkfP3t4UalKhIYRutaLP5HQGmLLqcGwRsfOLevQye7jA2P/8HSB+
lkdQJAdqnUD97bhFv2dyi3CJ83Ehl6ggWUNjxS9u9SBgoWVmfDSw3KOS7Oev8msn
TcbHgFpLGBSHqxKvvAGvgHKo3md6aXAfT7ln8RcEHz7/iOLS9fbtj+EM/qPeQjck
5YShfiz3446OAIq4cKXNvTfed6flHEGygqdrFEHH7muhoZ5YBlDItfuS7B/StZj/
MK/Ap2Ws
=c2os
-----END PGP SIGNATURE-----