The window opened by the crashtests does not show up in the list
maintained by BrowserWindowTracker, so we never end up with any tabs to
share, causing the test to hang. I don't like to remove a test, but this
was written for the old version of tab sharing which has been completely
removed, and there doesn't seem to be a clear path ahead which would
make this test pass without adding special case code in tab sharing that
would work with crashtests.
Depends on D84593
Differential Revision: https://phabricator.services.mozilla.com/D86564
This avoids a problem where apz side smooth scroll animations end immediately because the inaccuracy of converting to (integer) app units and back wrongly tells us that we have overscroll the non-moving axis if that axis is at the end of its range.
When we do a smooth scroll animation on the apzc side we use AxisPhysicsMSDModel. AxisPhysicsMSDModel is also used on the main thread to do smooth scroll animations. AxisPhysicsMSDModel uses doubles to represent all coordinates. On the main thread we pass in appunits, so the output of AxisPhysicsMSDModel is also in appunits. On the apzc side we follow that to.
A problem comes up when we do a smooth scroll animation in one axis, and the other axis is at the end of its range (and not animating). In the non-moving axis we convert the current scroll position (on the frame metrics) to appunits and pass it into AxisPhysicsMSDModel. Then when it comes time to call DoSample for the first time we ask for the position from AxisPhysicsMSDModel (in appunits) and then convert it to CSSPoint. And then we compare it with the current scroll position (on the frame metrics). Especially when we have zoom, the inaccuracy of this computation is enough for the difference between the CSSPoint for the current position from AxisPhysicsMSDModel and the current scroll offset (on the frame metrics) to be bigger than the epsilon that we use here:
https://searchfox.org/mozilla-central/rev/491612fa0be0f809069ea62c6316bf452cacc816/gfx/layers/apz/src/AsyncPanZoomController.cpp#747
and we determine that we have overscrolled the non-moving axis, and therefore the animation must be over.
Since AxisPhysicsMSDModel already operates purely on doubles if we just avoid converting to (integer) app units we avoid this problem. We could have AxisPhysicsMSDModel operate on float appunits, but that's a little inelegant because there aren't functions for converting to float appunits. We could also just have AxisPhysicsMSDModel operate on CSS pixels. That assumes that the physics calculations of AxisPhysicsMSDModel are scale independent, which I don't know for sure but they seem to be visually the same with CSS pixels.
Differential Revision: https://phabricator.services.mozilla.com/D86481
A lot of tests assume that the screen will be the last thing enumerated.
It is also the "scariest" option, so having it last makes sense.
Differential Revision: https://phabricator.services.mozilla.com/D84593
Now, only when deleting table cell contents, `HandleDeleteSelectionInternal()`
depends on `Selection`. However, this can be moved to `HandleDeleteSelection()`
because recursive callers expects `Selection` is collapsed by its previous job.
Differential Revision: https://phabricator.services.mozilla.com/D86183
This patch moves `EditorBase::ExtendSelectionForDelete()` into `AutoRangeArray`
and make it stop modifying `Selection`.
The method extends anchor-focus range with `nsFrameSelection` and it refers
bidi information in it too. Therefore, it needs to be called before modifying
anchor-focus range of `Selection`. Unfortunately, this makes the code messy,
but for now, we should take this. In the future, we should make the API of
`nsFrameSelection` free from `Selection`.
Differential Revision: https://phabricator.services.mozilla.com/D86182
And fix the only WPT for this while at it which was using the wrong URL
(and thus would always pass).
This actually makes me a bit uncomfortable given the amount of times
I've seen the pattern:
<link href="important.css" rel="preload" as="style" onload="this.rel = 'stylesheet'">
As that means that important.css won't block the load event. But let's
try.
Differential Revision: https://phabricator.services.mozilla.com/D86049
Also add an assertion for this to MacroAssembler::initTypedArraySlots. This replaces
some invalid code that used dataSlotOffset instead of dataOffset.
Not adding the test because with the new assertion this failed jit-tests.
Differential Revision: https://phabricator.services.mozilla.com/D86551
* If WarpBuilder is enabled, use WarpBuilder instead of IonBuilder for the analysis itself.
* Support optimized-arguments accesses in the transpiler (FunApplyArgs is still missing).
* Slow paths insert MGuardNotOptimizedArguments to deoptimize optimized-arguments.
Differential Revision: https://phabricator.services.mozilla.com/D86003
Based on the approach in D80944 but of the supported browser ids exposed via ChromeMigrationUtils.CONTEXTUAL_LOGIN_IMPORT_BROWSERS.
Differential Revision: https://phabricator.services.mozilla.com/D84465
The perfecthash module will instead try to sit in an infinite loop, so catching
this early is essential for giving better error messages.
Differential Revision: https://phabricator.services.mozilla.com/D85655