So, it turns out I didn't fully test the patch from bug 1740262 after I made my
final changes to it. A change that I had in the patch which I thought was
unnecessary, because it didn't fix the problem by itself, turns out to in fact
be necessary. It turns out we still need to inherit the parent stacking
context's `mRasterizeLocally` value inside gecko, or else we could have scale
changes which get dropped on the WebRender side. I do think long term WebRender
should handle all of this itself, because I believe there are still potential
issues lurking here when we start to think of this across the process boundary,
but I don't think I'm the right person right now to untangle everything to
cleanly move everything necessary into WebRender, so I think the solution for
right now is to have Gecko somewhat but not entirely reduntantly handle raster
space inheritance itself, in addition to WebRender handling raster space
inheritance in order to partially cover the process boundary case. This is not
a pretty solution, but as far as I can tell it fixes the issues that bug
1730710 introduced without regressing the performance back to pre-1730710
levels.
Differential Revision: https://phabricator.services.mozilla.com/D132308
Add nsIAutoCompleteResult.isRemovableAt method, to indicate whether the value
is removable, and do nothing for Shift+Delete on the item when the value is
not removable.
Depends on D131740
Differential Revision: https://phabricator.services.mozilla.com/D131741
This WebRenderImageProvider/ISurfaceProvider subclass provides the
implementation for blob recordings. This is mostly just taking the
functionality that was previously in SourceSurfaceBlobImage.
Differential Revision: https://phabricator.services.mozilla.com/D126602
Now that we no longer have the extra layer of ImageContainers providing
a superficial level of caching/reuse of existing blob recordings, we
need some way to share recordings. This part adds support to
SurfaceCache to store BlobSurfaceProvider objects.
This includes the specialized code for invalidating SVG images. In
particular this is useful for animated SVG images. In general we want to
avoid changing the image key whenever possible so that we avoid
reallocating the underlying buffers in the compositor process for the
rasterized blob images.
We also need to track the ImageIntRegion used by the recording. If a
caller only wants a slice of the SVG image, then we need to track this
differentiation in our cache entries. At this time, we don't allow
substitutes for entries with a region exclusion.
Differential Revision: https://phabricator.services.mozilla.com/D126603
This will be used by layers as a replacement for ImageContainer's
ContainerProducerID for tracking if the same imgIRequest/imgIContainer
own the cached WebRenderImageProvider.
Differential Revision: https://phabricator.services.mozilla.com/D126598
This provides the framework to allow ISurfaceProvider objects to
implement WebRenderImageProvider. It is straightforward for rasterized
providers (DecodedSurfaceProvider, and SimpleSurfaceProvider). Later
parts in this series will provide the necessary changes for blob
recordings and for animatedi images.
Differential Revision: https://phabricator.services.mozilla.com/D126597
In later parts in this series, GetImageProvider will replace
GetImageContainerAtSize. This will be a more specialized and lower
overhead means to get a wr::ImageKey for a particular surface.
Differential Revision: https://phabricator.services.mozilla.com/D126596
We no longer use SourceSurfaceMappedData because we only support
SourceSurfaceSharedData-backed imgFrame in the SurfaceCache now.
Differential Revision: https://phabricator.services.mozilla.com/D126595
When Firefox was activated by Alt+Tabbing, there was a case that event hook of WindowOcclusionCalculator could not detect an event of window activated. Then it is necessary to trigger window occlusion calculation from nsWindows.
Differential Revision: https://phabricator.services.mozilla.com/D132206
This patch implements `JoinNodesResult` class which callers of
`JoinNodesWithTransaction()` can access removed node, existing (joined) node and
joined point with logical named accessors, and makes
`JoinNodesWithTransaction()` return it.
Then, the callers don't need to change at fixing bug 1735608.
Differential Revision: https://phabricator.services.mozilla.com/D132120
Automatic update from web-platform-tests
[webtransport] Set ENABLE_CONNECT_PROTOCOL settings flag (#31573)
This is required to use an Extended CONNECT method. WebTransport
uses an Extended CONNECT method.
--
wpt-commits: 0892b708c64f216dbb328a853be6042192a368f5
wpt-pr: 31573
Automatic update from web-platform-tests
Extend empty and fragment only URL tests to also check cursor property (#31655)
--
wpt-commits: 5e1c89ff487f67344f731ac9f6dc8ba4aedf6857
wpt-pr: 31655
Automatic update from web-platform-tests
Use 2-digit precision for comparison in user-timing/measure-l3.any.js
--
wpt-commits: 9959152fa72f8a5319df9e024cea4b8fa750e648
wpt-pr: 26192
Automatic update from web-platform-tests
[tables] Apply nowrap attribute on <td> universally.
Previously we only applied it when a <td> element had no fixed-width.
This was incorrect.
Bug: 821915
Change-Id: I4c85ef84ba6d5e15381baff273b32c523076ffbd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3285835
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/main@{#942465}
--
wpt-commits: 77989f26f2c0e3546d3edb2a8e8a766fc25aa814
wpt-pr: 31649
Automatic update from web-platform-tests
Fix fixed-position cull rect under non-containing stacking context
Now handle fixed-position cull rects specially by mapping from the view
property tree state and ignoring additional clips under view clip.
Also force fixed-position cull rect update when view clip changes.
Bug: 1267676
Change-Id: If09e457e65acf9c397eb5bd06c2eedb7ce16d184
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3282877
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/main@{#942444}
--
wpt-commits: 772fbca4cf503b3227e8f577b0ab73e0da852f1e
wpt-pr: 31647
Automatic update from web-platform-tests
update META for gamepad + adds new reviewers (#31641)
--
wpt-commits: c48d1460fbf65a7e3d22487c8739741331759c7b
wpt-pr: 31641