Captures only a managed toplevel's surface tree, independently of its
workspace, occlusion, animations and output transform. The compositor
advertises this interface only to its native portal executable. Capture
requires session opt-in and fails while locked. Window IDs are compositor
lifetime IDs and never resolve to replacement windows.
The two unsigned words encode a 64-bit window ID (high word first).
A version 1 wlr screencopy frame announces a bounded SHM ARGB8888
snapshot. It fails if the target has closed, capture is unavailable,
or the outstanding snapshot budget is exhausted. Resize after the
buffer announcement does not change this frame's dimensions.
Overlay cursor is zero for hidden and one for embedded.
Sent before this frame's failed event if the bounded snapshot pool is
occupied. Retry a later frame; this does not revoke the window source.
Sent before the frame's buffer event. These dimensions describe this
captured frame, even if the window resizes before it is copied.
Creates a source for ext-image-copy-capture-v1. Unlike a snapshot,
a session waits for content damage and negotiates reusable buffers.
Invalid, closed or protected windows produce a stopped session.
Invalidates the last delivered image for this source's sessions, so
a resumed PipeWire consumer receives an initial image even when the
source is unchanged. Outstanding buffers keep their ownership and GPU
synchronization; this request never cancels a capture in flight.
Subsequent frames continue to wait for source damage.
The current logical window size, sent when the source is created.
Subsequent pixel-size changes are announced by the capture session.