This removes the restriction put in place in Bug 1545420. Auth is
currently already possible, but more inconvenient. Lift the restriction
to make Addon development more pleasant.
Differential Revision: https://phabricator.services.mozilla.com/D202946
KEY_F6 has a special requirement for chrome document navigation
such that if the focus algorithm has reached to the end of the
top-level chrome document, it expects to focus first element of
this chrome document, because the root element of chrome document
is not focusable. This patch is to ensure this behaviour is still
working.
dom/tests/mochitest/chrome/test_focus_docnav.xhtml is used to test this.
Differential Revision: https://phabricator.services.mozilla.com/D200864
The changes relate to `t13` is because `t13` is the <html> element,
which is not getting the focus anymore with D198436.
Another change relate to focus_frameset.html is because focus_frameset.html
contains some frames and each frame has a focusable
element in it. With the change made in D198436, these frames are no
longer getting the focus, so the expected behaviour needs to be updated.
Differential Revision: https://phabricator.services.mozilla.com/D200863
This patch changes the dependent build on external android browser perftests to use linux64/opt builds. This will prevent us from requiring the full geckoview/fenix builds for only running tests on the external browsers. Those builds are time-consuming, and can be wasteful if we don't test the builds produced by them.
Depends on D203172
Differential Revision: https://phabricator.services.mozilla.com/D203173
This patch adds a transform that changes the build dependency for all tasks that test an external browser. Instead of having to do a full build of Firefox that might not be used (which can waste resources, and take longer than necessary), these tasks will now use the build-linux64/opt task to get the mozharness requirements. At the same time, some new mozharness config files are added to skip the install stage.
Differential Revision: https://phabricator.services.mozilla.com/D203172
Exactly what should be a control element on the web and what shouldn't isn't really documented anywhere.
So, this is a little based on ideas from Chromium and a little based on my own understanding of how this should ideally work.
This will definitely need to be tweaked as we further develop UIA.
For now, the primary aim is to avoid the performance cliff caused by the UIA -> IA2 proxy's suboptimal implementation of IsControlElement.
We map IsContentElement to IsControlElement, just as Chromium does.
Differential Revision: https://phabricator.services.mozilla.com/D202923
The current serverCertificateHashes implementation does not follow the
WebTransport specification, that introduced serverCertificateHashes
as a tool to replace certificate chain verification.
Instead it introduced the hashes as an additional check.
This patch moves the check to the Http3Session object and modifies
the connection manager' hashes to prevent crossSite certificate
poisoning. It is - as the WebTransport Implementation in Firefox -
currently limited to http3 only.
However, since the hashes live on the ConnectionEntries,
it should be possible to extend this in the future.
Differential Revision: https://phabricator.services.mozilla.com/D197857
If Gtk switched from Wayland to X11 during display open phase, do that change on browser side too.
It may happen if WAYLAND_DISPLAY is wrongly set or compositor is slow or so.
Differential Revision: https://phabricator.services.mozilla.com/D203259
This changes comes with several different refactorings all rolled into one,
unfotunately I couldn't find a way to pull them apart:
- First of all annotations now can either recorded (that is, we copy the value
and have the crash reporting code own the copy) or registered. Several
annotations are changed to use this functionality so that we don't need to
update them as their value change.
- The code in the exception handler is modified to read the annotations from
the mozannotation_client crate. This has the unfortunate side-effect that
we need three different bits of code to serialize them: one for annotations
read from a child process, one for reading annotations from the main process
outside of the exception handler and one for reading annotations from the
main process within the exception handler. As we move to fully
out-of-process crash reporting the last two methods will go away.
- The mozannotation_client crate now doesn't record annotation types anymore.
I realized as I was working on this that storing types at runtime has two
issues: the first one is that buggy code might change the type of an
annotation (that is record it under two different types at two different
moments), the second issue is that types might become corrupt during a
crash, so better enforce them at annotation-writing time. The end result is
that the mozannotation_* crates now only store byte buffers, track the
format the data is stored in (null-terminated string, fixed size buffer,
etc...) but not the type of data each annotation is supposed to contain.
- Which brings us to the next change: concrete types for annotations are now
enforced when they're written out. If an annotation doesn't match the
expected type it's skipped. Storing an annotation with the wrong type will
also trigger an assertion in debug builds.
Differential Revision: https://phabricator.services.mozilla.com/D195248
It is unexpected since adjust_mask_scale_for_max_size rounds the rectangle out but asserting it caused crash spikes (see bug 1882416). This patch will discard the primitive or segment instead of attempting to allocate an invalid mask. If this causes some popping, we'll get some context in the logs.
Differential Revision: https://phabricator.services.mozilla.com/D202944
Automatic update from web-platform-tests
Implement percentage values for letter-spacing and word-spacing per css-text-4
Exported from https://bugs.webkit.org/show_bug.cgi?id=262762
--
wpt-commits: ffae172a1c2e44bddf71ca9430bc2aa519fbff6e
wpt-pr: 44882
Automatic update from web-platform-tests
Remove 'libegl1-mesa-dev' from docker image
This package was added in #44576 but it is no longer needed
now because Servo has removed the runtime dependency
in servo/servo#31431.
The docker image version does not need to be updated in this patch since no new image was published to Docker Hub and
the version bump in #44576 actually referred to the latest published version on Docker Hub before the change landed.
--
wpt-commits: 192a141d471fa4a01098b5d4e1f4d845597dff21
wpt-pr: 44877
Automatic update from web-platform-tests
Switch to GetFocusDelegate() in GetFocusableArea()
This was part of the DialogNewFocusBehavior feature, but it appears
to fix another delegatesFocus bug (crbug.com/324112201). This CL
enables this part of the behavior, which is to call
GetFocusDelegate() instead of FindFocusableElementInShadowHost(),
in Element::GetFocusableArea(). Those differ slightly in how they
handle `delegatesFocus`.
This change is gated behind a killswitch, and I added a test that
fails without this CL.
Fixed: 324112201
Change-Id: I097f40d0b3d4bbd0218d9fc87bfc00fec8397ccd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5322395
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Auto-Submit: Mason Freed <masonf@chromium.org>
Commit-Queue: Mason Freed <masonf@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1267347}
--
wpt-commits: 9aa0f67e426fac988de1625eb6c8926e225df602
wpt-pr: 44815
Automatic update from web-platform-tests
Fix throttling SMIL animations on <stop> elements
<stop> elements are not in the layout tree, so they would be considered
to be throttleable. Add a check for computed style as well. Factor out
the throttling checks into a helper and document them.
Fixed: 327254045
Change-Id: I9048a1a6d4af83c67c896034c3b32647e613a38b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5329732
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Auto-Submit: Fredrik Söderquist <fs@opera.com>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1266902}
--
wpt-commits: 8ec330b40e30e3a8c32c70eae02157836b18d752
wpt-pr: 44832
Automatic update from web-platform-tests
[zoom] Adjust line-height and width when the effective zoom changes
Based on CL:5302760 by chrishtr@.
In Blink, lengths are stored on the ComputedStyle with "premultiplied
zoom", meaning that for e.g. width:20px;zoom:200%, the width is stored
as "40". Currently, we do not account for this during inheritance:
we inherit that "40" as-is, even if the effective zoom of the element
we're inheriting into is not the same. Issue 9397 [1] clarified that
this is not correct, and therefore we need to adjust our zoomed values
when inheriting.
This CL solves this problem by using our existing code paths
for creating the computed CSSValue (which already does unzooming)
and for applying that CSSValue onto a ComputedStyle (which already
does zooming).
We need two things for this to work:
1. Special behavior in Longhand::ApplyInherit, which detects if
the effective zoom changed, and if so, inherits via the computed
CSSValue path instead of the regular ComputedStyle-to-ComputedStyle
path. However, Longhand::ApplyInherit is only reached if an explicit
inherit/unset exists in the cascade, but we also need to make the
adjustment for *inherited* properties (e.g. line-height).
Therefore:
2. During cascade expansion, if the effective zoom changes vs. the
parent zoom, we insert explicit 'unset' values at the bottom
of the cascade. This ensures that we always reach ApplyInherit
for affected properties.
This CL only enables the zoom adjustment for one inherited property
(line-height), and one non-inherited property (width) to establish
the pattern. Future CLs will incrementally add the 'affected_by_zoom'
flag to the relevant properties.
Bug: 40946858
[1] https://github.com/w3c/csswg-drafts/issues/9397
Change-Id: Iab4dd978143e56264a5c78377055ecbb0363b276
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5323090
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1267277}
--
wpt-commits: 87e7f1cf0f39c0ec2ce195cce8d637fbd6d25ea0
wpt-pr: 44808
Automatic update from web-platform-tests
Use exact values to get exactly-matching test results.
The values originally used in this test for the Perlin noise
frequency (0.025, 0.1) are not exact values in binary floating
point. For instance, 0.025 becomes 0x3ccccccd, or perhaps
0x3ccccccc, depending on how the number is parsed.
We now use numbers which are round in both base 2 and base 10,
and are roughly similar to the original values. For instance,
0.025 has been replaced by 0.03125, which is exactly 0x3d000000.
Visually, this slightly changes the size of the noise ripples
but as a test, it is not meaningfully different otherwise.
Bug: 327665192
Change-Id: I6d708d17d77ed0bc2a53827369a08a7415333059
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5332945
Reviewed-by: Christian Biesinger <cbiesinger@chromium.org>
Commit-Queue: John Stiles <johnstiles@google.com>
Cr-Commit-Position: refs/heads/main@{#1267247}
--
wpt-commits: bec260dd7137088023c26303765a3037abc71b8f
wpt-pr: 44867
Automatic update from web-platform-tests
DOM: Added a few batch-insertion scenarios that are incompatible across engines (#44658)
Co-authored-by: Anthony Ramine <n.oxyde@gmail.com>
Co-authored-by: Anne van Kesteren <annevk@annevk.nl>
Co-authored-by: Dominic Farolino <domfarolino@gmail.com>
--
wpt-commits: 870bb35db3236ff771adfd25c38394b3c499536b
wpt-pr: 44658
Automatic update from web-platform-tests
Enable Raster Pipeline Perlin Noise and rebaseline.
Unlike the legacy implementation, this version properly handles
rotation. It is also much faster thanks to SIMD.
Bug: 40045243
Change-Id: Iee769ad8462ff433c4bd3ae56cd655334c6bba5b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5323882
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Cr-Commit-Position: refs/heads/main@{#1267154}
--
wpt-commits: 63088cf1381ad54fee88cacc36d52e615df1a9df
wpt-pr: 44863