UIS_INITIALIZE does something like setting the flag if the last input event was
a mouse event or clearing it if it was a keyboard event. Unfortunately, if this
is initialized to always show focus rings we start always showing outlines for
all content, all the time, which is both undesired and confusing.
It's also not clear from the docs _which_ event it looks at specially at
startup, but anyhow the result we get is clearly flaky, from my testing.
Explicitly clear the flag. It's not clear to me if other applications can cause
the state to change... but otherwise maybe we can just remove the code dealing
with these flags?
Differential Revision: https://phabricator.services.mozilla.com/D109086
This test synthesizes touch input only in continuous way via dragging functions, so theoretically it should never trigger InjectTouchInput() 100ms timeout issue.
Depends on D109158
Differential Revision: https://phabricator.services.mozilla.com/D109159
This commit:
- reduces the extra height on checkbox/radio items and iconified items.
This was caused by -moz-appearance for the icon items, and by the
fixed height of menu-iconic-left for the checkbox/radio items.
- moves the submenu arrow left so the bounding box of the icon aligns
with the separator ends
- moves the checkmark right based on the spec (12/8 spacing instead of
10/10).
Differential Revision: https://phabricator.services.mozilla.com/D109014
This patch doesn't change behavior; it's just switching us between two
functions that do the same thing. (One is literally a trivial wrapper for the
other.)
We're using the new "InProcess" version of this API as a way of annotating
callsites that have been vetted as behaving properly in out-of-process iframes.
These two callsites in DOMIntersectionObserver.cpp are part of an algorithm
that was already modernized to work with fission in bug 1599795. In a
fission-enabled scenario: when we end up with null `containerFrame` due to
hitting an oop-iframe boundary, we should end up handling things properly via
our subsequent application of the passed-in `aRemoteDocumentVisibleRect` arg.
Differential Revision: https://phabricator.services.mozilla.com/D109169
Schedule live desktop page load for all recorded sites. Also provide fission variants for all browsertime desktop tests running on webrender platforms and moved sheriffed live page load tests into a separate job.
Differential Revision: https://phabricator.services.mozilla.com/D108959
This patch doesn't change behavior; it's just switching us between two
functions that do the same thing. (One is literally a trivial wrapper for the
other.)
We're using the new "InProcess" version of this API as a way of annotating
callsites that have been vetted as behaving properly in out-of-process iframes.
This callsite in nsPresContext.cpp is for some invalidation logic that we only
need to perform when the outer and inner document are part of the same display
list (i.e. part of the same process), as discussed in the adjacent
code-comment. It behaves just fine (doing nothing) if GetCrossDocParentFrame()
fails due to being in an out-of-process iframe.
Differential Revision: https://phabricator.services.mozilla.com/D109145
This test doesn't use "reftest-wait", so really, we should be able to load it
and move on without even caring about its setInterval. But occasionally we get
unlucky and see a still-pending paint (caused by the setInterval) every time we
make a decision about whether the test is done or not. Let's avoid this issue
by just setting an upper-bound of 10 iterations on the number of times we'll
let the setInterval fire.
Differential Revision: https://phabricator.services.mozilla.com/D109153
This commit adds the core algorithm for editing moz.build files, tests for a few
pieces of it, and the code to manually run the algorithm over the gecko codebase
and see dynamically how well it performs at trying to assigning existing source
files back into their original locations.
Differential Revision: https://phabricator.services.mozilla.com/D104754
With bug 1464268 and friends the ContainerWriters starting being called once per
second to get written data out. OggWriter was only able to handle getting one
page out per call, so if we had written N pages to OggWriter while processing a
second worth of data, it'd still have N-1 pages in a buffer. That led to
MediaRecorder writing much too short files when recording audio/ogg.
This patch fixes this properly in OggWriter by extracting all available pages in
GetContainerData().
Differential Revision: https://phabricator.services.mozilla.com/D109029
The line occurs due to the use of clip-masking creating a tile boundary. The SWGL YUV fast-path uses
saturated math and clamping to adequately deal with this issue, but when we fall off the fast-path
at the boundary, the main shader itself does not do any such clamping. When the generated negative
RGB values hit the blend stage and it tries to clip-mask it, it generates a bogus result.
To avoid this, it is sufficient to ensure that we clamp the Y value to be positive, if there is an
invalid Y value inside the headroom of the encoding space. This should only add a single SIMD
instruction to the alpha-pass variant without negatively impacting the other variants.
Differential Revision: https://phabricator.services.mozilla.com/D108983
There are some theoretical cases where the FB state might get a bit tortured
and we might encounter some invalid FB state while drawing. This adds some
extra validation just to be safe.
Differential Revision: https://phabricator.services.mozilla.com/D108988
We now pass a map object instead multiple arguments.
This way if we need to add/remove/change something we don't need to worry
about backwards compatibility and having to change all the callsites as
we do in this patch :)
Differential Revision: https://phabricator.services.mozilla.com/D109000