The test got added in bug 1744131 and set as expected to fail. The used <dialog>
element is only enabled in Nightly (see bug 1645046).
Differential Revision: https://phabricator.services.mozilla.com/D134412
We now support scrollbar-gutter property. So for example, assume the scroll
container has "scrollbar-gutter:stable". When toggling the visibility of
inline-end scrollbar, we can skip the reflow for the scroll inner frame because
the available inline-size for it cannot change.
This patch teaches TryLayout() to consider the sizes of scrollbar gutter rather
than the (assumed) visibility of scrollbars when deciding the need to call
ReflowScrolledFrame().
Also, TryLayout() doesn't need to report an inconsistent layout unless
the (showHScrollbar, showVScrollbar) pair changes the sizes of scrollbar
gutters.
Differential Revision: https://phabricator.services.mozilla.com/D134373
"media.navigator.permission.disabled" exists for controlling the permission
prompt separately.
This will allow consolidation of camera and microphone preference handling
into EnumerateRawDevices(). Although auto-disabling permission with
"media.navigator.streams.fake" is sometimes useful for tests, it is actually
easier to consider them independently because sometimes the auto-disabling
needs to be overridden.
The logic to disable the permission prompt with content-exposed fake:true
parameter is maintained as is.
The CamerasParent usage of "media.navigator.permission.fake" seems to have
been a misunderstanding in
https://hg.mozilla.org/mozilla-central/rev/c5d6c3e00c91dd0595a12b145c66cf4f2a890591#l6.129
Differential Revision: https://phabricator.services.mozilla.com/D132897
Automatic update from web-platform-tests
Disallow container queries at or inside multicol containers.
Container queries will remain disallowed until we have full NG block
fragmentation support, for all layout types, including printing.
The reason is that, with container queries, style is recalculated during
layout. We cannot risk that we switch between legacy and NG layout while
we're there, since we may have started NG layout on ancestors that style
recalc suddenly wants to be legacy.
Had to improve the multicol detection mechanism that's run during style
recalc because of this, to ensure that we only trigger legacy fallback
when an element is actually going to become a multicol container (which
isn't the case for e.g. <span style="columns:2;">). Otherwise we may
trigger unnecessary legacy layout fallback on ancestors all the way up
to the block formatting context root, which may already be in the middle
of NG layout, if we're evaluating container queries.
Regarding the tests included: The inline-with-columns-* ones would only
crash without LayoutNGBlockFragmentation enabled, while all the others
would only crash *with* LayoutNGBlockFragmentation enabled.
Had to update a couple of unit tests that no longer get legacy fallback
(because there aren't actually any multicols there).
Bug: 1276898
AX-Relnotes: n/a
Change-Id: Ia75fe86d91966233ffeea43a3940113b6a431075
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3320292
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Commit-Queue: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/main@{#949990}
--
wpt-commits: ae15b0cb3b95356184f17ed539a84ed164802861
wpt-pr: 31956
Automatic update from web-platform-tests
Rename windowControlsOverlay.getBoundingClientRect->getTitlebarAreaRect
This change renames the existing JS API for Window Controls Overlay
(WCO) from:
navigator.windowControlsOverlay.getBoundingClientRect()
to
navigator.windowControlsOverlay.getTitlebarAreaRect()
The new name addresses feedback about how the original API name was
misleading since windowControlsOverlay.getBoundingClientRect() actually
returns the available area *next to* the overlay.
The new name--getTitlebarAreaRect--matches the CSS environment
variables: `titlebar-area-x/y/width/height`
Bug: 1276216
Change-Id: I95e2bc680d124aaa69f0c12ea0ba41399b77185c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3319288
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Amanda Baker <ambake@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#949881}
--
wpt-commits: 4ca37709cc20798ffa7779d1709067db80036999
wpt-pr: 31949
Automatic update from web-platform-tests
[GridFragmentation] Calculate break-appeal before for MovePastBreakpoint
This patch calls CalculateBreakAppealBefore to determine the correct
appeal to pass into MovePastBreakpoint.
This allows correct support for deciding when to violate a
orphans/widows constraint vs. a break-before:avoid. etc.
Bug: 614667
Change-Id: I7a8ee8329dd9458bb62af063ba9df20459e88e92
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3322020
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/main@{#949825}
--
wpt-commits: 28231da2f9ec1b0a3fcd2a5be62fea076f191b9c
wpt-pr: 31962
Automatic update from web-platform-tests
URLPattern: Escape some suffixes trailing `:foo` groups.
This CL fixes another problem case from:
https://github.com/WICG/urlpattern/issues/145
In this case we need to detect when a group suffix could be mistaken
for trailing custom name characters. When this happens we should escape
the first character of the suffix. For example: `{:foo\\bar}` instead
of `{:foobar}`.
Bug: 1263673
Change-Id: I2aa2d043ef4c71433fdc0be113fcafddf5ad3532
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3318605
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#949707}
--
wpt-commits: 73d24b5e86feab550aa5ab7271a814aaa5882cf7
wpt-pr: 31965
Automatic update from web-platform-tests
URLPattern: Emit `{}` around custom names followed by a regexp group. (#31882)
This CL fixes another problem case from:
https://github.com/WICG/urlpattern/issues/145
In this case we need to preserve `{ ... }` braces around a named group
followed by a group that may be emitted in regexp `( ... )` group. We
don't want `{:foo}(.*)` to be changed to `:foo(.*)` since that changes
the meaning from two groups to a single group.
Bug: 1263673
Change-Id: Ifc073d7bfb10f437180393b34cc3bf3c869d7f68
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3315419
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Commit-Queue: Ben Kelly <wanderview@chromium.org>
Cr-Commit-Position: refs/heads/main@{#949705}
Co-authored-by: Ben Kelly <wanderview@chromium.org>
--
wpt-commits: 938a88f9b3121e0f88bfce4baead83af93111cad
wpt-pr: 31882
Automatic update from web-platform-tests
[@container] Do not re-attach container inclusive ancestors
Avoid reattaching inclusive ancestors for size containers due to legacy
layout fallback during layout. Only allow marking for re-attachment up
to, but not including, a size container.
This means we will still have DCHECK failures and broken layout for
legacy fallback when container queries are enabled, but avoids
use-after-free for layout objects.
Bug: 1276962
Change-Id: If6ff862b6269fb41cceb18cc393f24667b31b827
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3323072
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#949683}
--
wpt-commits: 0c35fdb72aa3f41484b596bf90551bd2262880f4
wpt-pr: 31957
Automatic update from web-platform-tests
Fix links to focus fixup rule
There used to be multiple focus fixup rules, but they were collapsed
into a single one in https://github.com/whatwg/html/pull/3566
--
wpt-commits: 6c97724b71c820eb502b3a246a2858e07c781aeb
wpt-pr: 31960
Automatic update from web-platform-tests
Exclude browser stability tests for exports from that specific browser #31898 (username update) (#31941)
--
wpt-commits: e9f779ecb30f2c949896e06c18bab38ea1ddf675
wpt-pr: 31941
Automatic update from web-platform-tests
Additional WPT for Sandbox+COOP opener cut during a redirect.
Original fix:
https://chromium-review.googlesource.com/c/chromium/src/+/3293412
only added a WPT for direct navigations, and neglected the redirect case
that did not have coverage. This is addressed in this patch.
Bug: 1277557
Change-Id: I9b2f92b5e69b974d54c0f30301b9815f3ccf607d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3320390
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Commit-Queue: Arthur Hemery <ahemery@chromium.org>
Cr-Commit-Position: refs/heads/main@{#949455}
--
wpt-commits: fccee581c61d9c1e7a451bf1c0e7999b9f625c01
wpt-pr: 31936
Automatic update from web-platform-tests
[FlexNG] Simple multi-line row flex fragmentation
Add support for simple multi-line row flex fragmentation. In order to
get this case working, we needed to update when we consider an item
to have container separation in the case of rows (i.e. when the item's
row is not the first in a given fragmentainer).
There was also an issue in the NGFlexItemIterator when handling
break tokens in the multi-line case. More specifically, we won't know
the current item's index or line index ahead of time if we're
processing a break token. Move the calculation of |current_item_idx| and
|current_line_idx| to accommodate this case.
Bug: 660611
Change-Id: I67d5c59bd541cc42b22bb462ef840d55ce5ad67e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3319284
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Commit-Queue: Alison Maher <almaher@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#949292}
--
wpt-commits: 7d06eb4ee3509770654db3ae331f215275a6ce6e
wpt-pr: 31934
Automatic update from web-platform-tests
[block-in-inline] Add more test for r948826
r948826 crrev.com/c/3318676 fixed a test:
tables/mozilla/bugs/bug113235-1.html
when BlockInInline is enabled, but the test relies on the
parser to chunk at the specific timing.
This patch adds a test that always hit the condition by using
the `insertBefore` function.
Bug: 716930
Change-Id: I1c8ee5d197801d02749d75ec7e03a773207716e5
--
wpt-commits: ad5d26e64d54cd45787df6bcc2d6fc4fcaa77d50
wpt-pr: 31935
Automatic update from web-platform-tests
Correct document order for fixedpos flex item inside abspos legacy flex.
If there's an OOF flex item inside an OOF legacy flex container, and the
flex container isn't the containing block for the item (e.g. fixed-
positioned inside absolute-positioned), check one extra time when
handling them at the containing block.
LayoutBlock::PositionedObjects() gets OOFs out of document order upon
re-layout on a general basis, if there's a fixed-positioned object
inside another OOF, so that we may end up laying out the child before
the parent. If, when eventually laying out the parent, we mark the child
for layout, we'd never get back to laying it out, and DCHECKs would
fail.
The only known actual problem with having objects out of document order
is precisely what's described above, so the fix is limited to that.
Hopefully the legacy engine is removed before we discover any problems
with my fix. :-p
Bug: 1269228
Change-Id: Ifc212e2b8baa6b9fcf58a5714fa7a8a1139f4b87
--
wpt-commits: 193d9758c4c900b3a80f71e47bc5fd85138d71fa
wpt-pr: 31929