Hidden tabs live in disabled scene trees, so wlr_scene_output_send_frame_done() never reaches them and frame-callback-throttled clients stop committing: only the shown window's thumbnail tracked live while the rest sat at their last frame. Fan frame-done out to every hidden tab window once per output frame while the overlay is held (overlay_send_hidden_frames after the scene frame-done in both render_standalone and render_and_present). The walk covers main plus subsurface trees for both xdg and X11 windows via window_surface(), and skips the shown window the scene path already handles. Gated on --overlay-previews plus overlay_visible, so the steady state with the menu hidden costs nothing and background clients are not woken. The existing thumb_capture snapshot and draw-time tree composite paths are unchanged; they simply receive the commits they were missing. Tests: new test_standalone_headless_overlay_previews_hidden_live uses a hidden --pulse tab and asserts the red thumbnail count swings while Alt is held. README overlay-previews paragraph updated from freeze to live-while-held. Verified: ./build.sh clean; overlay-previews suite 6 passed; full suite 179 passed with -n4. |
||
|---|---|---|
| .. | ||
| test_fuzz.py | ||
| test_smoke.py | ||
| test_vt_plane.py | ||
| wltest.c | ||
| xclass.c | ||
| xdeco.c | ||
| xleader.c | ||
| xormenu.c | ||
| xpopup.c | ||
| xreqs.c | ||