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
honour XrWeaveSubmitMonoIn2DDXR in comp_d3d11_service weave_submit for present-owners (Windows browser menus over woven content) #1798
Follow-up to #1796 / #1797. XR_DXR_weave v13 XrWeaveSubmitMonoIn2DDXR is honoured only by the desktop-Linux weave engine. Every other service accepts it and ignores it, so the output stays woven.
Ask: honour XrWeaveSubmitMonoIn2DDXR in comp_d3d11_service_weave_submit for present-owners. The motivating case is Windows browser menus over woven content. While the session's hardware state is 2D as confirmed by the DP, the service should skip process_atlas and present the flat view, using the same view rule as the Linux engine (u_weave_flat_view_index):
stereo: view 0, the left half of each batch rect, unsqueezed;
N > 2: the view nearest the display axis.
The wire already carries ipc_arg_weave_submit::mono_in_2d. The D3D11 branch of ipc_handle_weave_submit currently drops it.
Things to settle on Windows:
Hardware-state latching. "Confirmed 2D" is hw_override == 0 plus the DP's acceptance (dp_request_display_mode_confirmed). It must not be the wish-mask state.
The forced-3D path. It should not fight the hold: weave_force_3d_if_needed already stands down on hw_override == 0.
Browser side. Windows popups (0069) use flat regions, not a hardware hold, so the browser needs its own Windows trigger before this is user-visible.
Reference implementation: comp_multi_weave_linux.cweave_run_frame (the mono band) and the headless weave_present_vk_linux --test-hold-flicker.
Activity
feat(weave): v13 review follow-ups — one flat-view rule, confirmed-st…
feat(weave): v13 review follow-ups — one flat-view rule, confirmed-st…