Add/update Chromium data for Document API#6836
Conversation
foolip
left a comment
There was a problem hiding this comment.
I reviewed this for a bit, but it's too big, changing something like 285 things. Can you split this alphabetically or something like that into at least 3 pieces, so it's more manageable to review?
|
Thanks for trimming this, now I think it's small enough for me to review. Diving in! |
foolip
left a comment
There was a problem hiding this comment.
A few changes requested here. I'll not revert bits and land directly in this case, since I'm not certain about every suggestion.
| "support": { | ||
| "chrome": { | ||
| "version_added": "43" | ||
| "version_added": "36" |
There was a problem hiding this comment.
I thought document.contentType was older than this, but it was added in https://chromium.googlesource.com/chromium/src/+/d0639256a9b3fa0dd01506742721ba44a502b24d so this checks out, date matches Chromium 36 in https://www.chromium.org/developers/calendar.
| "version_added": "23" | ||
| }, | ||
| { | ||
| "version_added": "≤12.1", |
There was a problem hiding this comment.
This might just explain why it was an Opera employee who sent https://chromium.googlesource.com/chromium/src/+/d0639256a9b3fa0dd01506742721ba44a502b24d :)
| "chrome": [ | ||
| { | ||
| "version_added": "45" | ||
| "version_added": "37" |
There was a problem hiding this comment.
(This is api.Document.exitPointerLock.) "45" came from #1324 so this is from the wiki, but I bet a lot of "45" are actually because https://omahaproxy.appspot.com/ can't handle commits before the Blink merge into Chromium. Happy to see these errors being sorted out.
https://caniuse.com/pointerlock agrees too. We're missing version_removed for the prefixed entry, but we'll discover that when mdn-bcd-collector coverage of prefixed stuff plus our updater improves.
api/Document.json
Outdated
| "chrome": { | ||
| "version_added": false | ||
| "version_added": "1", | ||
| "version_removed": true |
There was a problem hiding this comment.
It was probably removed long ago, this is introducing uncertainty for what's in current Chrome. Can you either add the exact removal version or defer this change until later when it is known?
api/Document.json
Outdated
| "version_added": "58" | ||
| }, | ||
| { | ||
| "version_added": "32", |
There was a problem hiding this comment.
The data that this is mirroring is wrong. document.onwebkitfullscreenchange was in Chrome 15 per http://mdn-bcd-collector.appspot.com/tests/api/Document/onwebkitfullscreenchange, probably earlier. Can you update the Chrome data for that, or just not mirror the incorrect data until it's fixed?
api/Document.json
Outdated
| } | ||
| ], | ||
| "chrome": { | ||
| "version_added": "62" |
There was a problem hiding this comment.
This seems much too new. I suspect a similar situation as in #6849, can you break out this change?
| }, | ||
| "edge": { | ||
| "version_added": false | ||
| "version_added": "85" |
There was a problem hiding this comment.
I thought Edge had shipped document.requestStorageAccess before Chrome, but maybe not. They were directly involved though: https://blogs.windows.com/msedgedev/2020/07/08/introducing-storage-access-api/
There was a problem hiding this comment.
MS is driving the implementation in chromium: https://bugs.chromium.org/p/chromium/issues/detail?id=989663
They enabled it to be on by default in Edge before Chrome but I can’t find any publicly source that indicates which Edge version it was enabled in 😿
|
Actually, since this ends up blocking #6864 I will revert the bits I had comments on myself, and summarize needed follow-up in a comment. |
- document.height/width - document.onwebkitfullscreenchange/error - document.onvisibilitychange - document.queryCommandIndeterm
|
Alright, merged. The required followup is simply the stuff reverted in 8dcd73f:
|
…ias (#6865) This commit updates the Chromium data for various Document API features that were initially implemented on `HTMLDocument`, first by obtaining the version numbers via the mdn-bcd-collector project, then separating them into sections with `partial_implementation`. This is a cherry-pick from #6836, applying the review suggestions from #6836 (comment). Co-authored-by: Philip Jägenstedt <[email protected]>
It was implemented at the same time as the onreadystatechange event handler property in WebKit: https://trac.webkit.org/changeset/69710/webkit https://trac.webkit.org/browser/webkit/trunk/WebCore/Configurations/Version.xcconfig?rev=69710 The Chrome 9 data for onreadystatechange looks reliable: mdn#6836
It was implemented at the same time as the onreadystatechange event handler property in WebKit: https://trac.webkit.org/changeset/69710/webkit https://trac.webkit.org/browser/webkit/trunk/WebCore/Configurations/Version.xcconfig?rev=69710 The Chrome 9 data for onreadystatechange looks reliable: #6836
This PR adapts the pointerlockchange and pointerlockerror event of the Document API to conform to the new events structure. The data for Chromium was updated to adhere to the event handler data's changes in mdn#6836. Prefixed data was left alone.
This PR updates the Chromium data for the Document API based upon a combination of manual testing and collector results to achieve more real data for the Document API. (Note: most Opera updates have been deferred to #6835.)
Tests used: https://mdn-bcd-collector.appspot.com/tests/api/Document