Skip to content

Commit 9b14b1e

Browse files
authored
Add Window and Window Management API (#2010)
1 parent 5243a64 commit 9b14b1e

File tree

12 files changed

+268
-2
lines changed

12 files changed

+268
-2
lines changed

features/backdrop.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ status:
66
compute_from: css.selectors.backdrop
77
compat_features:
88
- css.selectors.backdrop
9+
- css.selectors.backdrop.dialog
910
- css.selectors.backdrop.inherit_from_originating_element

features/backdrop.yml.dist

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,19 @@ compat_features:
2828
# safari_ios: "15.4"
2929
- css.selectors.backdrop
3030

31+
# baseline: high
32+
# baseline_low_date: 2022-03-14
33+
# baseline_high_date: 2024-09-14
34+
# support:
35+
# chrome: "37"
36+
# chrome_android: "37"
37+
# edge: "79"
38+
# firefox: "98"
39+
# firefox_android: "98"
40+
# safari: "15.4"
41+
# safari_ios: "15.4"
42+
- css.selectors.backdrop.dialog
43+
3144
# baseline: low
3245
# baseline_low_date: 2024-03-05
3346
# support:

features/dialog.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,14 @@ description: The `<dialog>` HTML element represents a modal or non-modal dialog
33
spec: https://html.spec.whatwg.org/multipage/interactive-elements.html#the-dialog-element
44
group: html-elements
55
caniuse: dialog
6+
compat_features:
7+
- api.HTMLDialogElement
8+
- api.HTMLDialogElement.cancel_event
9+
- api.HTMLDialogElement.close
10+
- api.HTMLDialogElement.close_event
11+
- api.HTMLDialogElement.open
12+
- api.HTMLDialogElement.returnValue
13+
- api.HTMLDialogElement.show
14+
- api.HTMLDialogElement.showModal
15+
- html.elements.dialog
16+
- html.elements.dialog.open

features/dialog.yml.dist

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,5 @@ compat_features:
2222
- api.HTMLDialogElement.returnValue
2323
- api.HTMLDialogElement.show
2424
- api.HTMLDialogElement.showModal
25-
- css.selectors.backdrop.dialog
2625
- html.elements.dialog
2726
- html.elements.dialog.open

features/dom.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,4 +274,5 @@ compat_features:
274274
- api.TreeWalker.previousSibling
275275
- api.TreeWalker.root
276276
- api.TreeWalker.whatToShow
277+
- api.Window.document
277278
- api.XMLDocument

features/dom.yml.dist

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ compat_features:
119119
- api.ProcessingInstruction.target
120120
- api.Text
121121
- api.Text.splitText
122+
- api.Window.document
122123

123124
# baseline: high
124125
# baseline_low_date: 2015-07-29

features/history.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: History
2-
description: "The History API manipulates the browser session history, from navigations to state management, in the tab or frame that the current page is loaded in."
2+
description: "The `window.history` API manipulates the browser session history, from navigations to state management, in the tab or frame that the current page is loaded in."
33
spec: https://html.spec.whatwg.org/multipage/nav-history-apis.html#the-history-interface
44
caniuse: history
55
# This gets the feature closest to matching Caniuse.
@@ -15,3 +15,5 @@ compat_features:
1515
- api.History.replaceState
1616
- api.History.scrollRestoration
1717
- api.History.state
18+
- api.Window.history
19+
- api.Window.popstate_event

features/history.yml.dist

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ compat_features:
3030
- api.History.forward
3131
- api.History.go
3232
- api.History.length
33+
- api.Window.history
3334

3435
# ⬇️ Same status as overall feature ⬇️
3536
# baseline: high
@@ -46,6 +47,19 @@ compat_features:
4647
- api.History.pushState
4748
- api.History.replaceState
4849

50+
# baseline: high
51+
# baseline_low_date: 2015-07-29
52+
# baseline_high_date: 2018-01-29
53+
# support:
54+
# chrome: "5"
55+
# chrome_android: "18"
56+
# edge: "12"
57+
# firefox: "4"
58+
# firefox_android: "4"
59+
# safari: "5"
60+
# safari_ios: "4.2"
61+
- api.Window.popstate_event
62+
4963
# baseline: high
5064
# baseline_low_date: 2015-07-29
5165
# baseline_high_date: 2018-01-29

features/window-management.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: Window management
2+
description: "The `window.getScreenDetails()` method gets information about the screens on a device, which you can use to place new windows on a specific screen with `window.open()`."
3+
spec: https://w3c.github.io/window-management/
4+
compat_features:
5+
- api.Element.requestFullscreen.options_screen_parameter
6+
- api.Permissions.permission_window-management
7+
- api.Screen.change_event
8+
- api.Screen.isExtended
9+
- api.ScreenDetailed
10+
- api.ScreenDetailed.availLeft
11+
- api.ScreenDetailed.availTop
12+
- api.ScreenDetailed.devicePixelRatio
13+
- api.ScreenDetailed.isInternal
14+
- api.ScreenDetailed.isPrimary
15+
- api.ScreenDetailed.label
16+
- api.ScreenDetailed.left
17+
- api.ScreenDetailed.top
18+
- api.ScreenDetails
19+
- api.ScreenDetails.currentScreen
20+
- api.ScreenDetails.currentscreenchange_event
21+
- api.ScreenDetails.screens
22+
- api.ScreenDetails.screenschange_event
23+
- api.Window.getScreenDetails
24+
- http.headers.Permissions-Policy.window-management
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Generated from: window-management.yml
2+
# Do not edit this file by hand. Edit the source file instead!
3+
4+
status:
5+
baseline: false
6+
support:
7+
chrome: "111"
8+
edge: "111"
9+
compat_features:
10+
# baseline: false
11+
# support:
12+
# chrome: "100"
13+
# chrome_android: "100"
14+
# edge: "100"
15+
- api.Screen.change_event
16+
- api.Screen.isExtended
17+
- api.Window.getScreenDetails
18+
- http.headers.Permissions-Policy.window-management
19+
20+
# baseline: false
21+
# support:
22+
# chrome: "100"
23+
# edge: "100"
24+
- api.Element.requestFullscreen.options_screen_parameter
25+
- api.ScreenDetailed
26+
- api.ScreenDetailed.availLeft
27+
- api.ScreenDetailed.availTop
28+
- api.ScreenDetailed.devicePixelRatio
29+
- api.ScreenDetailed.isInternal
30+
- api.ScreenDetailed.isPrimary
31+
- api.ScreenDetailed.label
32+
- api.ScreenDetailed.left
33+
- api.ScreenDetailed.top
34+
- api.ScreenDetails
35+
- api.ScreenDetails.currentScreen
36+
- api.ScreenDetails.currentscreenchange_event
37+
- api.ScreenDetails.screens
38+
- api.ScreenDetails.screenschange_event
39+
40+
# ⬇️ Same status as overall feature ⬇️
41+
# baseline: false
42+
# support:
43+
# chrome: "111"
44+
# edge: "111"
45+
- api.Permissions.permission_window-management

0 commit comments

Comments
 (0)