WASM_HAS_HEAPREG was recently introduced as a global definition, so
we can simplify the baseline compiler by using that instead of the
private RABALDR_HAS_HEAPREG.
Differential Revision: https://phabricator.services.mozilla.com/D139807
This adds an options parameter to JSContext::setHelperThread and arranges to
have the value from the main thread passed through where required.
Differential Revision: https://phabricator.services.mozilla.com/D139824
This adds thread information to sources (generated, original and pretty-printed-original), tabs and breakpoints
as its already done with source actors. This will make it easy to apply retrieve and cleanup these resources
based on their thread info without having to do a lot of work. Might help improve perfomance is some of
the complex selectors.
Differential Revision: https://phabricator.services.mozilla.com/D139810
We only need to store the id and status of the selected browsers
for the inspector.
Functions from compatibility-user-settings are renamed to better
convey what they are actually doing, and JSDoc is added to make
everything more explicit.
Differential Revision: https://phabricator.services.mozilla.com/D139394
We no longer need to use the print portal, the gtk is doing that for us
for the system print dialog and the native print dialog uses GtkPrintJob
which sends jobs to the cups print backend.
Differential Revision: https://phabricator.services.mozilla.com/D139594
This probe reports when our different track encoders fail to init in the
MediaRecorder pipeline. The failure rates are very low, so I don't think keeping
this around is helping us.
Differential Revision: https://phabricator.services.mozilla.com/D139321
This is consistent with how xpcom's Mutex has its platform-dependent code in mozglue, and will allow readers-writer locks in mozglue without duplication.
Differential Revision: https://phabricator.services.mozilla.com/D139669
This patch makes us use the same code path for scroll snapping of
zero-velocity OnPanEnd and followed-by-momentum OnPanEnd.
This is preferable because mFollowedByMomentum is unreliable.
Depends on D135921
Differential Revision: https://phabricator.services.mozilla.com/D135922
ScrollSnapUtils::GetSnapPointForDestination has different behavior based on
the scroll unit. More specifically, the difference is in CalcSnapPoints::AddEdge:
Unless the unit is DEVICE_PIXELS, this function will only look for snap
points in the scroll direction. For example, if we are currently at position 40,
our destination is 50, and we have snap points at 30 and 100, then we'll only
consider snap point 100, even though snap point 30 would be closer to the destination.
Furthermore, if the destination is at the same position as the current position,
then we will not snap at all.
This behavior makes some sense for discrete-tick wheel scrolling, but I don't think
it is appropriate for touchpad scrolling. ScrollSnapToDestination is called from
OnPanMomentumStart and from AttemptFling; in both these contexts I think it makes
more sense to take all snap points into account.
With this change, it becomes possible to call ScrollSnapToDestination even when
our current velocity is zero. Without this change, we wouldn't scroll snap at
all in that case.
Depends on D135920
Differential Revision: https://phabricator.services.mozilla.com/D135921
Scroll snapping uses an MSD smooth scroll to animate to the target position.
During the scroll snap animation, any synthesized momentum events
from the OS should be ignored; the scroll snap animation has taken over.
It is possible that this patch has unfortunate consequences when mixing
keyboard and touchpad scrolling. For example, pressing space to scroll down
by a page and then doing a fling with the touchpad might now have different
results.
Differential Revision: https://phabricator.services.mozilla.com/D135920
addon.isPrivileged and extension.isPrivileged are currently almost
identical, except in the case of temporary extensions when experiments
are enabled.
This difference is inexplicable for those unfamiliar with the history,
so this patch makes them identical.
addon.isPrivileged was introduced in bug 1543204 to support hidden
add-ons, which was intended to be used by privileged add-ons only.
Hence, this patch updates the "hidden" getter to continue ignoring the
hidden flag for temporary add-ons.
With this change, the addon.isPrivileged check can be removed from
loadManifestFromWebManifest, in favor of checking extension.isPrivileged
at the location where addon.hidden is initialized for the first (and now
only) time.
BootstrapScope.callBootstrapMethod can now also use addon.isPrivileged
instead of invoking the ExtensionData.getIsPrivileged helper.
Differential Revision: https://phabricator.services.mozilla.com/D128233
Although the default value for isPrivileged is false in the
ExtensionData constructor, let's add the explicit value (false) so that
it's obvious that the default value is intended.
Differential Revision: https://phabricator.services.mozilla.com/D139725
During updates, isPrivileged was not set correctly, which resulted in
incorrect error messages (warnings about unsupported permissions) when a
privileged/builtin extension was updated (a variant of bug 1675858).
In the previous patch (part 3), isPrivileged was added to the
ExtensionData constructor, and also passed to BootstrapScope calls,
so we can use that here to.
The unit test here serves two purposes:
1. Primarily: test coverage for the correctness of isPrivileged in the
update scenario.
2. Test coverage for the existence and order of ExtensionAPI's onUpdate
calls. There is no unit test for this mechanism right now, only
indirect tests.
Differential Revision: https://phabricator.services.mozilla.com/D131682
This refactor replaces the `aAddon` parameter of verifySignedState
with the minimal parameters needed to perform its functionality.
This enables us to compute signedState without requiring a fully
initialized AddonInternal instance.
Differential Revision: https://phabricator.services.mozilla.com/D128231
l10n_resources has bugs that results in errors when enabled for
ExtensionData. In this patch stack we are going to introduce the
isPrivileged property to ExtensionData.
To prevent these errors from being triggered when isPrivileged is added,
replace the `"isPrivileged" in this` check with a check against
`ExtensionData`.
l10n_resources support in ExtensionData will be added in bug 1733466.
Differential Revision: https://phabricator.services.mozilla.com/D128230