Automatic update from web-platform-tests
[No-Vary-Search] Add No-Vary-Search logic to prefetch cache
Add logic to keep track of No-Vary-Search response data in
prefetch cache and use it to make decisions to use existing
prefetched response on new navigation.
Bug: 1378075
Change-Id: Ie299308ead2b369b899c17d4a33a64588376a07d
Fuchsia-Binary-Size: Size increase is unavoidable.
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4035669
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Adam Rice <ricea@chromium.org>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Max Curran <curranmax@chromium.org>
Commit-Queue: Liviu Tinta <liviutinta@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1081197}
--
wpt-commits: 5c4e374e6c3385befe533c12ab4db9c08cf9e5f4
wpt-pr: 37174
Automatic update from web-platform-tests
Miss the cache when breaking before a fragment with low break appeal.
If a fragment doesn't fit in the fragmentainer, we should of course
break before it. This normally happens automatically, but in some cases
the machinery needs an extra nudge. FinishFragmentation() will in some
cases clamp the break (inside) appeal down to kBreakAppealLastResort.
We need to miss the cache if we find such layout results in the cache,
since the break appeal may no longer be valid, when we have moved over
to a new fragmentainer. Otherwise we will never let the node fit in the
previous fragmentainer, not even after making the fragmentainers taller.
This leads to correctness issues, and also freezes during column
balancing, since no fragmentainer stretch amount will be enough to pull
the node back to the first fragmentainer.
Bug: 1395408, 1399449
Change-Id: Ic0fc032b0b7022dfb9e5c35af75e09d8b3f50316
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4085506
Commit-Queue: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Alison Maher <almaher@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1081158}
--
wpt-commits: e9fc77e6ef8591b00d6934ba7ac15e3e668926f8
wpt-pr: 37409
Automatic update from web-platform-tests
Add getEntriesWithChildFrames() method to Performance
This change introduces a method to include the Performance Entries of nested, same-origin iframes when fetching Performance Timeline data. It uses a Breadth-First Search algorithm on the Frame Tree whose root node is the current frame.
This functionality is available via the `includeFrames` boolean flag in each of `getEntries()`, `getEntriesByType()`, and `getEntriesByName()`.
Change-Id: I725d29c8295851d957c8b6580bd0d065f3bb197f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4051366
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Jaspreet Sandhu <jaspreetsandhu@google.com>
Cr-Commit-Position: refs/heads/main@{#1081090}
--
wpt-commits: 8b6702ab638f60114baa3377e9269b1f5541891b
wpt-pr: 37212
Automatic update from web-platform-tests
Support for 'keyPoints' on <animateMotion> path animations
If an <animateMotion> element had a path specified, 'keyPoints' would be
ignored. In this case 'keyPoints' can quite easily be supported using
the existing interval-progress remapping code though, so do that.
Fixed: 1297077
Change-Id: Icc6694e5d7f16c75a07794cc8a47e09ef520aacf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4085429
Reviewed-by: Philip Rogers <pdr@chromium.org>
Auto-Submit: Fredrik Söderquist <fs@opera.com>
Commit-Queue: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1081036}
--
wpt-commits: 78336c40ad76be4032612267b23a1c858cb93be7
wpt-pr: 37405
Automatic update from web-platform-tests
[anchor-position] Allow top-layer elements to anchor to abspos elements
Per discussion [1], we should allow a top-layer element to anchor to:
- Non-top-layer absolutely positioned elements
- Elements preceding the current element in the document top-layer
This patch implements it and adds a comprehensive test suite.
The implementation:
- Adds a flag to NGLogicalAnchorQuery::AnchorReference() to allow
returning invalid (i.e., abspos) anchors, and sets the flag when
positioning top-layer elements. This is fine because valid anchors
for a top-layer element are always inserted into the AnchorQuery
before we layout the top-layer element (ensured by layout tree order)
- Adds a flag to NGPhysicalAnchorQuery::Fragment() to allow returning
invalid (i.e., abspos) anchors, which is for `anchor-scroll`. The
result is further validated with layout tree order, so that we don't
anchor a top-layer element to another element after it in the top
layer.
- Introduces `ContainingScrollContainerForAnchor()` to correctly get
the scroll container (nullptr) of a fixed positioned anchor, as this
case is not possible before this patch
[1] https://github.com/w3c/csswg-drafts/issues/8165
Fixed: 1396436
Fixed: 1385882
Change-Id: I4436f35885e6fede6d780aae633c6525b4100510
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4083692
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Auto-Submit: Xiaocheng Hu <xiaochengh@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080999}
--
wpt-commits: 85ef51bdd55cea3fe87648edcedf1501ae6834dd
wpt-pr: 37366
Automatic update from web-platform-tests
Use direct compositing for canvases rendered on the CPU
Before this CL, we already had the plumbing for presenting CPU-rendered canvases via GpuMemoryBuffer for direct compositing. That code path was originally implemented to support LowLatency mode. With this change, we exercise the GpuMemoryBuffer code path for "regular" latency canvases. This accelerates compositing, especially for pages that have many canvases.
With this change, MotionMark Images test runs significantly faster, especially with angle/metal enabled.
Bug:1363627
Change-Id: I25b9e3105773fee84a1fc88432ed6640dac4c976
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4081383
Commit-Queue: Justin Novosad <junov@chromium.org>
Reviewed-by: Juanmi Huertas <juanmihd@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080998}
--
wpt-commits: 97d20cf7da9383db6a9f3b9848307e77b2d39454
wpt-pr: 37406
Automatic update from web-platform-tests
Add test for :has(:fullscreen) invalidation (#37396)
--
wpt-commits: 705d8645df38376784b2055d7de8fe93b362e723
wpt-pr: 37396
Automatic update from web-platform-tests
Fix LCP start time logic for non TAO images
This is to fix the logic of LCP start time for Non-Tao images and also
clean up of the previous CL https://crrev.com/c/4027513. The previous CL only accounts for the first non Tao image as LCP candidate.
The wpt in previous CL is flaky on Mac11-arm64. That is because somehow
FCP and LCP are set not by the same updates. We would expect so for a
page with an image and nothing else.
That wpt was re-written as non-tao-image-load-before-fcp-render-at-fcp.sub.html. That failure is no longer relevant as the new logic compares FCP with LCP.loadTime. We simply need to verify the logic is correct in the wpt. That is, if LCP.loadTime < FCP, LCP startTime should be the same as FCP, otherwise LCP startTime should be the same as LCP loadTime.
Also start time is passed as an additional arg to WindowPerformance::OnLargestContentfulPaintUpdated(), instead of being derived. This makes the logic easier to follow.
Bug: 1345948
Change-Id: I4451c8c46dc9c00eb5ecd2da743210d3a94004bf
Cq-Include-Trybots: luci.chromium.try:mac11-arm64-rel,mac12-arm64-rel
Include-Ci-Only-Tests: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4057886
Reviewed-by: Yoav Weiss <yoavweiss@chromium.org>
Commit-Queue: Hao Liu <haoliuk@chromium.org>
Reviewed-by: Dominic Farolino <dom@chromium.org>
Reviewed-by: Bo Liu <boliu@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080910}
--
wpt-commits: 3b0e272c7ffdf115befed378e8314f34c71512ec
wpt-pr: 37168
Automatic update from web-platform-tests
Remove autoPictureInPicture HTMLVideoElement attribute
This CL removes the autoPictureInPicture HTMLVideoElement attribute as
it was only used for experimental purposes in Chrome and it never
shipped. It has been removed from the spec as well.
Spec: https://github.com/w3c/picture-in-picture/pull/216
Bug: 917303
Change-Id: Ie9cd9136a2c8632a86cf85eff4aec50843514685
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4079109
Reviewed-by: Yoav Weiss <yoavweiss@chromium.org>
Commit-Queue: Fr <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/main@{#1080837}
--
wpt-commits: df2b9160a0c1b0d30561f0f7701ba1e2e02131bd
wpt-pr: 37347
Automatic update from web-platform-tests
SVG Text NG: Fix rendering with inconsistent textLength values
<text textLength="150" x="10" y="100">
<tspan textLength="300">Scalable Vector</tspan>
</text>
We placed the first 'S' at a wrong position.
The new behavior is compatible with the legacy layout.
Bug: 1399351
Change-Id: I0c8556f79898d89d94eb88c0f2b65dfb93f5a98d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4087969
Auto-Submit: Kent Tamura <tkent@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080824}
--
wpt-commits: 2d8060eaf9b26c29425063343c24390cfb62619f
wpt-pr: 37399
Automatic update from web-platform-tests
[webrtc-stats] Only expose hardware capabilities when capturing media
With a recent change to the webrtc-stats spec, user agents with a
fullscreen element will no longer have access to stats which expose
hardware capabilities.
The WPT tests for hardware capability stats has been updated to reflect
the fact that having a fullscreen element is not sufficient anymore,
rather than just removing these tests. This helps catch user agents that
have not updated to reflect this change to the spec.
Bug: 1398362
Change-Id: I221be5bfb900952c29459ce38b1fa1460205a1e3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4084785
Auto-Submit: Evan Shrubsole <eshr@google.com>
Commit-Queue: Harald Alvestrand <hta@chromium.org>
Reviewed-by: Harald Alvestrand <hta@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080815}
--
wpt-commits: ec58998ff5fc1ed86979d864cb21c45241ad8988
wpt-pr: 37375
Automatic update from web-platform-tests
Test that element.requestFullscreen() consumes user activation (#36969)
--
wpt-commits: 897b406f2925a22025d62001a5f7e97096e3f5a0
wpt-pr: 36969
Automatic update from web-platform-tests
Combine the popoverhide/popovershow events into one beforetoggle event
See [1] and [2] for context. This eliminates the "popoverhide" and
"popovershow" events, and replaces them with the "beforetoggle" event,
for both of these transitions. The event is a BeforeToggleEvent,
which has attributes `currentState` and `newState`, both of which
are either "open" or "closed" (and opposite of each other).
[1] https://github.com/openui/open-ui/issues/607#issuecomment-1319114654
[2] https://github.com/whatwg/html/pull/8221#issuecomment-1335672783
Bug: 1307772
Change-Id: I404861a10579365b56e6e8eae7c29f88a5aac166
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4035832
Reviewed-by: David Baron <dbaron@chromium.org>
Commit-Queue: Mason Freed <masonf@chromium.org>
Auto-Submit: Mason Freed <masonf@chromium.org>
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080695}
--
wpt-commits: 90aec8c944f678c6adc7c48692d7133145018761
wpt-pr: 37031
Automatic update from web-platform-tests
Add test expectation for window-onload-test.html (#37390)
* Add test expectation for window-onload-test.html
To unblock https://github.com/web-platform-tests/wpt/pull/37299
--
wpt-commits: 466c3b35543d6c2d8382eb0fd408d58d88af550c
wpt-pr: 37390
Automatic update from web-platform-tests
Remove the CSS line-height-step property
This patch removes the CSS line-height-step property and its
runtime flag, as the feature did not mature to ship.
Tests were removed in r741820 crrev.com/c/2059692 but there
are some left overs, which are removed in this patch.
Bug: 586413
Change-Id: Ia246d03a5c9fbc0ff78304ec80247dc4727ed830
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2040645
Commit-Queue: Kent Tamura <tkent@chromium.org>
Auto-Submit: Koji Ishii <kojii@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080613}
--
wpt-commits: 1d6b02fa2c9671e91729f26e41aab7f7e5267326
wpt-pr: 37374
Automatic update from web-platform-tests
Add the shadowrootmode attribute, and trigger streaming only if present
This CL adds the new "shadowrootmode" attribute for use with
declarative Shadow DOM. See the discussion at [1] for more details,
but this will be the new standardized attribute to enable DSD.
This CL triggers the other new behavior, streaming, based on the
presence of this new attribute. In this way, the old behavior and
the new behavior can both co-exist while developers migrate from
the old attribute to the new one, and behavior will not change
until they opt in.
The virtual/streaming-declarative-shadow-dom-disabled test suite
was enhanced with a copy of all of the "old" tests using the
"shadowroot" attribute, as they were before [2] landed. In this way
the virtual suite maintains the functionality of the old syntax.
This virtual suite also runs the "new" tests, to ensure no inadvertent
changes happen for the flag-disabled case.
[1] https://github.com/whatwg/html/pull/5465#discussion_r1026760650
[2] https://chromium-review.googlesource.com/c/chromium/src/+/3967571
Bug: 1042130,1379513,1396384
Change-Id: I5a888287b7f313d13dd28c8b4b0e36ae4feea512
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4039504
Commit-Queue: Mason Freed <masonf@chromium.org>
Auto-Submit: Mason Freed <masonf@chromium.org>
Reviewed-by: David Baron <dbaron@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080576}
--
wpt-commits: 999a3a15a3eb648764ffe09a0f90a602ab93f2ca
wpt-pr: 37215
Automatic update from web-platform-tests
[scroll-animations] Tree-scoped timeline lookups
This CL implements tree-scoped lookups for animation-timeline.
Previously, we could search for a timeline match on a given element
with a normal lookup in a hash table. This is unfortunately not enough
anymore, since tree-scoped lookups don't require exact matches, but
instead match any name in the target tree-scope or higher.
Therefore the lookup process now linearly iterates through the items
of the hash table. (We still store the timelines in a hash table
despite this linear traversal, because we use exact-match hash
lookups during CSSAnimations::CalculateTimelineUpdate).
Note: Adding a ::part() test exposed an issue with a call to
ParentOrShadowHostNode, since we'd pass a ShadowRoot to
LayoutTreeBuilderTraversal, which is not allowed. Hence this CL
changes that call to ParentOrShadowHostElement.
Fixed: 1382876
Change-Id: I4aa5ef03a663e201e97810b1f668036b90958316
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4079252
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080561}
--
wpt-commits: 8a7a1a5f7b00f6f0b65d52964bac8c2c6550cafb
wpt-pr: 37349
Automatic update from web-platform-tests
Add new slides media session actions to Picture-in-Picture window
This CL introduces "previous slide" and "next slide" media session
actions to websites through the Media Session API. Those can be used
to show "previous slide" and "next slide" controls in the
Picture-in-Picture window.
Intent to ship: https://groups.google.com/a/chromium.org/g/blink-dev/c/bjoGBvcwi7o
Bug: 1363548
Change-Id: I2492c699772b4a1b530a56d050259b3d374e9308
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3835037
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Sergey Ulanov <sergeyu@chromium.org>
Reviewed-by: Tommy Steimel <steimel@chromium.org>
Commit-Queue: Fr <beaufort.francois@gmail.com>
Reviewed-by: Toni Barzic <tbarzic@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080468}
--
wpt-commits: 20232ccfda1e7578cb2d400ac3741c1b2eeb39c9
wpt-pr: 35889
Automatic update from web-platform-tests
Enable paint entry buffering for soft navigations
Previously, paint timing entries were not being properly buffered, even
if they were fired when observed.
This CL fixes that, adds tests to that effect and ensures that the
buffering limits are respected and the dropped entries counter is being
incremented.
Bug: 1397720
Change-Id: Id53f0ea19fd85895b7a1942eb8faff77c7a5c49b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4084861
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Commit-Queue: Yoav Weiss <yoavweiss@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080420}
--
wpt-commits: f0c9b47e4061bc94d5dffa0a9877ca8fd499d1e7
wpt-pr: 37378
Automatic update from web-platform-tests
[Interop] Add a WPT that canceling mousemove doesn't affect drag.
This is related to https://github.com/w3c/uievents/issues/278.
Bug: 346473
Change-Id: I0bc9d732369a0fa5eb8f4a4bcc04c7eabce26e6b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4086261
Reviewed-by: Kevin Ellis <kevers@chromium.org>
Commit-Queue: Mustaq Ahmed <mustaq@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080459}
--
wpt-commits: 295326a59547f180def6ca57e5794fa68e07939f
wpt-pr: 37377
Automatic update from web-platform-tests
Support timeline offsets in animation keyframes
Bug: 1383158
Change-Id: Ic10055ccfa7979d115bded56b63058bdb9babdf8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4022283
Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
Reviewed-by: Jonathan Ross <jonross@chromium.org>
Reviewed-by: Kevin Ellis <kevers@chromium.org>
Commit-Queue: Mehdi Kazemi <mehdika@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1080379}
--
wpt-commits: e186d905e446a7d941d39fafaaacdd09e9e44596
wpt-pr: 37009