Merged the "window positions and sizes in IPC" PR. Please test and report if anything's broken or missing, we have time to fix it until the next release.
Yesterday dove into one of the older animation jank bugs in niri: quickly resizing a window back and forth would cause adjacent windows to jump. This problem is hard to trigger unless you're specifically trying to (then it's easy), but it was causing "downstream" problems for more complex actions.
The fix was simple enough, but I imagined enough "interesting" cases around it and decided to write a whole bulk of tests. Check this out, all thanks to our layout and clock code!
niri v25.08 is now released with a logo, xwayland-satellite integration, basic screen reader support, NVIDIA screencast flickering fix, window positions and sizes in IPC, and many other improvements! :ablobcatbongo:
Implemented basic AccessKit integration for niri based on @DataTriny's proof-of-concept. I have little experience with screen readers, and also had several questions, so I would appreciate more eyes and testing on the PR:
Finally finished making niri screencasts asynchronously wait for rendering completion before handing the buffer over to PipeWire. This fixes screencast flickering problems on NVIDIA setups.
This is not PW explicit sync; I can now finish that too (OBS and PW released their fixes), but it'll act more as an optimization on top of the current code (since only OBS can use it for now, and not on its Flathub build (PW is too old there)).
Ppl naturally want to put something in the Overview backdrop, like a blurred version of the wallpaper (see how popular Blur My Shell is). Orthogonally, some ppl want the wallpaper to be static, rather than move with workspaces (it can be distracting).
I'm not prepared to dive head-first into image rendering and blur shaders yet, so I made it possible to put a layer surface into the backdrop. This enables both of those cases, likely even more cool things!
After long 3 months of work, I'm glad to release niri v25.05 with the Overview, screenshot UI tablet and touch support, dynamic screencast target and windowed fullscreen, IPC pick-window and pick-color, window urgency, and lots of other things! :ablobcatbongo: :apartyblobcat:
Today, screenshot UI updates! Implemented tablet and touchscreen input for area selection (at long last). And, added a small clickable capture button, so screenshots can now be confirmed tablet-, touch-, or mouse-only!