The background behind the rendered webpage may now be made transparent with these changes by toggling the mentioned preference.
The new option defaults to false, preserving the previous behaviour as the default. For the changes to apply "browser.tabs.allow_transparent_browser" has to be explicitly set to "true" in about:config.
For transparency to actually work, though, a userChrome.css is necessary to make the tab's background transparent ( :root { --tabpanel-background-color: #00000063 !important; } ).
Pages may not be transparent by default (except for some rare cases), but extensions may be used to enforce transparent background colors on all pages.
As such this patch implements all necessary changes to allow users to make firefox transparent without having to patch and recompile it.
Differential Revision: https://phabricator.services.mozilla.com/D201346
The quad primitive info takes a scale+offset transform which is applied to the coordinate space of the pattern. This allows the quad coorinates to be optionally specified in device space while the pattern remains in layout space.
Differential Revision: https://phabricator.services.mozilla.com/D209694
The UI test failed because the TCP CFR was displayed on the second and third try, after the test failed to verify the toolbar “Firefox Fenix | OSS Libraries” title on the first try.
This was happening because we were disabling certain settings in the test, and when the second and third try retried the test, the settings were actually set to the default values (in this case the TCP CFR was set to true. blocking the view)
Using the withDefaultSettingsOverrides function will ensure that the settings remain disabled even if the test will take use of the **retryTestRule**
Differential Revision: https://phabricator.services.mozilla.com/D210160
There's no call to AddRefreshObserver(FlushType::Layout), so we don't
need to track layout flushes. The only reason we need
mLayoutFlushObservers is so that reflows triggered from the style flush
get processed. But at that point, we can just flush layout directly.
There's no really good distinction between style flushes and layout
flushes with container queries anyways, so this makes the code simpler
to reason about.
Differential Revision: https://phabricator.services.mozilla.com/D209924
to avoid using the transformed coordinate in parent process after the event has
been dispatched to the child process, e.g. when generating a click event.
Differential Revision: https://phabricator.services.mozilla.com/D210226
Updated Micro Survey footer to adhere to new figma designs, being displayed in a column across the whole width of the sheet.
Differential Revision: https://phabricator.services.mozilla.com/D209240
Automatic update from web-platform-tests
Rewrite counters implementation to no cache approach
This CL removes the old counters implementation that was building
and maintaining a cache of counters (building counters tree).
The removal is due to the following reasons:
1) It didn't support Shadow DOM and there was no way to fix it;
2) It didn't work correctly with style containment and there was
no way to fix it;
3) It was slow and complicated;
4) It was wrong in many cases.
The new approach doesn't build any cache of counters, instead it
visits every element on the very first AttachLayoutTree for the
document and gathers on the fly all the information it needs to
correctly calculate the counters values. It means that we don't
have any overhead due to some additional traversals to build the
counters cache on the first go.
So, all the pages with static (created once and not changed) counters
would render faster.
If there are some counter changes after the first AttachLayoutTree,
we would remember it and then recalculate all counters by doing a full
tree traversal, calculating correct counters values and only update
LayoutCounters created with counter() and counters() functions.
Performance tests held on 300'000 elements with various layouts and
various style updates/element insertions/removals show that doing
such full tree traversal for counter updates doesn't introduce any
noticeable overhead with other browsers (should be noticed that old
implementation could also do full tree traversal in some cases).
For pages with static counters performance for initial document render
is improved around 10 times against the old implementation.
Bug: 990657
Change-Id: I292d3749ad0bf480e88d815e9dbecebe9edc7067
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5483870
Commit-Queue: Daniil Sakhapov <sakhapov@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1298057}
--
wpt-commits: 90cf6d3b851589dea99c460f0aa5e3e9b58f3bbe
wpt-pr: 46054
Automatic update from web-platform-tests
Add a simple test for text-wrap: nowrap (#46161)
--
wpt-commits: d124e0e68c6b015e0f5ecd8324a8838b4bf827b9
wpt-pr: 46161
Automatic update from web-platform-tests
Use email.utils.parsedate_to_datetime to parse RFC (2)822 dates
After c3a572d, checking the key cert via OpenSSL failed with a mismatch
between aware and naive datetime objects. This happened because strptime
creates a naive datetime object even when "%Z" is in the format string.
Instead, use the RFC 2822 date parser in email.utils, as this is the
output format of OpenSSL, which produces an aware datetime object.
--
wpt-commits: d2dbbf8629d0fa0d31ecd298bf34d04603d2d54e
wpt-pr: 46042
Automatic update from web-platform-tests
Update WPT focus-navigation forward logic
Previous patch changed navigateFocusForward() in focus-utils.js
to send keyboard event on the document.documentElement.
This change was not interoperable [1]. We update to send the keyboard
event on the document.body (previous behavior).
[1] https://github.com/web-platform-tests/wpt/pull/45772#discussion_r1591235292
Change-Id: Ib8005bafecb8a5048953d352a66f2d7ba6c8e467
Fixed: 339098898, 40542192
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5522361
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Commit-Queue: Di Zhang <dizhangg@chromium.org>
Auto-Submit: Di Zhang <dizhangg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1297784}
--
wpt-commits: 9044dd09b3bbe9b0bf8dc76b02b570304e13b52a
wpt-pr: 46150
Automatic update from web-platform-tests
Shared Storage: Only suppress site-specific cross-origin prefs error
We previously suppressed all errors related to preferences and
attestation for cross-origin worklets in `createWorklet()`, `run()`,
and `selectURL()`, in order not to reveal cross-site information
about user preferences.
Here we selectively make error messages available again for the
subset of those errors that are not actually site-setting-specific.
We continue to suppress the errors in the case where they are
specific to a user's site settings.
Bug: 335839125
Change-Id: Iaf5391a2443b0c7d3608913f3e2f81a713042854
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5502151
Commit-Queue: Cammie Smith Barnes <cammie@chromium.org>
Reviewed-by: Yao Xiao <yaoxia@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1297722}
--
wpt-commits: a303249534104876b8420d19a66e0195719c0e9f
wpt-pr: 46149
Automatic update from web-platform-tests
Exclude transparent text with decorations from being skipped for LCP (#45969)
When texts are transparent, but with visible decorations like shadow,
outline, text stroke, they should be eligible for LCP.
Bug: 41481679
Change-Id: I687fa8cc2a567ac46961133f575b57e624ed1022
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5498955
Reviewed-by: Ian Clelland <iclelland@chromium.org>
Commit-Queue: Hao Liu <haoliuk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1297151}
Co-authored-by: Hao Liu <haoliuk@chromium.org>
--
wpt-commits: 4541dce62d1ce9f479895352c29a36fff840a0a8
wpt-pr: 45969
Automatic update from web-platform-tests
Fix "overfow" typos (#46136)
One in a filename, and two in tests.
--
wpt-commits: 8cdf029a8785b92ad7c1772037263d1edf108d56
wpt-pr: 46136
Automatic update from web-platform-tests
Move value parser end-of-stream handling into the caller.
The caller already checked end-of-stream itself for longhands,
but now also does so for shorthands. Importantly, all longhands
and shorthands are now changed so that they do not return error
on “not at end-of-stream”. This is in preparation for moving to
not stripping !important before calling the custom parsers,
which is in turn in preparation for moving to the streaming parser
for value parsing.
After this, any calls in longhands_custom.cc or shorthands_custom.cc
to range.AtEnd() is to be viewed with suspicion. They are not _always_
an error, but they need to be examined carefully.
Change-Id: I41bcd8ee37d77682e0560acc96f5074bd1367e24
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5509593
Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
Commit-Queue: Steinar H Gunderson <sesse@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1297410}
--
wpt-commits: 65867604c0ae4c04e41b14e1dc80c59a3a3ecaf3
wpt-pr: 46131
Automatic update from web-platform-tests
Map CSS mask tests to web-features (#46134)
Tests for clipping, border masks and SVG mask sources are not included,
to align with the feature scope in web-features.
--
wpt-commits: fa7c7df612f400b81ec86561dbc68d1558c9fe41
wpt-pr: 46134
Automatic update from web-platform-tests
webnn: Enforce data type constraints for averagePool2d and l2Pool2d
As specified in https://github.com/webmachinelearning/webnn/pull/646
Bug: 328567884
Change-Id: If0ea256805b5cfebdf15e0727fbc91acab918bbb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5500424
Reviewed-by: Austin Sullivan <asully@chromium.org>
Auto-Submit: Shiyi Zou <shiyi.zou@intel.com>
Commit-Queue: Shiyi Zou <shiyi.zou@intel.com>
Reviewed-by: ningxin hu <ningxin.hu@intel.com>
Cr-Commit-Position: refs/heads/main@{#1297393}
--
wpt-commits: 8420f5224b6c558c67a32052f1148eca46245003
wpt-pr: 45974
Automatic update from web-platform-tests
Fetch: add test for realm of result of Response's arrayBuffer()
For https://github.com/whatwg/fetch/pull/1751.
--
wpt-commits: ef64e9e98aff5f530368ee2213b01b5fe2acc2ec
wpt-pr: 46104
Automatic update from web-platform-tests
Revert "[fetch-later] Define new permissions policy `deferred-fetch`"
This reverts commit 193729386996ac0bd40dba0aa98b7f85ff7b94d1.
Reason for revert: Suspected of causing crbug.com/339120680
Original change's description:
> [fetch-later] Define new permissions policy `deferred-fetch`
>
> 1-Pager: https://docs.google.com/document/d/1P70kdENIByy3qWabN5rUPmBVkkANNSOM_jZynLnqINY/edit
>
> This CL follows the [guide] to define a new permissions policy
> `deferred-fetch`, which is used to gate the new `fetchLater()` API.
> Relevant WPT are added in this CL, and the subsequent CL will further
> use this policy to adjust the request quota.
>
> In this CL, `deferred-fetch` is not added to chrome://settings/content
> page. And no permission prompt for it.
>
> - webappsec request: https://github.com/w3c/webappsec-permissions-policy/issues/544
> - "deferred-fetch" usage in fetchLater draft spec: https://whatpr.org/fetch/1647.html#request-a-deferred-fetch
> - "deferred-fetch" policy discussion: https://github.com/WICG/pending-beacon/issues/87#issuecomment-1985358609
> - FetchLater Explainer: https://github.com/WICG/pending-beacon/blob/main/docs/fetch-later-api.md
>
>
> [guide]: https://chromium.googlesource.com/chromium/src/+/main/components/permissions/add_new_permission.md
>
> Bug: b:40276121
> Change-Id: I2db4dd7484610fefb50c463552155b220f13ac5d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5367481
> Reviewed-by: Adam Rice <ricea@chromium.org>
> Reviewed-by: Thomas Nguyen <tungnh@chromium.org>
> Reviewed-by: Ian Clelland <iclelland@chromium.org>
> Commit-Queue: Ming-Ying Chung <mych@chromium.org>
> Reviewed-by: Yoav Weiss (@Shopify) <yoavweiss@chromium.org>
> Reviewed-by: Takashi Toyoshima <toyoshim@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1297320}
Bug: b:40276121, 339120680
Change-Id: I82b567642fb49429ad14cce676a4b8f4e1c673de
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5518461
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Anders Hartvoll Ruud <andruud@google.com>
Cr-Commit-Position: refs/heads/main@{#1297378}
--
wpt-commits: 1e6ef7ec83db226a120ae789090dd570a49a21fd
wpt-pr: 46132