fullscreen icon indicating copy to clipboard operation
fullscreen copied to clipboard

Proposal: Supporting fullscreen requests in multi-screen environments.

Open michaelwasserman opened this issue 5 years ago • 3 comments

I'd like to raise awareness and request feedback for a couple proposals relevant to this working group. Most relevantly, they explore of use cases for requesting fullscreen on a particular display in multi-screen environments, and for potentially opening new windows in the fullscreen state. Thanks in advance for any issues filed, or other discussion/feedback shared!

Screen Enumeration API This proposal aims to give web developers information about the set of connected physical displays, and considers additional display properties that may be useful beyond the current Screen interface.

Window Placement API The ability to open and move windows across the full set of connected displays is unstandardized and the current behavior is inconsistent between implementers. This proposal aims to give web developers standard means to manage their web content in modern windowing environments.

michaelwasserman avatar Dec 17 '19 01:12 michaelwasserman

The Multi-Screen Window Placement spec has evolved significantly, and suggests enhancements for supporting multi-screen devices. I would greatly appreciate feedback and help regarding integrating some of that work in the Fullscreen spec. Here are some pertinent high-level proposals in the spec:

  1. Extend FullscreenOptions with a screen member, to support placing fullscreen content on a specific screen
  2. Extend Element.requestFullscreen() to update a new Window object internal slot that can be used in lieu of transient activation, to support initiating multi-screen experiences

See these inter-related issues filed on CSSOM-View, HTML, and Fullscreen spec repos:

I invite anyone to discuss this topic in a tentative W3C TPAC 2022 breakout session. Thank you!

michaelwasserman avatar Aug 24 '22 00:08 michaelwasserman

@michaelwasserman can you say a bit more about the [[targetScreenFullscreen]] slot? Is this about allowing a longer time to pass between use activation and entering fullscreen, or is it needed to make fullscreen on the right screen possible at all?

foolip avatar Aug 29 '22 13:08 foolip

Sure! It is a transient internal signal set when a site successfully requests fullscreen on a specific screen of a multi-screen device. It can be consumed, in lieu of transient activation, to permit the site to open a "fullscreen companion" popup window on another display. See the explainer, elements of which have been integrated into the spec.

michaelwasserman avatar Aug 29 '22 17:08 michaelwasserman