Intent to Prototype: Document picture-in-picture

643 views
Skip to first unread message

Tommy Steimel

unread,
Jan 24, 2022, 3:06:16 PMJan 24
to blin...@chromium.org

Contact emails

ste...@chromium.orglibe...@chromium.orgmfo...@chromium.orgkla...@chromium.org

Explainer

https://github.com/steimelchrome/document-pip-explainer/blob/main/explainer.md

Specification



Summary

Document PiP adds a new API to open an always-on-top window that can be populated with arbitrary HTMLElements. This is an expansion upon the existing HTMLVideoElement API that only allows for an HTMLVideoElement to be put into a PiP window. This allows web developers to provide a better PiP experience to users.



Blink component

Blink>Media>PictureInPicture

Motivation

There currently exists a Web API for putting an HTMLVideoElement into a Picture-in-Picture window (videoElement.requestPictureInPicture()). If a website wants to have something as simple as custom media controls icons or as complex as a full scrollable playlist in the PiP window, they can’t currently provide it in the existing HTMLVideoElement experience. We want to expand upon that functionality with a new method on the Window object (window.requestPictureInPictureWindow()) which opens a picture-in-picture (i.e. always-on-top) window with a blank document that can be populated with arbitrary HTMLElements instead of only a single HTMLVideoElement.



Initial public proposal

https://discourse.wicg.io/t/proposal-document-picture-in-picture/5736

TAG review



TAG review status

Pending

Risks



Interoperability and Compatibility



Gecko: No signal

WebKit: No signal

Web developers: Positive (https://discourse.wicg.io/t/proposal-document-picture-in-picture/5736/2?u=steimel) In addition to the linked comment, we have some signals from partners that this would be valuable, and are checking to see if they are OK making that public

Other signals:


Debuggability

The new methods and properties proposed in this spec will show up in autocomplete functionality (e.g. window.requestPictureInPictureWindow()). The enterpictureinpicture and leavepictureinpicture events will support event listener breakpoints in the "Picture-in-Picture" category.



Is this feature fully tested by web-platform-tests?

No

Flag name

PictureInPictureV2

Requires code in //chrome?

True

Tracking bug

https://crbug.com/1269059

Launch bug

https://crbug.com/1269059

Estimated milestones

No milestones specified



Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5755179560337408

This intent message was generated by Chrome Platform Status.

Yoav Weiss

unread,
Jan 25, 2022, 1:42:28 AMJan 25
to Tommy Steimel, blink-dev
Thanks for the explainer! I'd love to see some more use cases that outline what people are actually trying to do that this would solve.
(There are a couple that emerged on the discourse discussion. Would be good to integrate them into the explainer and maybe add more y'all have in mind)
 


Specification



Summary

Document PiP adds a new API to open an always-on-top window that can be populated with arbitrary HTMLElements. This is an expansion upon the existing HTMLVideoElement API that only allows for an HTMLVideoElement to be put into a PiP window. This allows web developers to provide a better PiP experience to users.



Blink component

Blink>Media>PictureInPicture

Motivation

There currently exists a Web API for putting an HTMLVideoElement into a Picture-in-Picture window (videoElement.requestPictureInPicture()). If a website wants to have something as simple as custom media controls icons or as complex as a full scrollable playlist in the PiP window, they can’t currently provide it in the existing HTMLVideoElement experience. We want to expand upon that functionality with a new method on the Window object (window.requestPictureInPictureWindow()) which opens a picture-in-picture (i.e. always-on-top) window with a blank document that can be populated with arbitrary HTMLElements instead of only a single HTMLVideoElement.



Initial public proposal

https://discourse.wicg.io/t/proposal-document-picture-in-picture/5736

TAG review


Might be worthwhile to file for an early review to get the TAG's opinion on the feature and the proposed shape.
 
--
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+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGyVZ8L-SmBFbBMvvbm0x3TwZ66JQ1Fm7_zb3nSiBvYhXavAuA%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages