Depends on D103051.
Other browser devtools do not select the node on expand. Selecting the node can be quite slow when if many CSS rules apply to it.
This should allow exploring the tree of complex pages with less slowdowns.
An existing test is updated to assert the selected state of the node container before/after expanding it.
Differential Revision: https://phabricator.services.mozilla.com/D103052
The existing helper expandContainerByClick is modified to support the "altKey" option and reused in all tests that try to click on markup-view container expand-icons.
A similar collapseContainerByClick is also added for symmetry. Both methods will become identical once we stop selecting the node on expand and they will be merged.
Differential Revision: https://phabricator.services.mozilla.com/D103051
Assert that uses of `CloneAndExecuteScript` have a consistent NonSyntactic
flag. These APIs still perform cloning for the cross-realm cases. The shell
functions need small tweaks to support this invariant.
Standalone functions are not cloned and do no update their environment so if
they had Syntactic global scope they will always continue to, and otherwise
will stick in non-syntactic mode.
Differential Revision: https://phabricator.services.mozilla.com/D98825
We keep encountering issues on various platforms due to the usage of
switch statements, especially the optimized output produced by
glslopt. Replace all instances with if-else statements instead.
Differential Revision: https://phabricator.services.mozilla.com/D103300
This change remove the files used for building and testing vrhost.dll, which was used for an early prototype of Firefox Reality PC.
This binary is no longer needed for FxR PC.
Differential Revision: https://phabricator.services.mozilla.com/D103237
If you add padding to the input on the inline-end, like some of the
examples in bug 1674431, then the darker border looks off.
Without it, the number input still looks nice, so I think we should do
this.
We might want to introduce the padding by default (see bug 1689286).
Differential Revision: https://phabricator.services.mozilla.com/D103270
ClearBeforePaint put the responsibility of clearing the current frame's DrawTarget
onto the widget. This doesn't compose well with WR RenderCompositor that may do
their own internal clearing. Instead, replace this with a GetTransparentRegion API
that can be used by RenderCompositors to limit where they clear so that they are
now fully responsible for clearing.
Differential Revision: https://phabricator.services.mozilla.com/D103253
GL_ARB_clear_texture implements some useful GL entry-points for clears
that can clear arbitrary sub-rects of the screen without having to latch
or disturb GL state. This refactors the glClear implementation to be in
terms of the provided glClearTexSubImage extension which is far more
flexible.
This further allows us to reuse clearing primitives in RenderCompositorSWGL
without having to use more expensive DrawTarget versions.
Differential Revision: https://phabricator.services.mozilla.com/D103252
ClearBeforePaint put the responsibility of clearing the current frame's DrawTarget
onto the widget. This doesn't compose well with WR RenderCompositor that may do
their own internal clearing. Instead, replace this with a GetTransparentRegion API
that can be used by RenderCompositors to limit where they clear so that they are
now fully responsible for clearing.
Differential Revision: https://phabricator.services.mozilla.com/D103253
GL_ARB_clear_texture implements some useful GL entry-points for clears
that can clear arbitrary sub-rects of the screen without having to latch
or disturb GL state. This refactors the glClear implementation to be in
terms of the provided glClearTexSubImage extension which is far more
flexible.
This further allows us to reuse clearing primitives in RenderCompositorSWGL
without having to use more expensive DrawTarget versions.
Differential Revision: https://phabricator.services.mozilla.com/D103252
This doesn't change behavior by default but allows authors to remove the
padding if they wish to.
I thought this was going to be problematic because of the windows
arrowbutton, but that doesn't respect select padding so we're good.
Differential Revision: https://phabricator.services.mozilla.com/D103245
Bug 1553230 made configure automatically get toolchain artifacts in some
cases. The artifacts for clang-cl builds are clang.tar.zst, and extract to
clang/. Configure derives the task name from that knowledge, and fails
to find clang-cl tasks because of that.
For consistency, these tasks should be called clang. They are clang
builds anyways, and like any other clang builds, they also contain
clang-cl.
Differential Revision: https://phabricator.services.mozilla.com/D103150
This makes mozilla::PrintfTarget consistent across all locales (not
printing e.g. "," instead of "." for the decimal point in floats in some
locales)
This implementation passes all the glibc tests in stdio-common/tfformat.c
except two tests because of the difference in how values like e.g 0.25 are
rounded. Printf in glibc and on MacOS, as well as Rust std::fmt, round to
nearest, ties to even. Double-conversion, as well as printf on Windows
and conversion functions in ECMAScript round to nearest, ties away from
zero.
The standard for printf says rounding is implementation-defined so
either way is technically correct.
Differential Revision: https://phabricator.services.mozilla.com/D102699
ImmutableScriptData is already packed, and doesn't contain pointers.
When encoding, it encode the entire data at once.
When decoding, it allocate ImmutableScriptData with given size, and then
read data, and then validate the size on debug build.
Depends on D103162
Differential Revision: https://phabricator.services.mozilla.com/D103163
To avoid accessing BigIntStencil from constant folding, calculate isZero
and store it into BigIntLiteral.
Depends on D103160
Differential Revision: https://phabricator.services.mozilla.com/D103161