w3c / window-management

Window Management API
https://www.w3.org/TR/window-management/
Other
96 stars 25 forks source link

Explore window-reuse nuances of cross-screen fullscreen #38

Open michaelwasserman opened 3 years ago

michaelwasserman commented 3 years ago

See this thread: https://gist.github.com/HenrikJoreteg/f1ca7c6bdfc1159b103db14e74fffaa0

Currently Chromium uses the existing HWND/NSWindow/XWindow for fullscreen rendering, so cross-screen requests move the window to the target display before entering the fullscreen state (and move back on exit).

Users and developers may expect the existing window to remain in-place and for a separate window to be used for cross-screen fullscreen. We should explore use cases, plus spec & impl options more deeply, but it's unclear how this might work in practice (e.g. how to split the Document and DOM across two windows, how to handle input events and Window/Screen JS access, etc.).

Safari might give some insight here, I think it shows a placeholder in the original window and then creates a separate window for fullscreen? Note that it is possible (albeit awkward) to do window.open + Element.requestFullscreen (we may also explore supporting fullscreen=true in window.open or similar)

michaelwasserman commented 2 years ago

This is a reasonable space to explore for future enhancements of the fullscreen and window placement apis.