[wpt-sync] Sync PR 35416 - [ComputePressure] Implement PressureObserverManager in Blink
Categories
(Testing :: web-platform-tests, task, P4)
Tracking
(firefox106 fixed)
| Tracking | Status | |
|---|---|---|
| firefox106 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
(Depends on 1 open bug, )
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 35416 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/35416
Details from upstream follow.
Wei4 Wang <wei4.wang@intel.com> wrote:
[ComputePressure] Implement PressureObserverManager in Blink
Currently all PressureObservers connect to the PressureServiceImpl
directly. As a result, there may be too many Mojo connections
and the same PressureState is sent from the Browser to Blink
multiple times.This CL implements PressureObserverManager in Blink to maintain
active PressureObservers. The PressureObserverManager connects to
the PressureServiceImpl to receive PressureState and broadcasts the
PressureState to active observers.The implementation of registering an active PressureObserver to
PressureObserverManager is complicated now, because we need to
maintain the quantization scheme correctly. However, we will remove
the quantization in the future according to the newest spec [1]. We
can simplify the implementation when quantization is removed.[1] https://wicg.github.io/compute-pressure/#ref-for-dfn-pressure-states-1
Bug: 1311941
Change-Id: I707d70518799c938b98f8a6aaab5177800fb0ee7Reviewed-on: https://chromium-review.googlesource.com/3771113
WPT-Export-Revision: ae9fafdd59c73d91220aef8ee219eefd26a721b1
| Assignee | ||
Comment 1•3 years ago
|
||
| Assignee | ||
Comment 2•3 years ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 2 tests and 4 subtests
Status Summary
Firefox
OK : 2
PASS: 1
FAIL: 10
Chrome
OK : 2
PASS: 4
FAIL: 7
Safari
OK : 2
PASS: 1
FAIL: 10
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
New Tests That Don't Pass
- /compute-pressure/compute_pressure_basic_async.tentative.https.window.html [wpt.fyi]
- Return NotSupportedError when calling observer():
FAIL(Chrome:FAIL, Safari:FAIL) - Return SecurityError when calling observer():
FAIL(Chrome:FAIL, Safari:FAIL) - Basic functionality test:
FAIL(Chrome:FAIL, Safari:FAIL) - Removing observer before observe() resolves works:
FAIL(Chrome:FAIL, Safari:FAIL) - Calling observe() multiple times works:
FAIL(Chrome:FAIL, Safari:FAIL) - Same quantization should not stop other observers:
FAIL(Chrome:FAIL, Safari:FAIL) - Different quantization should stop other observers:
FAIL(Chrome:FAIL, Safari:FAIL)
- Return NotSupportedError when calling observer():
- /compute-pressure/compute_pressure_detached_iframe.tentative.https.html [wpt.fyi]
- PressureObserver.observe() on detached frame rejects:
FAIL(Chrome:PASS, Safari:FAIL) - PressureObserver.disconnect() on detached frame returns:
FAIL(Chrome:PASS, Safari:FAIL) - Detaching frame while PressureObserver.observe() settles:
FAIL(Chrome:PASS, Safari:FAIL)
- PressureObserver.observe() on detached frame rejects:
Comment 4•3 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/f4f4963b571f
https://hg.mozilla.org/mozilla-central/rev/855de874b796
Description
•