Bug 1646224 made font sizes floats, which caused conversion to nscoord
not happen. Style fonts should never have NaN, but in this case a
massive SVG transform matrix ends up causing a NaN font inflation
factor.
This in turn caused the scaled size to be NaN, and to get stuck on the
font variations array here:
https://searchfox.org/mozilla-central/rev/4fa18c26fa907f38d56b599571b9846af1506f3c/gfx/src/nsFont.cpp#283
That NaN in turn caused the font variations to have a NaN, and font
styles comparing unequal, which prevents the font from getting removed
from the cache, causing the issue.
This should prevent it, but I have a more in-depth patch incoming.
Differential Revision: https://phabricator.services.mozilla.com/D110518
This shouldn't change behavior, but is the biggest cross-platform part
of the change so I'd like to get it landed sooner rather than later.
The two calls like:
GetColor(ColorID::TextSelectBackground, color);
if (color == 0x000000) {
mColorTextSelectForeground = NS_RGB(0xff, 0xff, 0xff);
} else {
mColorTextSelectForeground = NS_DONT_CHANGE_COLOR;
}
that I'm removing are just broken. They were calling the version of
GetColor the function that took a default value when the color wasn't
available, not the version of the color with the outparam.
To prevent such mistakes, add two signatures, GetColor(), returning a
Maybe<nscolor> and Color(), returning a color with a fallback.
Differential Revision: https://phabricator.services.mozilla.com/D110651
I noticed we weren't doing this when looking at bug 1701910.
We remove support for auto style outlines in trees, which is unused
(checked that thunderbird and FF trees don't use outline: auto) and for
some mathml debugging code, which seems ok.
Differential Revision: https://phabricator.services.mozilla.com/D110399
The object flags are only relevant for the last property's shape. Comparing them
to the flags stored in the property's shape could result in doing unnecessary work
in certain (actually redundant) cases.
Differential Revision: https://phabricator.services.mozilla.com/D110222
Automatic update from web-platform-tests
Revert "Relax constraints on scroll snapping for snap-type both."
This reverts commit 9f51ed46d53717149e7496dbd7baf0eb372c046a.
Reason for revert:
Findit (https://goo.gl/kROfz5) identified CL at revision 868394 as the
culprit for failures in the build cycles as shown on:
https://analysis.chromium.org/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyRAsSDVdmU3VzcGVjdGVkQ0wiMWNocm9taXVtLzlmNTFlZDQ2ZDUzNzE3MTQ5ZTc0OTZkYmQ3YmFmMGViMzcyYzA0NmEM
Original change's description:
> Relax constraints on scroll snapping for snap-type both.
>
> Our scroll snapping logic confined the snap position to be within
> the visible snapport if snapping in both the x and y direction; however,
> snaps are allowed to be outside the "snapport's search corridor" as long
> as they are not too far outside (left to the user agent to determine
> what constitutes "too far"). The relaxed rules are not applied if
> snapping in one direction only, or if scroll-snap-stop is set to
> 'always'.
>
> In addressing the issue, two other tests required tweaking since they
> had no allowance for a 2D snap outside the visible snapport either
> implicitly (nested-scrollIntoView-snaps.html) or explicitly
> (scroll_snap_data_unittest.cc).
>
> Bug: 626703
> Change-Id: I3646ccc271d88e06f3e6655009e32ff2a9e08931
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2785142
> Reviewed-by: Robert Flack <flackr@chromium.org>
> Commit-Queue: Kevin Ellis <kevers@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#868394}
Bug: 626703
Change-Id: I760ad79c204f0f3dc7d73a5fd721b1bf91a2d827
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2798148
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Noel Gordon <noel@chromium.org>
Auto-Submit: Noel Gordon <noel@chromium.org>
Commit-Queue: Noel Gordon <noel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868436}
--
wpt-commits: e935bcf851a8ddfb1eca97adba3acbb8ec7533f2
wpt-pr: 28331
Automatic update from web-platform-tests
font-stretch should use keywords for computed style when possible (#28315)
--
wpt-commits: ce48db7b9b8a858a4bc17c3b793b1dfd0e02008c
wpt-pr: 28315
Automatic update from web-platform-tests
Implement invert and negate exp.node creation and type check in CSSScale
For the current implementation, the CSS Typed OM could occur null
pointer access when building CSSMathExpressionNode.
Because in the middle of ToCalcExpressionNode() recursion, nullptr is
accessed instead of propagation.
Also, The CSSScale's constructor didn't check the type properly for
the expression. This possibly might be needed another typed om.
Therefore, implement TODOs for building CSSMathExpressionNode tree
and add condition in IsValidScaleCoord() to check resolved type is
the number for CSSMathExpressionNode tree.
Bug: 1188610
Change-Id: If6bf70b791b72c7ed67465f898130e098f68e853
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2788308
Commit-Queue: Seokho Song <0xdevssh@gmail.com>
Reviewed-by: Mason Freed <masonf@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868415}
--
wpt-commits: 90166f709d096e77e7cf1279cc3b13a5ddf0cd87
wpt-pr: 28273
Automatic update from web-platform-tests
Relax constraints on scroll snapping for snap-type both.
Our scroll snapping logic confined the snap position to be within
the visible snapport if snapping in both the x and y direction; however,
snaps are allowed to be outside the "snapport's search corridor" as long
as they are not too far outside (left to the user agent to determine
what constitutes "too far"). The relaxed rules are not applied if
snapping in one direction only, or if scroll-snap-stop is set to
'always'.
In addressing the issue, two other tests required tweaking since they
had no allowance for a 2D snap outside the visible snapport either
implicitly (nested-scrollIntoView-snaps.html) or explicitly
(scroll_snap_data_unittest.cc).
Bug: 626703
Change-Id: I3646ccc271d88e06f3e6655009e32ff2a9e08931
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2785142
Reviewed-by: Robert Flack <flackr@chromium.org>
Commit-Queue: Kevin Ellis <kevers@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868394}
--
wpt-commits: b2265405e53c82dadf2fa56128108d9971fb7b43
wpt-pr: 28240
Automatic update from web-platform-tests
Fix typo in css/css-transforms/transform-origin-01-ref.html
This test had a typo in the reference file which resulted in it failing.
Bug: 1175179
Change-Id: Ieb529cfc91021c18df9d76775dac8bb86429919b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2797725
Auto-Submit: Philip Rogers <pdr@chromium.org>
Reviewed-by: Olga Gerchikov <gerchiko@microsoft.com>
Commit-Queue: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868327}
--
wpt-commits: 6cc4f9451df3730633c4718d964309510da4c9c3
wpt-pr: 28326
Automatic update from web-platform-tests
FSA: Make startIn field non-nullable
Change this to match the spec.
There was not much reason to have this nullable in the first place,
since the startIn field is optional.
Bug: 1194652
Change-Id: I7e77945aceb11b554fc7952f22c8b4bde044880d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2797570
Commit-Queue: Austin Sullivan <asully@chromium.org>
Commit-Queue: Marijn Kruisselbrink <mek@chromium.org>
Reviewed-by: Marijn Kruisselbrink <mek@chromium.org>
Auto-Submit: Austin Sullivan <asully@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868307}
--
wpt-commits: 1df8336646defce76dfacaff690d4ae2cff92727
wpt-pr: 28322
Automatic update from web-platform-tests
Windows system colors with a dark color-scheme
If the color scheme is dark and we are not in forced colors mode, fall
back to the default system colors in order to pick up the dark color
scheme.
Bug: 1192589
Change-Id: Icf339f30e8e714aaa211add2c8168c5d2a9eeabf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2792907
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Commit-Queue: Alison Maher <almaher@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#868291}
--
wpt-commits: 402361a857a140546767b96b5bc5668480923292
wpt-pr: 28319
Automatic update from web-platform-tests
Fix typo in preserve-3d test
With this patch, the following test no longer fails due to a typo:
preserve-3d-flat-grouping-properties-containing-block.tentative.html
Bug: 1008483
Change-Id: Iaf1ad7f5ca3e94d20355ecfe737d5d346fca2a05
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2798531
Commit-Queue: Philip Rogers <pdr@chromium.org>
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Auto-Submit: Philip Rogers <pdr@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868277}
--
wpt-commits: 9183d30facffd522a67b33c15b39819e0c9943ac
wpt-pr: 28323
Automatic update from web-platform-tests
Merge constants.js and websocket.sub.js
Right now, we have tests using constants.js and websocket.sub.js
Instead, we merge all the functionality into one unique file
constants.sub.js
The test don't have to specify if the Websocket whether secure anymore.
Instead, we run the 3 variants (unsecure, secure and http2) whenever
possible.
Since some tests were duplicated between a Secure and regular version,
we can now get rid of one those two versions.
We also remove Create-Secure-verify-url-set-non-default-port.any.js and
Create-verify-url-set-non-default-port.any.js which seems to have been
obsolete for some time.
Fixes#28264
--
wpt-commits: d4ca2a84a2b8caaaff3323bd80b0e45f29b4ad0b
wpt-pr: 28265
Automatic update from web-platform-tests
Add a test for disabledFeatures = "shadow" with DSD
This tests that a custom element with disabled shadow roots will
not have a declarative Shadow Root attached.
Bug: 1042130
Change-Id: I04d73338eb2b3ed3616aa1f356b3bad12016c9c4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2795920
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Auto-Submit: Mason Freed <masonf@chromium.org>
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868108}
--
wpt-commits: a53ecfc617f80873badbad7356ef4cdaae51b982
wpt-pr: 28305
Automatic update from web-platform-tests
Implement new behavior for invoking ("popup") elements
The previous code assumed all potential invoking elements formed part
of the ancestor chain. With recent clarifications, only the element
that actually invoked the popup should count as an invoking element.
Bug: 1168738
Change-Id: I246de43b69770793d848c714ebda4aa9b316aaa6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2795412
Commit-Queue: Mason Freed <masonf@chromium.org>
Commit-Queue: Ionel Popescu <iopopesc@microsoft.com>
Auto-Submit: Mason Freed <masonf@chromium.org>
Reviewed-by: Ionel Popescu <iopopesc@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#867845}
--
wpt-commits: 85bf675337914b8d2fec6ad184ee6c4474d6864c
wpt-pr: 28304
Automatic update from web-platform-tests
[composite-bgcolor-animation] Fallback to main for table cases
For some cases such as putting background-color animation in the
table row, it would actually paint into the table cell. Therefore,
we won't paint the table row with the BackgroundColorPaintWorklet,
as a result, we won't have correct info to support the animation
on the compositor thread.
In this case, we should not composite the background-color animation.
This CL fixes it. It added 3 layout tests:
xxx-table1.html and xxx-table2.html crashes without this fix.
xxx-table3.html does not crash without this fix, but worth to
have coverage.
Bug: 1185643
Change-Id: I8bb836897d868d84471e90048a06e259e3a8c860
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2774182
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#866397}
--
wpt-commits: 79e81c9bfcc64237cdc16913d7c6fd626900e407
wpt-pr: 28139
Automatic update from web-platform-tests
Add a test for the computed style of border-radius-top-left: 40px 0px (#28310)
WebKit reports a computed style of 0px as it would treat any border-radius longhand containing a 0px dimension as 0px altogether. This is being addressed by WebKit bug 223927.
--
wpt-commits: c5a2f6c92ab6a7c1375d92220bfc0aa597b3061c
wpt-pr: 28310
Automatic update from web-platform-tests
Serialize ImageDecoder requests as required by the spec.
The ImageDecoder shares the same processing model as the rest of
WebCodecs, we shouldn't allow out of order request fulfillment.
Bug: 1182435
Test: New test.
Change-Id: I0d96220ec89ed678859d28304543af17e074e9ff
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2795975
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Chrome Cunningham <chcunningham@chromium.org>
Cr-Commit-Position: refs/heads/master@{#867959}
--
wpt-commits: 567ff3e038adcb5ca2223616cef9f90b6a3e6f57
wpt-pr: 28307