Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add Picture-in-Picture API compat data #7028

Closed
wants to merge 9 commits into from

Conversation

germain-gg
Copy link
Contributor

@germain-gg germain-gg commented Oct 24, 2020

Hi all,

As part of mdn/sprints#3425 I am adding all the compat data related to the Picture-in-Picture API (https://w3c.github.io/picture-in-picture/)

Below is the source of all the data I gathered, I'm sure I have missed some things, feel free to give me your feedback so that I can improve the accuracy of the data set

Release notes

# Other info

  • Chose Edge 79 as it is the first time they were using the Blink engine that already had the PiP API embedded
  • Couldn't find anything related to Samsung Internet
  • Couldn't find anything related to Opera Mobile
  • Firefox has an implementation bug and therefore no support at the moment https://bugzilla.mozilla.org/show_bug.cgi?id=1463402

@github-actions github-actions bot added the data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API label Oct 24, 2020
Copy link
Member

@sideshowbarker sideshowbarker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@germain-gg
Copy link
Contributor Author

Thank you for your review @sideshowbarker , I have adressed your comments

Looping @jpmedley in as he created api/PictureInPicture.json. I actually deleted that file as there are no interface called PictureInPicture however I took the extra bit of information regarding the flag between Chrome M69 and M72. Could you please review and let me know if that actually matches the reality?

@jpmedley
Copy link
Contributor

jpmedley commented Nov 2, 2020

Actually, this landed in Chrome in 71 as shown on its status entry. ChromeOS is a different beast, which MDN does not track.

@ddbeck
Copy link
Collaborator

ddbeck commented Nov 5, 2020

@gsouquet A rebase/merge is needed here. Thank you!

@sideshowbarker
Copy link
Member

A rebase/merge is needed here.

Rebased now — no more merge conflicts

@germain-gg
Copy link
Contributor Author

Sorry I have missing in action lately! Looking to finalise this PR + the PiP documentation over the weekend

@jpmedley
Copy link
Contributor

@gsouquet Can you please change the Chrome value. This landed in Chrome in 71 as shown on its status entry. BCD does not cover ChromeOS.

@ddbeck
Copy link
Collaborator

ddbeck commented Jan 26, 2021

Hi @gsouquet, I'm trying to tidy up some outstanding PRs/issues. Do you plan to return this PR? Or should we open a follow-up issue or superseding PR? Either way, thank you!

Germain added 4 commits February 1, 2021 18:30
…icture

* upstream/master: (1123 commits)
  Remove Chromium 89 from String.at / Array.at / TypedArray.at (mdn#8869)
  Add worker_support info for CacheStorage (mdn#8783)
  Remove several needless "Enabled by default" notes (mdn#8899)
  Add HTML global attribute nonce (mdn#8764)
  api.Navigator.vibrate - Firefox for Android doesn't vibrate (mdn#7172)
  Mark MediaSource's onsourceclose as not supported in Firefox (mdn#8881)
  Update Florian's ownership (mdn#8893)
  Mention fix for Chrome's broken PDF loading (mdn#8867)
  Fill out Chrome data for html.elements.source.{sizes,srcset} (mdn#8889)
  Weekly data release for 2021-01-28
  Add text-decoration-thickness for Opera 73+ (mdn#8872)
  Update :is and :where pseudo-classes for Chrome (mdn#7375)
  Add note re Safari <9 partial srcset/sizes support (mdn#7353)
  Update data for when href (not xlink:href) can be used in SVG (mdn#6603)
  Add top-level await (mdn#8807)
  TouchList: Add Safari Desktop and Safari iOS versions (mdn#8848)
  Update Firefox versions to account for Firefox 85 release (mdn#8864)
  Fix page_action.show_matches support for Android (mdn#8844)
  Update Safari support for devicechange_event (mdn#8863)
  Add HTTPS-only to privacy.network (mdn#8830)
  ...
@germain-gg
Copy link
Contributor Author

Hi @ddbeck , thank you for nudging me here! I have been fairly inactive these days
I rebased this PR and also made a couple of compatibility data adjustments based on what I saw in #7635

This should be ready to go now 👍

Copy link
Collaborator

@ddbeck ddbeck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for following up, @gsouquet! I started giving this a once-over and found a few (mostly repetitive) issues. I've got to wrap things up for the day, however, so this review is partial (I haven't completed from PitureInPicture.json to the end). I can revisit the rest of this later, but I thought I'd give you a head start on some of these issues. Thank you again!

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you sort this entry to the top? The first entry should be the entry with the broadest interest to web developers

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

},
"status": {
"experimental": false,
"experimental": true,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"experimental": true,
"experimental": false,

@@ -781,16 +903,16 @@
"mdn_url": "https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/poster",
"support": {
"chrome": {
"version_added": "1"
"version_added": true
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these changes to the poster feature spurious? Seems like this is unrelated, but I'm not an expert. It's a bit surprising to see the switch from real version numbers here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

@@ -865,7 +1011,7 @@
}
},
"status": {
"experimental": false,
"experimental": true,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"experimental": true,
"experimental": false,

@ddbeck ddbeck self-requested a review February 4, 2021 11:49
Copy link
Collaborator

@ddbeck ddbeck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just finishing up the review I started before. It's a big clean up, but appreciated. Thanks again, @gsouquet!

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

]
},
{
"version_added": "72"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another re-sort needed here

@ddbeck
Copy link
Collaborator

ddbeck commented Feb 17, 2021

Hi @gsouquet, this is a reminder that this is awaiting your attention. Also, there's now a merge conflict that could be resolved by a rebase or a merge from master. Thank you!

@Elchi3
Copy link
Member

Elchi3 commented Feb 24, 2021

So, the merge conflict is from my mixin work. Sorry!

Basically, instead of api/DocumentOrShadowRoot.json, we now need to add data to

  • api/_mixins/DocumentOrShadowRoot__Document.json
  • api/_mixins/DocumentOrShadowRoot__ShadowRoot.json

Docs on the mixin guideline are here: https://github.com/mdn/browser-compat-data/blob/master/docs/data-guidelines.md#mixins

I think it would be great to get compat data on PiP in :) Thanks for your work!

@foolip
Copy link
Contributor

foolip commented Mar 9, 2021

I'd like to see this land as well. If @gsouquet is busy with other things, are there ways the rest of us could get this across the finishing line? Push directly to this PR or create a new one?

@ddbeck
Copy link
Collaborator

ddbeck commented Mar 9, 2021

@foolip the way I usually handle situations like this is to open a superseding PR (using Co-authored-by trailers where appropriate) with the text "closes #ORIGINAL_PR_NUMBER".

For small changes that don't need comprehensive review, I have sometimes pushed additional commits to the original PR, but if there's anything big, I find it's hard to signal who's responsible for the PR through additional reviews.

foolip added a commit to foolip/browser-compat-data that referenced this pull request Mar 12, 2021
These changes were prepared by @gsouquet in another PR:
mdn#7028

Some additional fixes are made to make this possible to land.

Closes mdn#7028.

Co-authored-by: Germain <[email protected]>
Co-authored-by: Daniel D. Beck <[email protected]>
foolip added a commit to foolip/browser-compat-data that referenced this pull request Mar 12, 2021
These changes were prepared by @gsouquet in another PR:
mdn#7028

Closes mdn#7028.

Co-authored-by: Germain <[email protected]>
Co-authored-by: Daniel D. Beck <[email protected]>
@foolip
Copy link
Contributor

foolip commented Mar 12, 2021

I've opened #9438, but in comparing to mdn-bcd-collector results, I'm finding that this was actually shipped in Chrome 69 after all, so a lot of the changes added flags and saying it was shipped in 72 are wrong. https://chromereleases.googleblog.com/2019/02/stable-channel-update-for-chrome-os.html says "Picture in Picture (PiP) now available for Chrome sites" but I think that might mean it works for chrome:// URLs or something like that.

@foolip
Copy link
Contributor

foolip commented Mar 12, 2021

@ddbeck ddbeck closed this in #9438 Mar 12, 2021
ddbeck added a commit that referenced this pull request Mar 12, 2021
* Update Picture-in-Picture API compat data

These changes were prepared by @gsouquet in another PR:
#7028

Closes #7028.

Co-authored-by: Germain <[email protected]>
Co-authored-by: Daniel D. Beck <[email protected]>

* fix order

* Set opera_android to false like chrome_android

* fix order

* Update using mdn-bcd-collector and manual simplifcation

* manually fix foo_event entries

* Represent EnterPictureInPictureEvent->PictureInPictureEvent rename

https://storage.googleapis.com/chromium-find-releases-static/618.html#618ec90b2829710535f3d41f8b61a787a43f13bc

* Undo leavepictureinpicture event changes

The events were originally fired, just with a plain Event and not the
PictureInPictureEvent interface, which was then called
EnterPictureInPictureEvent and used only for enterpictureinpicture.

* Add ShadowRoot.pictureInPictureElement

* add spec URLs

* add onenterpictureinpicture

* fix Edge versions

* experimental: false

* Restore playsInline (merge gone wrong?)

* Restore poster versions (merge gone wrong?)

* Represent EnterPictureInPictureEvent support in Safari

Co-authored-by: Germain <[email protected]>
Co-authored-by: Daniel D. Beck <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants