When the window of the current child actor instance is moved
into bfcache the actor doesn't get destroyed. Instead
this.contentWindow will become "null", which means that the
command has to be run again in the active actor instance.
By raising a specific error message in the child actor, the
commands actor proxy can handle that error for its retry logic.
Differential Revision: https://phabricator.services.mozilla.com/D101055
This allows supporting image-set(), etc, and simplifies the bullet frame
code significantly, too thanks to two changes:
* Instead of manually managing the image request, use the CSS image
loader, with the `REQUEST_REQUIRES_REFLOW` flag, to handle image
loads correctly. This didn't exist when this code was initially
implemented, but we can nicely use it now.
* Instead of re-implementing another WebRender command-builder thing,
we can just reuse the nsImageRenderer code.
Differential Revision: https://phabricator.services.mozilla.com/D100774
Automatic update from web-platform-tests
PlzDedicatedWorker: WPT for nested blob URL workers
This CL adds 3 test cases for nested blob URL workers:
1. a blob URL worker (parent) creates a blob URL worker (child)
2. a blob URL worker (parent) creates a worker (child)
3. a worker (parent) creates a blob URL worker (child)
When the PlzDedicatedWorker feature is enabled, the first and third
tests fail now.
Bug: 1017034
Change-Id: I8b2221be3233312cb4f3cf3983215f658a40830d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2596490
Commit-Queue: Asami Doi <asamidoi@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840918}
--
wpt-commits: 313f99aafa6620894b8d7a7acc6e015b9548e179
wpt-pr: 27058
Automatic update from web-platform-tests
[LayoutNG] Make abspos' fragment encompass the height of its children
In CL:2577757, we allowed fragmentation for abspos positioned using the
bottom property and with `height: auto`. There was one remaining issue
with the abspos fragment when a child of his had a break-rule - its
height was off, giving the impression that it didn't encompass all its
children. This CL resolves this issue.
The behavior of expanding the height to encompass all children will
cause the bottom property to be off from where it was originally
intended to be. That's a downside widely discussed offline between
Rossen (co-author of the CSS Fragmentation spec), Alison and I, but a
solution relatively acceptable to a problem that isn't NP-complete.
Gecko seems to do the same as well.
Bug: 1156250
Change-Id: Ie67f7aff9a64e7d813f346ad83cd6d4bcd5186e7
--
wpt-commits: 5cdc2d5c22e3af1bb66c1d952af900379e8568b9
wpt-pr: 26953
Automatic update from web-platform-tests
content-visibility: Don't adjust position of a locked hittest result node.
This patch ensures that if we have a hittest result that has a locked
node, we don't try to recurse into its subtree. This can happen when we
do a PositionWithAffinity check.
R=chrishtr@chromium.org
Bug: 1162131
Change-Id: I357bd7032c6c2b6c9405bf26c49a36bda22d6a0d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2611453
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Commit-Queue: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840727}
--
wpt-commits: 11d344e3d74a4a1e3451a3ab696dd4733334e069
wpt-pr: 27068
Automatic update from web-platform-tests
Make invalid 'type' import assertion cause a module to fail to load
Add Modulator::ModuleTypeFromRequest to get the asserted type from
a ModuleRequest's list of import assertions, and use it to make module
creation fail if an invalid type is asserted.
In preparation for subsequent import assertions changes, plumb this
module type through GetFetchedModuleScript, where it will be needed
for module map lookups since module type will be used in the module
map cache key.
Add tests for the invalid module type failure, along with tests
verifying that JS modules can still load with an empty import assertions
clause and an unsupported import assertion.
A subsequent change will require the correct type assertion to be
present to load a JSON or CSS module, and the existing JSON/CSSS module
tests will be updated to reflect the new behavior at that time.
Bug: 1132413
Change-Id: I33e3e6ae68b14d6f6c561a58c0e260a7b129d930
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2603420
Reviewed-by: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Commit-Queue: Dan Clark <daniec@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#840714}
--
wpt-commits: 6532775f9f6c4a1bc2569c1ba13117e36e149384
wpt-pr: 27012
Automatic update from web-platform-tests
Each pointer should have different pointer id
For testdriver Action API, when we create a pointer, we need to give it
a pointer id, we need to give different id for different pointer.
We need to save the pointer information based on the pointer id, so we
need to give them different pointer id.
Bug: 1163370
Change-Id: I6533793151a260ff410d11272c547d2d27b4afa6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2611948
Reviewed-by: Liviu Tinta <liviutinta@chromium.org>
Commit-Queue: Lan Wei <lanwei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840713}
--
wpt-commits: 825155f31728265d283dd56046438115aaf6efac
wpt-pr: 27066
Automatic update from web-platform-tests
[blinkpy] Re-enable a few more tests that were blocked on crbug.com/997202
Bug: 997202
Change-Id: I670d9134fc8770c58f8688366a16830ba9a6435e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2575454
Commit-Queue: Stephen McGruer <smcgruer@chromium.org>
Reviewed-by: Kevin Ellis <kevers@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840635}
--
wpt-commits: 8b8c6a9f30b5f289eac112da0297bf892565b590
wpt-pr: 26784
Automatic update from web-platform-tests
Add test for IntersectionObserver with document as root (#27064)
Added test for IntersectionObserver with document as root
If specify {root: document}, the rootBounds should be the root intersection rectangle which is the document's viewport.
--
wpt-commits: 5a3a1b414d32952355eae7c949c109424979b988
wpt-pr: 27064
Automatic update from web-platform-tests
Add command-line flag to turn on debug logging in 'wpt manifest'
Previously there were debug statements in the code, but no way to
turn them on outside of modifying the code. This commit removes an old
'setup()' method that appears not to be used, and instead adds a
command-line flag (-v/--verbose) to enable debug logs.
A few more logs are also added to the flow to help the reader understand
what is happening.
--
'wpt manifest' - cap the multiprocessing factor on Windows
The manifest code previously just used multiprocessing.cpu_count() for
its number of processes. This can cause problems on Windows desktops
with a high number of cores, due to bugs in cypthon - see
https://crbug.com/1160108 and https://bugs.python.org/issue40263. This
commit caps the number of cores on Windows to a probably-safe value.
--
wpt-commits: 474afc77439f6c9f4499a34683c19973ca317dd4, e04f27b9946175edab6c09421ab5ceaa14b84539
wpt-pr: 27003
Automatic update from web-platform-tests
Fix CSP embedded enforcement with sandbox directive.
Due to a bug, CSP embedded enforcement was ignoring the whole CSP
directive when it contained one using the sandbox directive.
This patch trivially fix it. This is intented to be merged into M89
This patch also adds many tests for the documents:
1. initial empty document
2. about-blank
3. about-srcdoc
4. data-url
5. blob-url
6. same-origin
7. cross-origin
(1)(2)(3) are failing, because of https://crbug.com/1163174
Bug: 1163108,1163174
Change-Id: I888ab01009ae914809680451beee37c69b12734f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2611264
Reviewed-by: Camille Lamy <clamy@chromium.org>
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840581}
--
wpt-commits: b7c0a3e0b78b98c2da7526aaa607e25c2110fff6
wpt-pr: 27051
Automatic update from web-platform-tests
[LayoutNG] Fix incorrect start offset for nested abspos
In some specific cases, the offset of the innermost abspos was off by
exactly one fragmentainer block size. This CL fixes the issue.
Bug: 1157086
Change-Id: I9ee621e11d7e411de56a8d8c3da1561d2eb1f7e7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2602442
Commit-Queue: Benjamin Beaudry <benjamin.beaudry@microsoft.com>
Reviewed-by: Alison Maher <almaher@microsoft.com>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840252}
--
wpt-commits: d3ce095fcc6b5a85e6056fdebbf939caf2e2719f
wpt-pr: 27006
Automatic update from web-platform-tests
Remove myself from reviewers and PoC (#27049)
* Remove myself from tools/META.yml
* Remove myself from the admin page and add smcgruer@ instead
--
wpt-commits: 33f8de16be10f7907a93bbf664e1d14f0b229489
wpt-pr: 27049
Automatic update from web-platform-tests
[sandbox] Add WPT tests: inheritance from initiator.
Make sure sandbox flags are properly inherited when the initiator of the
navigation isn't the parent. This checks both sandbox flags defined by
the frame and by the HTTP response.
Bug: 1041376
Change-Id: I3c0b808ef9ec3ebefde40ec7609a36a1f5edaf6c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2607790
Reviewed-by: Camille Lamy <clamy@chromium.org>
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840132}
--
wpt-commits: 1a5e588248288950af919fbf1709e1311fb96877
wpt-pr: 27044
Automatic update from web-platform-tests
Port format_json.py to Python 3 (#27037)
This fixes a WPT lint error with Python 3
--
wpt-commits: e0ad10ba0000c8c8a0c8a7c36256694eaf4563d4
wpt-pr: 27037
Automatic update from web-platform-tests
[selectors] Make :focus-visible tests platform independent
For browsers that don't support :focus-visible yet
this change will make them to have consistent failure results
independently of the focus ring color on the different platforms.
Apart from that focus-visible-006.html is modified
like we did for the other tests in #26994.
--
[selectors] Fix typo in the CSS of focus-visible-009.html
It was using #buton ID, instead of #button.
--
wpt-commits: 1799ada4d0e446b8e43d3e3bf927273d6b68bda5, 3684161d1baebace16c01601f804c64cbdaeef1a
wpt-pr: 27041
Automatic update from web-platform-tests
[wpt] Fix position-sticky-nested-table.html
wpt/css/css-position/sticky/position-sticky-nested-table.html test was
broken.
It failed in FF/Safari, and Chrome with TablesNG.
https://wpt.fyi/results/css/css-position/sticky/position-sticky-nested-table.html
The broken part of the test insterted an absolutely positioned
element as a sibling of every element with sticky position.
The abspos element is then positioned so that its position matches
sticky elements position.
I am not sure what this was testing.
This does not work for tables, because instertion of abspos sibling
to td element creates an anonymous table wrapper.
The anonymous wrapper becomes abspos container.
This CL removes creation of the abspos element. The test now passes
in all browsers.
Change-Id: I548afad533040509567ca24265306ace0d28d4cb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2610190
Reviewed-by: David Grogan <dgrogan@chromium.org>
Commit-Queue: Aleks Totic <atotic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840049}
--
wpt-commits: 7bf6d4ccbc72baeb1753e45c38f6e1ee4c520353
wpt-pr: 27038
Automatic update from web-platform-tests
[WPT] Move upstream focus-querySelector-in-focus-event-handler.html
This patches converts the js-test.js test into a testharness.js,
and move it to WPT upstream repository.
BUG=523126
Change-Id: I3f5a6338f38af731d18f547c75bd9fd7274b5ae0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2610084
Reviewed-by: Sergio Villar <svillar@igalia.com>
Commit-Queue: Manuel Rego <rego@igalia.com>
Cr-Commit-Position: refs/heads/master@{#840036}
--
wpt-commits: ecb548a80a07fc80f8d2e67d5d5f5e1b0968e450
wpt-pr: 27035
Automatic update from web-platform-tests
Fix a css-paint-api/ layout test failure
This CL fixes a failing layout test dynamic-import.html. The problem
with it is that all the file name under css-paint-api/ needs to be
foo.https.html so that our test infra knows that it should spin up
an https server to run that test. The failing test doesn't have the
right suffix and that's why.
This Cl simply rename the test and it should be good.
Bug: 1157960
Change-Id: I3cdad68715eb0289b4a8707fa1d4c8a63421e031
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2606483
Commit-Queue: Xida Chen <xidachen@chromium.org>
Reviewed-by: Yi Gu <yigu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840031}
--
wpt-commits: 48a1ecbe24071b12c6cb2f2afe0dd16f910a958b
wpt-pr: 27036
Automatic update from web-platform-tests
[selectors] Improve :focus-visible tests
* Now we have one test per element, so we have more detailed
PASS/FAIL information. We also check that all test conditions
(outline and background colors) are right.
* Use more common colors in tests like "green" and "red"
instead of "darkgreen" and "tomato".
* focus-visible-004.html actually set "appearance: none".
So elements that are hidden now and not focusable
(radio button and checkbox) are removed.
* focus-visible-007.html is not modified as it has more problems
(see https://crbug.com/976438).
--
wpt-commits: 77ffd6eff47bed46236fbea6e998a18e6f4a7800
wpt-pr: 27032
Automatic update from web-platform-tests
[selectors] Add test for :focus-visible parsing
--
wpt-commits: 8e2098bd74a97f2566cd8fa8600d914c06cbd4ab
wpt-pr: 27033
Automatic update from web-platform-tests
[selectors] Add new :focus-visible tests
These tests check what happens when an active element
matches (or not) :focus-visible, and a script causes focus
to move elsewhere.
Basically these are tests for the next two points of the spec
(https://drafts.csswg.org/selectors-4/#the-focus-visible-pseudo):
"
* If the active element matches :focus-visible, and a script
causes focus to move elsewhere, the newly focused element
should match :focus-visible.
* Conversely, if the active element does not match :focus-visible,
and a script causes focus to move elsewhere,
the newly focused element should not match :focus-visible.
"
--
wpt-commits: b8553208f8e6ab3cb31e147efdbaf28ba54c88f4
wpt-pr: 27018
Automatic update from web-platform-tests
Fix flaky test about COEP.
This patch reverts previous instrumentation:
https://chromium-review.googlesource.com/c/chromium/src/+/2402719
Two problems have been found:
1. The test expected the load event to be triggered twice. One for the
initial load, then the child document navigates itself, which caused
a second load event to be dispatched.
The problem: the navigation might start before the load event. Those
are known as "client-side" redirect. The test fails because it
received only one load event. Solution is to wait for the load event
to be dispatched before initiating the navigation.
2. One test was doing weird things with several navigations triggered in
parallel (history.back() in the window + regular navigation).
Moreover the history.back() navigation was going toward a document
that navigate itself (again).
Solution was to rewrite the test.
Bug: 1013596
Change-Id: I1cbbbcf07a91e8beb220d688fb1e39f6559277cd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2584850
Auto-Submit: Arthur Sonzogni <arthursonzogni@chromium.org>
Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#839946}
--
wpt-commits: 95b19d0b902505286b705a71fe44fc8aa8fb608e
wpt-pr: 26857
Automatic update from web-platform-tests
Added tests for first-letter pseudo element with preceding punctuation and intervening spaces.
--
wpt-commits: e7ab50584f431b0f67e17f33bc80ac368236fa00
wpt-pr: 25828
Automatic update from web-platform-tests
Re-write wpt/cookies/http-state/ path tests
This also adds support for sending multiple Set-Cookie strings
to the test infrastructure.
Notes for history books (and reviewers)
legacy test => ported test cookie name map (ignoring Path)
path0001 => (path.html) testA=11; testB=11
path0002 => (path.html) testB=12; testA=12
path0003 => (path.html) testA=13; testB=13
path0004 => (path.html) testB=14; testA=14
path0005 => (path.html) test=15
path0006 => (path.html) test=16
path0007 => (path-redirect.html) test=1
path0008 => (path-redirect.html) test=9
path0009 => (path-redirect.html) test=10 (can be improved)
path0010 => (path-redirect.html) test=2
path0011 => (path-redirect.html) test=11
path0012 => (path-redirect.html) test=12
path0013 => (path-redirect.html) test=13
path0014 => (path-redirect.html) test=17
path0015 => not ported, see note below.
path0016 => (path-redirect.html) test=3
path0017 => (path-redirect.html) test=4
path0018 => (path-redirect.html) test=14 (can be improved)
path0019, dupe of (path.html) test1, not ported
path0020, dupe of (path.html) test2, not ported
path0021, dupe of (path.html) test3, not ported
path0022 => (path.html) test=17
path0023 => (path.html) test=18
path0024 => (path-redirect.html) test=15
path0025 => (path-redirect.html) test=16
path0026 => (path-redirect.html) test=5
path0027 => (path-redirect.html) test=6
path0028 => (path-redirect.html) test=7a
disabled-path0029 (path-redirect.html) test=7b
path0029 => (path.html) test=19
path0030 => (path.html) test=21
path0031 => path.html test=20
path0032 => (path-redirect.html) test=8a; test=8b
Notes:
For path0027 and path0028, I'm swapping the assertions (to expected a cookie) because Firefox, Safari and Chrome do this.
path0015 isn't possible to port with current WPT infra (as there are no dynamic handlers, and '/' is treated as a directory "mount").
https://bugs.chromium.org/p/chromium/issues/detail?id=1161544 is filed to track that work, and a few improvements to better capture
the intents of path0009 and path0018.
Bug: 1159925
Change-Id: I37da066e60d79e3f99e01a7d6ccbc408f447e01b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2598139
Commit-Queue: Mike Taylor <miketaylr@chromium.org>
Reviewed-by: Lily Chen <chlily@chromium.org>
Cr-Commit-Position: refs/heads/master@{#839497}
--
wpt-commits: 821a1ef63f08a7329175513b6c2eb00bb8b0152e
wpt-pr: 27002
Automatic update from web-platform-tests
[blink] Enable ModuleScript streaming compilation
- Bail out in ScriptStreamer::TryStartStreamingTask if the response
is not a JavaScript mime type (for CSS and JSON modules)
- Only initiate script streaming from the main thread (for now this
prevents streaming compilation for workers and worklets)
- Fix trace event ending for streaming compiled module scripts
- Add WPT test with a large CSS module that would previously trigger
script streaming
Bug: 1061857
Change-Id: I5100e4c12aa3504ea4132b344f7910041270318a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2595299
Commit-Queue: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#839447}
--
wpt-commits: e2c77fa4d187c6a179f9343925ef9c3ab5488e86
wpt-pr: 26941
Automatic update from web-platform-tests
[selectors] Improve :focus-visible tests
These tests were using "outline-style: auto" but then set an outline-color.
Some browsers like Firefox ignore the outline-color when rendering the auto style,
which follows the spec (https://drafts.csswg.org/css-ui/#typedef-outline-line-style):
"As such, this specification does not define how the outline-color and outline-width
are incorporated or used (if at all) when rendering auto style outlines."
So this patch changes outline-style to "solid" in all these tests to avoid this problem.
Apart from that the patch adds a condition to show the wrong behavior
if the browser doesn't support :focus-visible using "@supports not (selector(:focus-visible))".
That's not done for focus-visible-007.html as that test has other problems
that need to be fixed in its own patch (see https://crbug.com/976438).
--
wpt-commits: ccaf4599f0d853985bfb19fb87cfac20f0597308
wpt-pr: 26994
Automatic update from web-platform-tests
Corrected lh-rlh-on-root-001.html test based on issue 22055 (#27010)
--
wpt-commits: 9c26c9eb197c1beeca8947c1195d9ca57decf20b
wpt-pr: 27010