
Scanouts are taken away after painting. However, when we're streaming, what we actually want is to capture whatever is going to end up on screen - and that includes the scanout if there's any. Add a before-paint watch that only records new frames if a scanout is set. Inspired by (and commit log mostly copied from) e6a13e5d5774 ("monitor-stream-src: Add before-paint watch to catch scanouts"). v2: * Do not call stage_painted from before_stage_painted (Georges Basile Stavracas Neto) Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1707 Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1902>