Sure! Hopefully this explanation helps clarify that relationship: 1) Fullscreen companion window allows a frame with window-placement permission to request fullscreen on one screen, and open a popup window on another screen, from a single transient user activation. This enables a single click to initiate a fairly compelling multi-screen content experience. We loosely envision someday launching additional enhancements <https://github.com/w3c/window-placement/blob/main/EXPLAINER_initiating_multi_screen_experiences.md#:~:text=An%20eventual%20end%2Dgoal> .
2) Fullscreen capability delegation allows a frame to relinquish its transient user activation, in order to permit another frame (e.g. child, opener, opened popup, sibling) to request fullscreen. This adds some value for single-screen devices, but even more on multi-screen devices, where a companion window could offer controls for the fullscreen window. I should note <https://github.com/w3c/window-placement/issues/5#issuecomment-954998927> that calling Element.requestFullscreen({screen:targetScreen}) can be used to move already-fullscreen content to another screen, and that requires transient user activation. So, used together, capability delegation allows a gesture on a companion window to "swap" the displays used for fullscreen and companion windows. On Mon, May 23, 2022 at 7:48 AM Mike Taylor <miketa...@chromium.org> wrote: > Hi Mike, can you help me understand the relationship of this work to > Fullscreen capability delegation? Is the difference just 1 vs many screens? > > > https://github.com/WICG/capability-delegation#allowing-fullscreen-from-opener-window-click > > On 5/9/22 8:35 PM, Mike Wasserman wrote: > > Contact emails > > m...@chromium.org > > > Explainer > > > https://github.com/w3c/window-placement/blob/main/EXPLAINER_initiating_multi_screen_experiences.md > > Specification > > > https://github.com/w3c/window-placement/blob/main/EXPLAINER_initiating_multi_screen_experiences.md#spec-changes > > Design docs > > > https://docs.google.com/document/d/1RRlGQharWVnmxKTomfKhNiaeE31L7iXHeXVfifOvwJA > > Summary > > Fullscreen Companion Window allows sites to place fullscreen content and a > popup window on separate screens from a single user activation. > > This is a small requested enhancement of the Multi-Screen Window Placement > feature: https://chromestatus.com/feature/5252960583942144 > > Blink component > > Blink>Screen>MultiScreen > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EScreen%3EMultiScreen> > > TAG review > > https://github.com/w3ctag/design-reviews/issues/602#issuecomment-1121694034 > > TAG review status > > Pending > > Risks > Interoperability and Compatibility > > The main risk is that this feature fails to become an interoperable part > of the web platform if other browsers do not implement it. Scripted > attempts to open a popup window after requesting fullscreen would likely be > blocked by user agents that do not implement this feature, even if they > implement the basic Multi-Screen Window Placement API. > > Gecko: No signal ( > https://github.com/mozilla/standards-positions/issues/636) > > WebKit: No signal ( > https://lists.webkit.org/pipermail/webkit-dev/2022-May/032223.html) > > Web developers: Positive ( > https://bugs.chromium.org/p/chromium/issues/detail?id=1233970) This > functionality is requested by a prominent API partner > > Ergonomics > > There is currently no way to detect feature support before attempted > usage; see > https://docs.google.com/document/d/1RRlGQharWVnmxKTomfKhNiaeE31L7iXHeXVfifOvwJA/edit?pli=1#heading=h.vu2lz7aeddz6 > > Activation > > Developers can make immediate use of this API enhancement. > > Security > > This feature was designed from the ground-up to adhere to the strictest > usable security measures possible, as an incremental enhancement of > existing web platform APIs. See the design document for details. > > WebView application risks > > None > > Debuggability > > Existing mechanisms support debugging fullscreen and popup window open > requests. > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> > ? > > No. An existing automated/manual WPT covers the ability to open > cross-screen popups <https://wpt.live/window-placement>. We aim to extend > test coverage for this specific scenario soon <https://crbug.com/1323361>. > > DevTrial instructions > > https://github.com/w3c/window-placement/blob/main/HOWTO.md > > Flag name > > --enable-blink-features=WindowPlacement > > Requires code in //chrome? > > True - > https://docs.google.com/spreadsheets/d/1QV4SW4JBG3IyLzaonohUhim7nzncwK4ioop2cgUYevw/edit#gid=0&range=34:34 > > Tracking bug > > https://crbug.com/1233970 > > Launch bug > > https://crbug.com/1315615 > > Sample links > > https://michaelwasserman.github.io/window-placement-demo/ > > (See DevTrial instructions) > > Estimated milestones > > DevTrial on desktop: 102 > > Shipping on desktop: 103 > > Anticipated spec changes > > No changes anticipated that would introduce web compat/interop risk > > Link to entry on the Chrome Platform Status > > https://chromestatus.com/feature/5173162437246976 > > Links to previous Intent discussions > > Intents for the Multi-Screen Window Placement API: > > - > > I2P: < > https://groups.google.com/a/chromium.org/g/blink-dev/c/X6rEbWvU7cI> > - > > I2E1: < > https://groups.google.com/a/chromium.org/g/blink-dev/c/C6xw8i1ZIdE> > - > > I2E2: < > https://groups.google.com/a/chromium.org/g/blink-dev/c/jznxQK1U8ZQ> > - > > I2S: < > https://groups.google.com/a/chromium.org/g/blink-dev/c/i6Zoc7jU0dM> > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to blink-dev+unsubscr...@chromium.org. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAN%2BkdQ4FcB_qto8h5GQrA4_ELUUwsyWWKyR0%3DmPsVxftr1uu2g%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAN%2BkdQ4FcB_qto8h5GQrA4_ELUUwsyWWKyR0%3DmPsVxftr1uu2g%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEsbcpWjTcFNzmbn22G7PgPPFs0ouZ2Yn2sxrzFmbRRH8NEK3g%40mail.gmail.com.