349d16382e
The Vulkan path's receive_frame returns at SUBMISSION (~0.1 ms) — the hardware decodes asynchronously, so the decode stat was truthful but measured the wrong boundary. The pump now ships the frame to the presenter FIRST, then waits the frame's timeline fence (vkWaitSemaphores resolved through the shared device's proc chain) and stamps received→decode-COMPLETE — true NVDEC time at zero pipeline cost, since the presenter's own GPU wait is what actually gates sampling. Software/ VAAPI keep their synchronous stamps. Also: Alt+Enter joins F11 as the fullscreen toggle (some keyboards' Fn layer sends a media key for plain F11 — observed on glass as 'F11 only works with shift'); the shell's shortcuts panel lists both. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
16 lines
793 B
Plaintext
16 lines
793 B
Plaintext
# ~/.config/xdg-desktop-portal/sway-portals.conf (xdg-desktop-portal 1.18+ format)
|
|
# Route ScreenCast to the right wlr-family backend; gtk handles the rest.
|
|
#
|
|
# A desktop-specific section (matched against XDG_CURRENT_DESKTOP, which the host sets per session —
|
|
# `sway` for sway/river, `Hyprland` for Hyprland) wins over [preferred]. So sway hosts capture
|
|
# through xdg-desktop-portal-wlr (xdpw) and Hyprland hosts through xdg-desktop-portal-hyprland
|
|
# (xdph) — each the backend the host actually steers.
|
|
[preferred]
|
|
default=gtk
|
|
org.freedesktop.impl.portal.ScreenCast=wlr
|
|
|
|
# Hyprland: XDG_CURRENT_DESKTOP=Hyprland → xdph services ScreenCast (the host steers its custom
|
|
# picker via ~/.config/hypr/xdph.conf). See docs/hyprland.
|
|
[Hyprland]
|
|
org.freedesktop.impl.portal.ScreenCast=hyprland
|