Automatic update from web-platform-tests
COEP: Add CacheStorage+DedicatedWorker WPT tests.
Test CacheStorage responses entering in a COEP DedicatedWorker are
enforced against CORP/CORS.
In a follow-up, the implementation:
https://chromium-review.googlesource.com/c/chromium/src/+/2080355/2
Bug: 1031542
Change-Id: Ia7b03317eb30727331ff00b49b8d61ad1b06e676
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2080353
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745517}
--
wpt-commits: 40dc04fca82111bedc417296361bd5f31333bef8
wpt-pr: 22020
Automatic update from web-platform-tests
Add IDL and test for Constructable Stylesheet Objects (#22004)
Closes https://github.com/web-platform-tests/wpt/pull/22003.
--
wpt-commits: 20ecc32c04fc627d77acbe51e3543e942a624c7f
wpt-pr: 22004
Automatic update from web-platform-tests
Input element does not fire scroll event
When there is text that overflows an input element, the scroll event is
not fired when the text scrolls into view.
The input element never receives the scroll event from the user agent
shadow DOM internal editor element. The fix is to change the scroll
event's target to the shadow host element when the event is generated.
Bug: 989937
Change-Id: Iff4aeae6adb931d681a2ade72eb8032c5a23067c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2064818
Commit-Queue: Liviu Tinta <liviutinta@chromium.org>
Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
Reviewed-by: David Bokan <bokan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745459}
--
wpt-commits: ebb246d2104b0a114fe31309ecb65a6a3c8343a2
wpt-pr: 21885
Automatic update from web-platform-tests
Fixes to wpt/svg/styling/presentation-attributes-* tests
Missing negation in the "d presentation attribute not supported on other
elements" subtest in ...-special-cases.html test.
Set 'irrelevantElement' to null for 'd', 'height', 'r', 'rx', 'ry',
'transform', 'width', 'x' and 'y' since they are all mentioned in the
table in the spec[1] as being special. They are also covered by the
...-special-cases.html test.
The definition of 'Applies to' for the 'transform' attribute varies
slightly between the SVG specification and CSS transforms
specifications, so this applies essentially the intersection of those
two.
[1] https://svgwg.org/svg2-draft/styling.html#PresentationAttributes
Bug: 1056055
Change-Id: Id7a6e604d4f48abbd601bdc09ec9f7ff795b86ca
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2078581
Reviewed-by: Stephen Chenney <schenney@chromium.org>
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Cr-Commit-Position: refs/heads/master@{#745452}
--
wpt-commits: 99bdd54a8adc811da1f8826e58a99c178f4ed217
wpt-pr: 22016
Automatic update from web-platform-tests
shape-outside test slightly incorrect (#22019)
* Parent container was too narrow for image, margin and text
* Tighter constraint
--
wpt-commits: 1f45266914e4397dbe715db8ba27ab30963be794
wpt-pr: 22019
Automatic update from web-platform-tests
Ship @supports selector()
Unfortunately, some animation tests are now failing, because the tests
use CSS.supports to query for ::marker support, and change their
behavior to include ::marker animations. Animating ::marker is currently
not allowed by the spec, and therefore not supported by Blink.
I2S: https://groups.google.com/a/chromium.org/d/topic/blink-dev/MVXTnyC_4bQ/discussion
Bug: 979041, 1054509
Change-Id: Ib97bec4b4ef9e83598543b6d77bc48e434c6180a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2064930
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745427}
--
wpt-commits: ea450feb1189f9f53d16c2a01f90aa97c75eb99b
wpt-pr: 22017
Automatic update from web-platform-tests
Correct some calls on format_exc() in wptrunner (#21878)
The first argument passed to format_exc() should not be an exception.
It is a limit of number of lines of trace back to print.
--
wpt-commits: fef9bd1f168f2ab75e9a3e5d3d01dff7b660f573
wpt-pr: 21878
Automatic update from web-platform-tests
SharedWorker: Add WPTs for failure with importing non-existing scripts
This CL adds tests to static/dynamic import of non-existing scripts
modules shared workers.
Without 'static import on classic worker' test, all the tests
corresponding to dedicated-worker-import-failure.html have added.
'static import on classic worker' is treated as parse error, and the way
to handle parse error differs from fetching non-existing or invalid
scripts which are tested in this test file.
Therefore, I will add WPTs for parse error in separated files by the
following CLs.
Change-Id: I1f4555f2ea8597f0c0fc197494f0ba5d1510db75
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2071466
Commit-Queue: Eriko Kurimoto <elkurin@google.com>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745395}
--
wpt-commits: 7cff683a32daccabe364078fa9a66305d6ed908c
wpt-pr: 21955
Automatic update from web-platform-tests
Adjust wpt/svg/painting/reftests/marker-path-{001,022,023}-ref.svg
marker-path-001-ref.svg:
The ref did not include the contribution from the viewBox on the
<marker> in some case. Adjust the markerWidth/Height to make the
'viewBox' contribution a scale-factor of one. Set 'overflow' to
'visible' to avoid clipping artifacts.
marker-path-022-ref.svg:
marker-path-023-ref.svg:
Renders the markers twice - both on the shape itself and as
"additional" reference markers. Drop the markers from the shape.
Update the expectations for
wpt/svg/struct/reftests/use-inheritance-001.svg
wpt/svg/painting/reftests/marker-path-022.svg and
wpt/svg/painting/reftests/marker-path-023.svg
Bug: 674797, 785246, 1056492
Change-Id: I164fd7a826f8efdb5c5b5cbc486b81906d32a254
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2077719
Reviewed-by: Stephen Chenney <schenney@chromium.org>
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Cr-Commit-Position: refs/heads/master@{#745392}
--
wpt-commits: 861c09a93db8b0596046e86aea513220947724e0
wpt-pr: 22007
Automatic update from web-platform-tests
Centralize invalidation for style attribute changes.
Style attribute changes could affect style matching of other elements
than the one that gets its style attribute modified because of selectors
which have a style attribute selector in the non-right-most compound.
For instance:
[style] + div
In this case the div will be invalidated by an invalidation set for the
style attribute scheduled in StyleEngine::AttributeChangedForElement().
This method was not invoked for all variants of style attribute
modifications. In particular setting the text for Element.style.
This CL centralizes the invalidation handling to cover all cases.
Bug: 1056151
Change-Id: Iceb70c284e2bb6b209a4243d61f941670eab323e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2078532
Reviewed-by: Xiaocheng Hu <xiaochengh@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745382}
--
wpt-commits: d9d233df5bd89de7c182fc45f2de303d29fe666d
wpt-pr: 22006
Automatic update from web-platform-tests
Only allow positioned objects to be relayout boundaries.
Layout now generates some paint information on physical fragments.
Specifically (for this bug at least) if a sub-tree contains any floats.
This conflicted with the relayout boundary optimization. If a float was
added we wouldn't paint it, as we'd stop layout at the relayout
boundary, not telling the parent fragments that this subtree contained
a float.
This patch only allows relayout boundaries to occur at positioned
objects which always have self painting layers (which is the most
common self painting layer).
For the sites that I found which use this optimization (devtools,
facebook, bing) all occur on a positioned object.
Bug: 1049973
Change-Id: Iafaf68bf9642788a71e8f882a154e6acd7cbef46
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2076078
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745302}
--
wpt-commits: 06fef020fd350a4091c8a19dc83e50d8456f3dc1
wpt-pr: 21996
Automatic update from web-platform-tests
Always fetch origin policies from /.well-known/origin-policy
This is the first step at implementing the new fetching semantics from the updated origin policy specification. It also deletes some parts that are no longer in the spec and would have needed updating anyway.
In particular, this removes:
* The distinction between default origin policies and versioned origin policies, and along with it, the "latest version map". This removes, for now, the application of origin policies to pages without an Origin-Policy header; that will be added back as part of the caching work in crbug.com/1042040.
* Redirect-handling logic for default policies. Redirects are now always an error.
* Parsing of the response header from the server. We currently just check for its presence, and will do parsing according to the new spec as part of crbug.com/1042036.
* Sending Sec-Origin-Policy: 0 on the request. We may add this back later, but it is still under discussion: https://github.com/WICG/origin-policy/issues/51
* A good amount of C++ "unit tests" that were rather integration test-ey, and would have had to be rewritten anyway. Instead they are replaced with web platform test integration tests.
* A thorough web platform test of the origin policy installation/deletion cycle, which would have had to be rewritten, and then rewritten again once we tackle crbug.com/1042049. We'll want to refer to it in version history once those foundations are stable.
* Reporting, for now. We need to first spec this and then add it back. See https://github.com/WICG/origin-policy/issues/62.
Additionally, although we removed all parsing of the response header, we changed the code to look for the presence of Origin-Policy instead of Sec-Origin-Policy per the latest spec.
Apart from removals, this CL's biggest changes are to the web platform tests. This implements the plan discussed at https://github.com/web-platform-tests/wpt/issues/20773 and https://github.com/web-platform-tests/rfcs/pull/44 which allows us to serve different origin policies per subdomain. The test origin policies also now contain "id" members, but those are not used or tested for now; that will occur in https://crbug.com/1042036.
Bug: 1042034
Change-Id: I4674fe2cfbc1f3e174c76415d86a487e750cdb0d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2020488
Commit-Queue: Domenic Denicola <domenic@chromium.org>
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Reviewed-by: Matt Mueller <mattm@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Dominic Battré <battre@chromium.org>
Reviewed-by: Daniel Vogelheim <vogelheim@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745187}
--
wpt-commits: 496499a3188a8da571cbe59e182d555c2a6b8d69
wpt-pr: 21904
Automatic update from web-platform-tests
[paint] Add test for clipping focus outlines.
This adds a test for the progression caused by:
https://chromium-review.googlesource.com/c/chromium/src/+/1869012
Which corrected the clip state for paint descendants.
Bug: 1049976
Change-Id: I1c53cd800fa9ac342c025703e6d05359b582da56
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2076534
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745140}
--
wpt-commits: 6d086b32af84cebab48ef8414baf923fa558e6f4
wpt-pr: 21997
Automatic update from web-platform-tests
Don't let a CompositingInputsRoot be a contain:strict element if it was dirty.
contain:strict elements are stopping points for ancestor recursion when
finding a CompositingInputsRoot, but this should only be for when
*descendants* of the contain:strict element are dirtied, not the
contain:strict element itself.
This problem exhibited in a bug in a case when the contain:strict
element was also position:sticky, causing it to fail to update sticky
position constraints as a result.
Bug: 1051455
Change-Id: If7e9f3d19ce5dc949ee9ba6ab7c0c0c2e03b2f20
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2076546
Reviewed-by: Manuel Rego <rego@igalia.com>
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745093}
--
wpt-commits: 859d8a4995e90ac5820ea4ae123aea72996c1a57
wpt-pr: 22000
Automatic update from web-platform-tests
Reland "[css-pseudo] Implement legacy markers as real pseudo-elements"
This is a reland of 7b29a982d68ee147dcde5858014cb050ad183eea
The initial patch was reverted due to a leak caused by a condition in
LayoutObjectChildList::DestroyLeftoverChildren, which was preventing
markers from getting destroyed.
Original change's description:
> [css-pseudo] Implement legacy markers as real pseudo-elements
>
> Before this patch, list markers were anonymous boxes in legacy layout.
> This patch makes them be pseudo-elements instead. This is a follow-up of
> r731964, which did the same for LayoutNG.
>
> Just like r731964, this patch improves the flexbox_with_list_item.html
> performance test by a 30-40% (this time for legacy).
>
> BUG=457718
>
> TEST=editing/execCommand/create-list-1.html-disabled
> TEST=editing/pasteboard/drag-selected-image-to-contenteditable.html
> TEST=editing/pasteboard/input-field-1.html
> TEST=editing/selection/drag-to-contenteditable-iframe.html
> TEST=editing/selection/move-by-line-002.html
> TEST=editing/selection/selectNode.html
> TEST=editing/selection/selectNodeContents.html
> TEST=editing/unsupported-content/list-delete-001.html
> TEST=editing/unsupported-content/list-type-after.html
> TEST=editing/unsupported-content/list-type-before.html
> TEST=external/wpt/css/css-pseudo/marker-content-014.html
> TEST=external/wpt/css/css-pseudo/marker-content-019.html
> TEST=external/wpt/css/css-pseudo/marker-content-020.html
> TEST=inspector-protocol/resources/dom-snapshot-pseudo-element.html
> TEST=paint/invalidation/list-marker-2.html
> TEST=paint/invalidation/offset-change-wrong-invalidation-with-float.html
>
> Change-Id: I58c8d49e1f2168add3c78a024a2b9371b34262d7
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2007733
> Commit-Queue: Oriol Brufau <obrufau@igalia.com>
> Reviewed-by: Koji Ishii <kojii@chromium.org>
> Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
> Reviewed-by: Rune Lillesveen <futhark@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#743220}
Bug: 457718
Change-Id: Ia20878e1aed120f7822ec009ed4a1c96928b46dc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2066747
Commit-Queue: Oriol Brufau <obrufau@igalia.com>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#745012}
--
wpt-commits: 7f259d8f7478fd0d5cbad10ffbf90e33aecaa608
wpt-pr: 21960
Treating as many realms as we can as debuggee makes us much less likely to
accidentally cause side-effects during eager-evaluation of code in the console.
Differential Revision: https://phabricator.services.mozilla.com/D65445
--HG--
extra : moz-landing-system : lando
I've run into this a couple times now, where as I'm tweaking things, I
accidentally introduce something that throws. The code as it was defaulted
to allowing calls to any native function that throws, which seems like a
bad idea, so this now defaults to termination when an error is encountered.
Depends on D65466
Differential Revision: https://phabricator.services.mozilla.com/D65467
--HG--
extra : moz-landing-system : lando
Splitting this list into its own file reduces the chances of accidentally
referencing incorrect globals.
The implementation's original placement in eval-with-debugger for instance
was accidentally pulling Reflect from resource://gre/modules/reflect.jsm
because that file also makes use of `Reflect.parse`. Rather than try to
keep it in that file and rename things, placing the list in its own
lazy-loaded file seems like the easiest and most future-proof approach.
Differential Revision: https://phabricator.services.mozilla.com/D65466
--HG--
extra : moz-landing-system : lando
* Dont flag a form as user-modified when the input is from autofilling a login
* Avoid sending PasswordEditedOrGenerated messages to the parent from non-user-modified forms.
Differential Revision: https://phabricator.services.mozilla.com/D64843
--HG--
extra : moz-landing-system : lando
This is based on a patch by robert.mader
This is supposed to be a minimal patchset to make Firefox work on
Mutter 3.36 in a similar fassion as on 3.34. The changes should
be compatible with any Wayland compositor, especially those that
do similar agressive culling and frame callback reduction.
While technically non-optimal, they should work as a short time
solution.
1.: Do not commit the toplevel surface in moz_container_move. Instead
use gdk_window_invalidate_rect, which (hopefully) triggers a surface
commit as well while not interfering in the order of commands. The is
necessary as the previous commit would commit invalid state in certain
scenarios (like fullscreening).
This fixes broken fullscreening.
2.: Do not set an opaque region on containers if that would cover the
whole toplevel surface. This works around problems concerning mouse
input responsiveness, as a completely covered toplevel surface might
not get frame callbacks any more, but we currently rely on it to process
input events like mouse movements.
3.: Only set an opaque region on the toplevel surface when maximized.
While the toplevel opaque region is actually redundant as long as the
content surface has an opaque region set, we need it for workaround 2.
But we want to unset it when not needed as occasianally it is not in
sync, creating glitches when e.g. unmaximizing.
Differential Revision: https://phabricator.services.mozilla.com/D65476
--HG--
extra : moz-landing-system : lando
This changes ThrowSetConst to have a JSAtom* operand so that we can use it in
all cases.
Differential Revision: https://phabricator.services.mozilla.com/D65453
--HG--
extra : moz-landing-system : lando
JSOp::CheckLexical no longer loads the local itself, it just looks at the value
on top of the stack. So the bytecode changes as follows:
* CheckLexical, GetLocal => GetLocal, CheckLexical
* CheckAliasedLexical, GetAliasedVar => GetAliasedVar, CheckLexical
This is more efficient especially for aliased vars because we don't have to walk
the environment chain twice.
For _sets_ we now do a GetAliasedVar/GetLocal, CheckLexical, Pop before doing the
set. I think this is acceptable: gets should be a lot more common especially for
aliased lexicals and GetAliasedVar/CheckLexical isn't much slower than the old
CheckAliasedLexical.
Differential Revision: https://phabricator.services.mozilla.com/D65449
--HG--
extra : moz-landing-system : lando
The WebChannels were not being initialized on beta due to being initialized
after the feature pref was checked. This patch changes it so that
profiler.firefox.com will still have the WebChannel registered, and then
if the menu button is enabled via the WebChannel, the feature flag is flipped.
I did not include a test on this, as this is a temporary measure until we flip
on the mechanism for all users.
Differential Revision: https://phabricator.services.mozilla.com/D65199
--HG--
extra : moz-landing-system : lando
Even though e10s is turned on in GeckoView, we do not yet support the extension
process; we should skip these tests in that case.
Differential Revision: https://phabricator.services.mozilla.com/D65418
--HG--
extra : moz-landing-system : lando
On Linux and Mac, this makes `dmd.py` *much* faster when it is first run on a
DMD data file.
On Windows, this makes DMD actually usable locally. Previously the stacks
weren't fixed and so were rubbish.
Differential Revision: https://phabricator.services.mozilla.com/D57271
--HG--
extra : moz-landing-system : lando
* Dont flag a form as user-modified when the input is from autofilling a login
* Avoid sending PasswordEditedOrGenerated messages to the parent from non-user-modified forms.
Differential Revision: https://phabricator.services.mozilla.com/D64843
--HG--
extra : moz-landing-system : lando
Since we switched to "software" pass recording,
`wgpu` no longer keeps references to the objects used when recording a pass.
This means Gecko needs to keep them alive up until the encoding is done.
Differential Revision: https://phabricator.services.mozilla.com/D65319
--HG--
extra : moz-landing-system : lando
My understanding of the problem is as follows. We create the main content document, first it is about:blank in a content process. When the bug happens the about:blank document has WindowRaised called on it and this makes it the active window, and then it tells the parent process that it is the active browsing context (via SendSetActiveBrowsingContext). When the bug doesn't happen this doesn't happen, perhaps because we navigate away from about:blank before it can happen.
So the browsing context navigates to the new document and it gets moved to a different content process. BrowsingContextGroup::EnsureSubscribed is called, if the parent process got told of the active document above then we call SendSetupFocusedAndActive (if it didn't then the active browsing context remains null and so it doesn't call SendSetupFocusedAndActive). When the child gets RecvSetupFocusedAndActive it calls SetActiveBrowsingContextFromOtherProcess on the focus manager.
nsFocusManager::WindowRaised is called for the new document, we bail early because of this line
https://searchfox.org/mozilla-central/rev/d5b34cc8872177d3ee071e06f787c2a14268595b/dom/base/nsFocusManager.cpp#661
because we are the browsing context that was set from another process. And so we fail to make the Focus call at the end of that function. So mFocusedWindow remains null in the child process.
The nsFocusManager::WindowShown call that happens for every new document load thus does not do anything because this line
https://searchfox.org/mozilla-central/rev/d5b34cc8872177d3ee071e06f787c2a14268595b/dom/base/nsFocusManager.cpp#906
always fails because mFocusedWindow is null and it never changes.
Differential Revision: https://phabricator.services.mozilla.com/D65302
--HG--
extra : moz-landing-system : lando