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

Fix requestFullscreen version info for Chromium. #4404

Merged
merged 2 commits into from
Aug 6, 2019

Conversation

nh2
Copy link
Contributor

@nh2 nh2 commented Jun 30, 2019

See added link for backing reference.

Re-posting my notes while researching this (you don't need to read this, only this summary:


A checklist to help your pull request get merged faster:

  • Summarize your changes
  • Data: link to resources that verify support information (such as browser's docs, changelogs, source control, bug trackers, and tests)
  • Data: if you tested something, describe how you tested with details like browser and version
  • Review the results of the linter and fix problems reported (If you need help, please ask in a comment!)
  • Link to related issues or pull requests, if any

See added link for backing reference.
@nh2 nh2 force-pushed the requestFullscreen-chromium branch from 7bf6c84 to df473d6 Compare June 30, 2019 14:57
@queengooborg queengooborg added the data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API label Jun 30, 2019
Copy link
Contributor

@queengooborg queengooborg 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 the PR! Since we have the Promise-enabled syntax as a subfeature, let's use it to the fullest. Essentially, I would say that we can get rid of the note, and instead set "69" for the returns_a_promise version. WebView should also be set to "69" since it's based upon Chrome's releases starting with version 37, and since Opera is Chromium-based, it should be set to "51" and "48" for the desktop and Android versions respectively.

Overall, though, great work, and good find!

@nh2
Copy link
Contributor Author

nh2 commented Jul 1, 2019

@vinyldarkscratch How can I render this table so that I can see whether the changes I make make sense? I coulnd't spot that in the README.

So far I'm editing it blindly, which is why I kept my change as small as possible.

@queengooborg
Copy link
Contributor

You can run npm run render to render the compatibility table on demand. Doesn’t have the best styling just yet (a stand-alone style sheet is in the works), but it should give you something to work off of!

@ddbeck
Copy link
Collaborator

ddbeck commented Jul 2, 2019

This doc also has some instructions for using the render script with an MDN preview (I haven't tried this recently though, so I'm not certain it renders exactly like the regular compat tables): https://github.com/mdn/browser-compat-data/blob/master/docs/testing.md#rendering

api/Element.json Outdated
@@ -6069,7 +6069,8 @@
"support": {
"chrome": [
{
"version_added": "71"
"version_added": "71",
"notes": "The unprefixed fullscreen API shipped in Chromium 71, the <code>Promise</code>-enabled version of the vendor-prefixed API already shipped in Chromium 69. See <a href='https://crbug.com/383813#c57'>bug 383813</a>."
Copy link
Contributor

Choose a reason for hiding this comment

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

The webkit information should be done like this.

The information about the promise should probably be another item in the array. I've opened #4468, but will not hold up merging of this PR.

Copy link
Contributor

Choose a reason for hiding this comment

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

Chrome Android and WebView Android need to match whatever you do here.

Here's where you look up what is and is not in WebView.

api/Element.json Outdated
@@ -6203,10 +6204,10 @@
"description": "Returns a <code>Promise</code>",
"support": {
"chrome": {
"version_added": false
"version_added": true
Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor

Choose a reason for hiding this comment

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

As should Chrome Android and Android WebView.

@ddbeck
Copy link
Collaborator

ddbeck commented Jul 29, 2019

Hi @nh2, do you plan to revisit this PR any time soon?

@ddbeck ddbeck self-assigned this Aug 5, 2019
@ddbeck
Copy link
Collaborator

ddbeck commented Aug 5, 2019

To keep this moving, I pushed a change responding to the review comments here. Thanks, everyone.

@jpmedley would you mind taking another look at this? Thank you!

@ddbeck ddbeck requested a review from jpmedley August 5, 2019 09:48
@nh2
Copy link
Contributor Author

nh2 commented Aug 5, 2019

Thanks for taking it up, I was on holiday and don't mind at all if you guys finish this.

Essentially, I would say that we can get rid of the note

Is it not useful to document on the page that the vendor-prefixed API and the non-vendor prefixed API are were released in 2 different versions (69 and 71 respectively)?

Otherwise people may be surprised that their unprefixed code doesn't work on 69 and 70.

@ddbeck
Copy link
Collaborator

ddbeck commented Aug 5, 2019

Is it not useful to document on the page that the vendor-prefixed API and the non-vendor prefixed API are were released in 2 different versions (69 and 71 respectively)?

This is a good point and the data is useful, but it's captured in the schema a bit differently than a note (in this case, the data is already there; if you look beneath the changes in the diff, you'll see some "prefix" entries—these show that Chrome had the prefixed API from version 15, for example). In the MDN table, you can see this extended data by expanding the cells with the downward triangle.

@nh2
Copy link
Contributor Author

nh2 commented Aug 5, 2019

@ddbeck That sounds good -- I don't mind at all which way it's shown, just wanted to point out that the PR currently doesn't show the info any longer.

@jpmedley
Copy link
Contributor

jpmedley commented Aug 5, 2019

The changes I requested still aren't in. Both the unprefixing and the support for promises need to be captured. As the PR stands, it only swaps one for the other.

@ddbeck
Copy link
Collaborator

ddbeck commented Aug 5, 2019

@jpmedley I don't understand what you mean. Right now I'm reading the Chrome data in the file as:

  • api.element.requestFullscreen
    • version_addded: 69
    • prefix: webkit; version_added: 15
  • api.element.requestFullscreen.returns_a_promise
    • version_added: 71

What's missing?

@jpmedley
Copy link
Contributor

jpmedley commented Aug 5, 2019

I forgot that's how we decided to do promises. This PR looks right then.

@ddbeck
Copy link
Collaborator

ddbeck commented Aug 6, 2019

Thanks! We'll sort out the promises structure in #4468 (it's still undecided and I didn't want to change anything in this file, absent a decision on the broader issue).

Going to merge this now. Thank you, @nh2!

@ddbeck ddbeck merged commit dd91449 into mdn:master Aug 6, 2019
@Elchi3 Elchi3 removed the request for review from jpmedley August 14, 2019 08:44
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.

4 participants