w3c / window-management

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

Question about multi screen spanning #74

Open konorti opened 2 years ago

konorti commented 2 years ago

Hi,

We have a web application where we would like to introduce dual screen support, in a way that our application would span the browser window across multiple monitors. We have seen that the visual viewport API is being extended by the viewport segments property which enables laying out the content in a window that spans multiple displays. We plan to leverage this new functionality to detect multi monitor environment and to properly align web elements across the monitors. However, this new API extension does not provide a functionality to span and maximize a window across multiple screens. In the Viewport Segments Property explainer document the Multi-Screen Window Placement API is mentioned as an API which can or will be able to provide such functionality. However, here in the API explainer we found that this functionality is still just under consideration. We would like to ask if there is any update regarding this multi-screen spanning functionality, whether it will be part of this API and if yes is there any planned roadmap about the introduction and implementation of it? Besides doing this from an API, do you know about any plan from the browser vendors providing a functionality to the users to maximize the browser window across dual-screens like providing a button for this similarly to the current full screen functionality of the browsers?

michaelwasserman commented 2 years ago

Thanks for the question. We haven't prioritized support for programmatically spanning a window across displays.

That behavior seems sensible for dual-screen devices, especially if the window manager has screen-spanning maximization or fullscreen behaviors, but it may not work as well in traditional free-form multi-screen desktop environments, where the aggregate screen bounds may be non-rectangular. The API allows browsers to clamp requested window bounds within the target screen; Chromium's implementation currently does so to avoid usability concerns. It may be reasonable to support spanning placements or programmatic spanning or maximization (or fullscreen) as more use cases and requests arise.

Please do share any specific examples of user value, requested JS code patterns, etc. to support this request. Can you also clarify whether Element.requestFullscreen() spans both screens of your dual-screen device, and why that may or may not be sufficient for your use cases? Thanks!

konorti commented 2 years ago

Hi,

Thanks for the information. Currently, we have an installable client and a webclient with limited functionalities for our application. We are planning to fully replace our installable client with the webclient in the future, so our users can simply use our application from a webbrowser. We do not have a dualscreen device but many of our users use a dual monitor setup. Our old client provides a dual monitor mode to the users. It means that if they have a multi monitor setup where the orientation and the resolution of the monitors make the dualscreen mode possible (if the resolutions are the same and the screen positions are okay) then the users can switch the client into dualscreen mode. In this case our client maximizes across the monitors and uses the doubled screen size. We would like to implement the same functionality in our webclient and currently investigating what would be the proper way to support this scenario.

michaelwasserman commented 2 years ago

This is a reasonable enhancement request for the future, thanks!

jpambrun commented 2 years ago

I am working on a radiology application that would benefit from this as well (or the somewhat equivalent multiple element.requestFullscreen per page approach).

I have left more details on #92.