[wpt-sync] Sync PR 27581 - Window Placement: Implement Screens and ScreenAdvanced interfaces
Categories
(Testing :: web-platform-tests, task, P4)
Tracking
(firefox88 fixed)
Tracking | Status | |
---|---|---|
firefox88 | --- | fixed |
People
(Reporter: mozilla.org, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 27581 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/27581
Details from upstream follow.
b'Mike Wasserman <msw@chromium.org>' wrote:
Window Placement: Implement Screens and ScreenAdvanced interfaces
Add RuntimeEnabled Screens interface exposed via a Window supplement.
Add RuntimeEnabled ScreenAdvanced interface that inherits from Screen.
Make Screen class non-final with virtual functions for ScreenAdvanced.Plumb multiple blink::ScreenInfo structs from browser to renderers.
(via [Update]VisualProperties; like the existing singular ScreenInfo)
Add ScreenInfo::display_id to distinguish screens internally.Add callback plumbing to notify Screens on ScreenInfo array changes.
Rename the old API to Window.getScreensDeprecated (avoid name collision).
TODO(crbug.com/879300): Remove the old API and plumbing in a followup.TODO: Fix IDL ([measure] decorations; etc.)
TODO: Only fire Screens.change on array membership & currentScreen changes.
TODO: Update Screens::screens_ in OnScreenInfosChanged...
TODO: Add WindowScreens PermissionObserver & set_disconnect_handler?
TODO: Update automated tests for the new API.Bug: 897300, 1116528
Change-Id: I1d67cfabda62796274992e3e650d5209dd7bb857
Reviewed-on: https://chromium-review.googlesource.com/2669359
WPT-Export-Revision: dfe7cfe83cd3049a3aa33176fcc5a7d81f2493a1
Assignee | ||
Comment 1•3 years ago
|
||
Pushed to try (stability) https://treeherder.mozilla.org/#/jobs?repo=try&revision=68d840cdc4efc18da3320b452b3c94f2255b2869
Assignee | ||
Comment 2•3 years ago
|
||
Pushed to try (stability) https://treeherder.mozilla.org/#/jobs?repo=try&revision=a673863a9935b7e14359139af8540fe7c46c2d25
Assignee | ||
Comment 3•3 years ago
|
||
CI Results
Ran 15 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 2 tests and 4 subtests
Status Summary
Firefox
OK : 1
FAIL : 9
ERROR: 1
Chrome
OK : 2
PASS : 1
FAIL : 8
Safari
OK : 1
FAIL : 9
ERROR: 1
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
New Tests That Don't Pass
/screen_enumeration/getScreens.tentative.https.window.html: OK [GitHub
], SKIP [Gecko-android-em-7.0-x86_64-debug-geckoview
, Gecko-android-em-7.0-x86_64-opt-geckoview
, Gecko-android-em-7.0-x86_64-qr-debug-geckoview
, Gecko-android-em-7.0-x86_64-qr-opt-geckoview
, Gecko-linux1804-64-debug
, Gecko-linux1804-64-opt
, Gecko-linux1804-64-qr-debug
, Gecko-linux1804-64-qr-opt
, Gecko-linux1804-64-tsan-opt
, Gecko-windows10-64-debug
, Gecko-windows10-64-opt
, Gecko-windows10-64-qr-debug
, Gecko-windows10-64-qr-opt
, Gecko-windows7-32-debug
, Gecko-windows7-32-opt
] (Chrome: OK, Safari: OK)
getScreens() is present: FAIL (Chrome: PASS, Safari: FAIL)
getScreens() returns at least 1 Screen with permission granted: FAIL (Chrome: FAIL, Safari: FAIL)
getScreens() rejects the promise with permission denied: FAIL (Chrome: FAIL, Safari: FAIL)
getScreens() resolves for attached iframe; rejects for detached iframe: FAIL (Chrome: FAIL, Safari: FAIL)
Cached Screens interface from detached iframe doesn't crash, behaves okay: FAIL (Chrome: FAIL, Safari: FAIL)
/screen_enumeration/getScreens.values.https.html: ERROR [GitHub
], SKIP [Gecko-android-em-7.0-x86_64-debug-geckoview
, Gecko-android-em-7.0-x86_64-opt-geckoview
, Gecko-android-em-7.0-x86_64-qr-debug-geckoview
, Gecko-android-em-7.0-x86_64-qr-opt-geckoview
, Gecko-linux1804-64-debug
, Gecko-linux1804-64-opt
, Gecko-linux1804-64-qr-debug
, Gecko-linux1804-64-qr-opt
, Gecko-linux1804-64-tsan-opt
, Gecko-windows10-64-debug
, Gecko-windows10-64-opt
, Gecko-windows10-64-qr-debug
, Gecko-windows10-64-qr-opt
, Gecko-windows7-32-debug
, Gecko-windows7-32-opt
] (Chrome: OK, Safari: ERROR)
getScreensDeprecated() supports an empty set of mocked screens: FAIL (Chrome: FAIL, Safari: FAIL)
getScreensDeprecated() supports a single mocked screen: FAIL (Chrome: FAIL, Safari: FAIL)
getScreensDeprecated() supports multiple mocked screens: FAIL (Chrome: FAIL, Safari: FAIL)
getScreensDeprecated() rejects when the mock success value is set false: FAIL (Chrome: FAIL, Safari: FAIL)
Tests Disabled in Gecko Infrastructure
/screen_enumeration/getScreens.tentative.https.window.html: OK [GitHub
], SKIP [Gecko-android-em-7.0-x86_64-debug-geckoview
, Gecko-android-em-7.0-x86_64-opt-geckoview
, Gecko-android-em-7.0-x86_64-qr-debug-geckoview
, Gecko-android-em-7.0-x86_64-qr-opt-geckoview
, Gecko-linux1804-64-debug
, Gecko-linux1804-64-opt
, Gecko-linux1804-64-qr-debug
, Gecko-linux1804-64-qr-opt
, Gecko-linux1804-64-tsan-opt
, Gecko-windows10-64-debug
, Gecko-windows10-64-opt
, Gecko-windows10-64-qr-debug
, Gecko-windows10-64-qr-opt
, Gecko-windows7-32-debug
, Gecko-windows7-32-opt
] (Chrome: OK, Safari: OK)
/screen_enumeration/getScreens.values.https.html: ERROR [GitHub
], SKIP [Gecko-android-em-7.0-x86_64-debug-geckoview
, Gecko-android-em-7.0-x86_64-opt-geckoview
, Gecko-android-em-7.0-x86_64-qr-debug-geckoview
, Gecko-android-em-7.0-x86_64-qr-opt-geckoview
, Gecko-linux1804-64-debug
, Gecko-linux1804-64-opt
, Gecko-linux1804-64-qr-debug
, Gecko-linux1804-64-qr-opt
, Gecko-linux1804-64-tsan-opt
, Gecko-windows10-64-debug
, Gecko-windows10-64-opt
, Gecko-windows10-64-qr-debug
, Gecko-windows10-64-qr-opt
, Gecko-windows7-32-debug
, Gecko-windows7-32-opt
] (Chrome: OK, Safari: ERROR)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/20700f956146 [wpt PR 27581] - Window Placement: Implement Screens and ScreenAdvanced interfaces, a=testonly
Comment 5•3 years ago
|
||
bugherder |
Description
•