The [noscript] attribute does nothing on XPIDL interfaces, so make it
invalid so people don't think something might be affected if they set it.
Differential Revision: https://phabricator.services.mozilla.com/D158136
It shouldn't actually keep us out of Baseline anymore, and `eval` should be
enough to prevent any heavy optimization.
I tried replacing the `eval()` with `Cu.exportFunction` to create native stack
frames in a definitely-not-JITtable way, but the frames were too small, and
the stub JS function calls started failing with stack overflow errors at the
same time as the "heavy" native calls.
That also happened to uncover a fairly obvious bug in the existing test, in
that we can't actually report a failed assertion when we're out of stack
space, and just wind up throwing another stack overflow or allocation error
instead.
Differential Revision: https://phabricator.services.mozilla.com/D159225
Some Wayland version send such duplicate events and they could cause the
page to be stuck in overscroll if the pan gesture ends without velocity for
momentum scrolling.
Differential Revision: https://phabricator.services.mozilla.com/D159139
The "message" property of the pref "browser.firefox-view.feature-tour" seems to have no actual use, and only one value of "FIREFOX_VIEW_FEATURE_TOUR". We can remove it to reduce complexity.
Differential Revision: https://phabricator.services.mozilla.com/D159131
The min-width / contain are as usual to allow elements to shrink under
their intrinsic size. You can only see its effects with relatively thin
windows (or with a very large number of tabs in the tabstrip case).
Differential Revision: https://phabricator.services.mozilla.com/D157216
For canvas users that rapidly create and destroy canvases, we may end up creating
a new SharedContext (and hence ClientWebGLContext) if there are no more canvases
left between destruction and creation. To work around this, just keep alive the
SharedContext for the main thread (other threads are unfortunately a bit tricky
to support) so that canvas creation remains fast in this instance.
Depends on D158903
Differential Revision: https://phabricator.services.mozilla.com/D158904
If we fail to compile DrawTargetWebgl's shaders, we bail out to a normal software canvas.
However, it will still try to create a DrawTargetWebgl every time we need to create a canvas.
To avoid this, remember if shader compilation failed in the process, and don't try to create
an accelerated canvas again in that case.
Differential Revision: https://phabricator.services.mozilla.com/D158903
The data included in the `Reader:AddButton` message used by SaveToPocket.jsm is slightly modified, as it now includes a localization identifier rather than a preformatted label.
Differential Revision: https://phabricator.services.mozilla.com/D158575
This simplifies the widget tracker code to avoid having to remove random
width attributes in all children.
Resize only the searchbar, since that's the only thing that's
effectively restored already on nightly.
Differential Revision: https://phabricator.services.mozilla.com/D159071
Seems somewhat reasonable to do this, if we wanted to, since
nsFocusManager also makes these always match :focus-visible.
If you think it's worth doing I can add a test quite trivially.
Differential Revision: https://phabricator.services.mozilla.com/D158186
This matches the implementation of refcounting in C++ XPCOM objects.
We'll end up crashing if the refcount being returned is too large.
Change inc() and dec() to use try_into instead of as. This will change
the behavior because we'll crash if the value is too large instead of
silently truncating the return value, which might be worse because few
callers actually use the return value, but is unlikely to matter.
Also, use a more precise return type for the get() methods. It is only
used by Rust code, so there's no need to be compatible with
nsISupports. I made that change here to avoid needing to add a coercion
from usize to nsrefcnt.
Part of my goal with this patch is to eliminate an unnecessary use of
nsrefcnt from Rust.
Differential Revision: https://phabricator.services.mozilla.com/D159124
The CSS Contain specification says that descendants of elements with
`content-visibility: hidden` that are in the top layer should not
generate boxes. Implementing this would lead to many open questions that
are currently not answered by the specification. While these questions
are hashed out in the specification, ensure that these top layer
elements do not generate display list items.
Differential Revision: https://phabricator.services.mozilla.com/D159051
Defines the OCSP_AGE_AT_CRLITE_OVERRIDE histogram which records the age of an
OCSP response, in hours, when CRLite says a certificate is revoked and OCSP
says it's OK.
Differential Revision: https://phabricator.services.mozilla.com/D158991