You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
cursor_depth: compositor-side draw refusals should flip willDraw (ADR-046 §B) #1952
Covered today:#1951 makes XrCursorDepthDrawStateDXR::willDraw true only when the state tracker's drawability check passes on both the located views and the submitted views.
Gap: a native compositor can still refuse to draw for reasons the state tracker can't see:
no display info;
a multi-screen routed frame;
a failed default-look upload;
a backend-specific skip.
In those frames willDraw stays true. The app then hides its OS cursor while nothing is drawn, which breaks the rule that the fallback is always the flat OS cursor.
Proposed: each compositor reports its last cursor-draw outcome (drew or refused) back through the per-frame request it already receives. A refusal flips the next locate's willDraw to false, the same way #1951's state-tracker refusal does.
Scope: Metal, Vulkan, GL, and D3D11/D3D12 once #1944 lands.
Activity
fix(cursor): compositor refusals make willDraw false (#1952)
test(cube_macos): log the OS-cursor hand-off transitions (#1952)
ipc: carry the runtime-drawn cursor request to the D3D11 service (ADR…
d3d11_service: draw a direct IPC client's runtime-drawn cursor (ADR-0…
ipc: carry the runtime-drawn cursor request to the D3D11 service (ADR…
d3d11_service: draw a direct IPC client's runtime-drawn cursor (ADR-0…