mirror of
https://github.com/DeeJanuz/frametop.git
synced 2026-10-27 19:01:12 +01:00
KWin 6.2.5 (SteamOS 0.4.5) draws each output straight onto the toplevel, which note_layer_buffer skipped, so every panel stayed empty there. The toplevel's own DMA-BUF is now noted in screen_commit and competes on size like a child's; KWin 6.6's 1x1 single-pixel buffer isn't a DMA-BUF, so it never wins. The surface watcher leaves toplevels to screen_commit, so the order of the two commit listeners doesn't matter. A child surface destroyed between its commit and its toplevel's no longer leaves latest_surface pointing at freed memory (a desynchronized child can). update-check: libkwin before 6.6 has no host-protocol checks, so that's ok, not a warning on every current Frame; each libkwin file is read once (the two symlinks named the same 8.8 MB file). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>