Commit Graph

358 Commits

Author SHA1 Message Date
Connor Brewster
7df8b34d1a Bug 1606742 - Support alpha component on svg color matrix filter in WebRender r=nical
Differential Revision: https://phabricator.services.mozilla.com/D58587

--HG--
extra : moz-landing-system : lando
2020-01-06 18:41:55 +00:00
Jeff Muizelaar
5feaafe088 Bug 1603172 - Increase fuzz on split-batch.yaml test.
This should get it passing github CI on macOS release builds.

Differential Revision: https://phabricator.services.mozilla.com/D56779

--HG--
extra : moz-landing-system : lando
2019-12-11 18:26:47 +00:00
Andreea Pavel
fcd2311d43 Backed out changeset 2b3093f69e87 (bug 1599327) for causing bugs 1601865, 1601924, 1602500 2019-12-09 22:32:50 +02:00
Glenn Watson
8a17094715 Bug 1600472 - Part 1 - Add API for configuring performance vs. quality. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D56316

--HG--
extra : moz-landing-system : lando
2019-12-09 03:27:53 +00:00
Bert Peers
ca6c534bb3 Bug 1599327 - Use cluster scrollbar flags to select picture cache tile size. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D55555

--HG--
extra : moz-landing-system : lando
2019-12-05 01:24:28 +00:00
Alexis Beingessner
df0447e277 Bug 1601376 - removed try and mem::uninitialized uses in egl.rs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D55863

--HG--
extra : moz-landing-system : lando
2019-12-04 21:38:40 +00:00
Razvan Maries
2bceb8b822 Backed out changeset ec74db078a85 (bug 1601376) for wrench bustages. CLOSED TREE 2019-12-04 23:12:38 +02:00
Alexis Beingessner
a199f771b7 Bug 1601376 - removed try and mem::uninitialized uses in egl.rs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D55863

--HG--
extra : moz-landing-system : lando
2019-12-04 20:35:10 +00:00
Glenn Watson
5eb0496079 Bug 1600539 - Add an API for tagging image descriptors as videos. r=nical
In future, WR will consider this when deciding whether an image
should be promoted to be a native compositor surface.

Differential Revision: https://phabricator.services.mozilla.com/D55406

--HG--
extra : moz-landing-system : lando
2019-12-03 11:21:16 +00:00
Bert Peers
dcdc33616e Bug 1600712 - Wrench Yaml code writes scrollbar-container but doesn't read it back r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D55557

--HG--
extra : moz-landing-system : lando
2019-12-03 15:11:06 +00:00
Glenn Watson
34abe00eb2 Bug 1599656 - Part 1 - Skip composites where possible, if frame is a no-op. r=sotaro
Differential Revision: https://phabricator.services.mozilla.com/D54864

--HG--
extra : source : 86427d3d06009b523b5e34c5994e468571a41fcc
2019-12-02 18:58:57 +00:00
shindli
ebe11416a7 Backed out 2 changesets (bug 1599656) for causing wrench bustage on central CLOSED TREE a=backout
Backed out changeset 4351a57052fa (bug 1599656)
Backed out changeset 86427d3d0600 (bug 1599656)
2019-12-03 12:59:47 +02:00
Glenn Watson
62a2494e19 Bug 1599656 - Part 1 - Skip composites where possible, if frame is a no-op. r=sotaro
Differential Revision: https://phabricator.services.mozilla.com/D54864

--HG--
extra : moz-landing-system : lando
2019-12-02 18:58:57 +00:00
Glenn Watson
a793c1ca32 Bug 1600141 - Fix rounded clip rects with radii < 1px. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D55203

--HG--
extra : moz-landing-system : lando
2019-12-02 10:27:42 +00:00
Andrew Osmond
d9c99acc89 Bug 1555376 - Snap glyphs before clipping in the shader. r=lsalzman
Snapping glyph positions are an internal detail to a primitive. As such,
any snapping required must be taken into account when calculating the
local rect. That ensures that when the clip is applied, it doesn't cut
off parts of the glyph that would have been retained after snapping.

Differential Revision: https://phabricator.services.mozilla.com/D55348

--HG--
extra : moz-landing-system : lando
2019-11-30 15:57:44 +00:00
Nicolas Silva
bad2a46398 Bug 1596086 - Add a reftest. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D54612

--HG--
extra : moz-landing-system : lando
2019-11-28 16:22:01 +00:00
Arthur Iakab
59355ab529 Backed out 3 changesets (bug 1596086) for causing wrench bustages on result.rs CLOSED TREE
Backed out changeset ad8db62e810c (bug 1596086)
Backed out changeset 3a6f8c6edf4e (bug 1596086)
Backed out changeset db3785d7c430 (bug 1596086)
2019-11-28 01:16:42 +02:00
Nicolas Silva
d6d08f27c2 Bug 1596086 - Add a reftest. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D54612

--HG--
extra : moz-landing-system : lando
2019-11-27 04:48:36 +00:00
Glenn Watson
32092a7398 Bug 1599672 - Remove unmaintained json writer in wrench. r=kvark
This code path is unmaintained and broken.

Differential Revision: https://phabricator.services.mozilla.com/D54871

--HG--
extra : moz-landing-system : lando
2019-11-27 20:53:18 +00:00
Glenn Watson
9127bd83e9 Bug 1599671 - Remove lazy_static dependency from wrench. r=kvark,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D54870

--HG--
extra : moz-landing-system : lando
2019-11-27 20:47:54 +00:00
Andrew Osmond
b199ff482d Bug 1589198 - Snap the picture's precise local rect the same as the estimated local rect. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D53243

--HG--
extra : moz-landing-system : lando
2019-11-27 20:12:32 +00:00
Bert Peers
ecf94742dd Bug 1599644 - Debug build of Wrench panics when pressing H for Help r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D54845

--HG--
extra : moz-landing-system : lando
2019-11-27 14:51:41 +00:00
Narcis Beleuzu
abfef73a2b Backed out 4 changesets (bug 1596086) for reftest failures on reftest.list . CLOSED TREE
Backed out changeset 651a7556124b (bug 1596086)
Backed out changeset ab2e0e2a9048 (bug 1596086)
Backed out changeset 00ccdb940ea2 (bug 1596086)
Backed out changeset 57869dbf0a8b (bug 1596086)
2019-11-27 01:38:33 +02:00
Nicolas Silva
fbc26acd11 Bug 1596086 - Add a reftest. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D54612

--HG--
extra : moz-landing-system : lando
2019-11-26 20:38:41 +00:00
Glenn Watson
3de96f05de Bug 1599323 - Select small tile sizes for overlay scrollbars on mac. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D54655

--HG--
extra : moz-landing-system : lando
2019-11-26 03:46:53 +00:00
Dzmitry Malyshau
1e8edf9e02 Bug 1597319 - Use rounded rect FAST_PATH more agressively r=gw
Differential Revision: https://phabricator.services.mozilla.com/D53999

--HG--
extra : moz-landing-system : lando
2019-11-21 00:53:00 +00:00
Narcis Beleuzu
4305bf1a25 Backed out changeset ab47a4eac76c (bug 1597319) for WR bustages on perspective-box-shadow.yaml . CLOSED TREE 2019-11-21 02:34:15 +02:00
Dzmitry Malyshau
3a063c9858 Bug 1597319 - Use rounded rect FAST_PATH more agressively r=gw
Differential Revision: https://phabricator.services.mozilla.com/D53999

--HG--
extra : rebase_source : 4bde6755f4fa92d85300888dc286b9fd97100c90
extra : source : d65ded00cb51c7c5e3e1a23145b2a8bf15e5e52e
2019-11-20 18:48:50 +00:00
shindli
f1c84ddb25 Backed out changeset d65ded00cb51 (bug 1597319) for causing wrench bustages CLOSED TREE 2019-11-20 22:37:01 +02:00
Dzmitry Malyshau
8fd6f3ba5d Bug 1597319 - Use rounded rect FAST_PATH more agressively r=gw
Differential Revision: https://phabricator.services.mozilla.com/D53999

--HG--
extra : moz-landing-system : lando
2019-11-20 18:48:50 +00:00
Daniel Varga
7f39a7bfe6 Backed out changeset a3a7133456b4 (bug 1589198) for reftest at layout/reftests/svg/filters/filter-nested-filtering-02.svg. On a CLOSED TREE 2019-11-19 15:51:58 +02:00
Andrew Osmond
d49f193b91 Bug 1589198 - Snap the picture's precise local rect the same as the estimated local rect. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D53243

--HG--
extra : moz-landing-system : lando
2019-11-18 15:03:00 +00:00
Josh Matthews
a9c6070468 Bug 1595787: Move ExternalImageHandler and OutputImageHandler traits to webrender_api. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D52686

--HG--
extra : moz-landing-system : lando
2019-11-14 17:40:28 +00:00
Glenn Watson
8b60bbd445 Bug 1594593 - Add wrench regression test for picture cache occlusion culling. r=kvark
This adds a regression test for bug #1594567.

Differential Revision: https://phabricator.services.mozilla.com/D52619

--HG--
extra : moz-landing-system : lando
2019-11-12 15:20:37 +00:00
Glenn Watson
740d2fb279 Bug 1594644 - Add debugging infrastructure for picture cache invalidation. r=nical
Add a first pass at invalidation debugging infrastructure. Also
tidy up the locations that invalidate into a common method, that
sets the invalidation reason.

Differential Revision: https://phabricator.services.mozilla.com/D52128

--HG--
extra : moz-landing-system : lando
2019-11-10 19:05:15 +00:00
Andrew Osmond
7243a387ca Bug 1575258 - Make text rasterize, render and snap glyphs consistently. r=lsalzman
The glyph pixel space in which we rasterized glyphs differed from how we
rendered the rasterized glyphs in the shader. They need to be in
agreement because the glyph subpixel offset selected during
rasterization depends on it. This patch should make the paths consistent
with each other.

Additionally, during animations, we now snap the reference frame
relative offset ignoring the impact of any animated transforms. This
helps with minimizing glyph wiggling during the transition.

Differential Revision: https://phabricator.services.mozilla.com/D51305

--HG--
extra : moz-landing-system : lando
2019-11-06 12:17:43 +00:00
Nicolas Silva
3e4e9cbc17 Bug 1568600 - Disable sub-px aa in WebRender if dual-source-blending is unavailable. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D42303

--HG--
extra : moz-landing-system : lando
2019-11-05 14:39:37 +00:00
Nicolas Silva
cf9c5e0706 Bug 1584101 - Temporarily disable resource cache leak checks. r=jrmuizel
Bug 1593013 was filed to reenable them.

Differential Revision: https://phabricator.services.mozilla.com/D51284

--HG--
extra : moz-landing-system : lando
2019-11-04 14:11:22 +00:00
Glenn Watson
3300072e99 Bug 1591529 - Reduce OS compositor tiles sizes to save GPU memory. r=kvark
(1) Reduce size of content tiles from 2048 x 512 to 1024 x 512.

  This reduces the large extra overhead of tiles on screens that
  are not 4k resolution.

(2) Remove small 128 x 128 tiles.

  These typically create a lot of OS compositor surfaces, which
  adds significant overhead on some platforms. Having them be
  normal content tiles also means no resizing of the picture
  cache for the UI when the awesome bar and/or status bar is on.

(3) Add support for very narrow cache surfaces.

  This is a special use case for scrollbar caches. It's worth
  supporting this special case for the significant memory and
  performance savings for these surfaces.

Differential Revision: https://phabricator.services.mozilla.com/D51541

--HG--
extra : moz-landing-system : lando
2019-11-04 05:53:31 +00:00
Glenn Watson
3de743de9b Bug 1592417 - Reduce work done when picture cache tiles are inside the display port but not currently visible. r=nical
Previously, WR needed to update and track dependencies for all
allocated picture cache tiles in the virtual display port. This
means doing extra CPU work (dependency updates) and in some cases,
extra GPU work (larger off-screen child surfaces) than are strictly
required.

With this patch, each tile determines if it is currently visible in
pre_update. If the tile isn't visible, we skip doing dependency
updates until it is on screen again. More importantly, this is
used to reduce the world culling rect for primitive preparation,
which also means large child surfaces only require allocations
large enough to enclose the visible tiles, rather than the
display port.

Differential Revision: https://phabricator.services.mozilla.com/D51006

--HG--
extra : moz-landing-system : lando
2019-11-03 03:38:57 +00:00
Glenn Watson
acad28be56 Bug 1592891 - Disable picture caching when picture caches have complex transforms. r=kvark,nical
With the recent changes to compositing in WR, the scene must either
only produce produce cache tiles, or disable picture caching and
rasterize directly.

This patch removes the (currently broken) path where WR would attempt
to disable only the picture cache slice(s) that have a complex
transform.

In future, we should disable creating picture cache slices with
complex transforms at the API level, and remove this path completely.

Differential Revision: https://phabricator.services.mozilla.com/D51228

--HG--
extra : moz-landing-system : lando
2019-10-31 19:53:44 +00:00
Glenn Watson
58f5afc93f Bug 1592840 - Fix panic in wrench when replaying the display list. r=ktaeleman,kvark
Differential Revision: https://phabricator.services.mozilla.com/D51206

--HG--
extra : moz-landing-system : lando
2019-10-31 17:47:00 +00:00
Glenn Watson
5ee706e95f Bug 1592810 - Add support for dynamically disabling picture caching, for pinch zoom cases. r=nical
This patch allows WR to dynamically choose whether picture caching
is enabled per-frame, rather than only during initialization.

This will allow mobile devices to disable picture caching during
pinch zoom events, where tiles will be constantly invalidated.

This can also be controlled via a debug flag, which allows dynamic
toggling of picture caching in both Gecko and Wrench. This is
useful for profiling, to compare direct rasterization to picture
caching performance.

The native compositor interface relies on picture caching. So, if
a native compositor is enabled, picture caching is force enabled.

Differential Revision: https://phabricator.services.mozilla.com/D51211

--HG--
extra : moz-landing-system : lando
2019-10-31 08:38:01 +00:00
arthur.iakab
604018cb2e Backed out changeset 42d3ccf69629 (bug 1583879) for causing reftest failures on sort-startSame-1b.svg CLOSED TREE 2019-10-11 18:27:52 +03:00
Nicolas Silva
c1f7e63ce2 Bug 1583879 - Skip uploading and rendering empty blob tiles. r=jrmuizel
This patch adds a notion of "fully transparent" image in the resource cache.
These are not uploaded in the texture cache and image requests return the
necessary information to allow the frame building code to skip emitting
primitives accordingly.

Differential Revision: https://phabricator.services.mozilla.com/D47878

--HG--
extra : moz-landing-system : lando
2019-10-09 13:34:51 +00:00
Jamie Nicol
523db48f57 Bug 1587047 - Update wrench reftest expectations. r=gw
Depends on D48541

Differential Revision: https://phabricator.services.mozilla.com/D48542

--HG--
extra : moz-landing-system : lando
2019-10-08 20:18:50 +00:00
Nicolas Silva
aa11c1282e Bug 1580922 - Add a wrench rawtest. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D47790

--HG--
extra : moz-landing-system : lando
2019-10-02 07:58:35 +00:00
Bogdan Tara
d78d9c367f Backed out 3 changesets (bug 1580922) for wrench failures CLOSED TREE
Backed out changeset daad734d5665 (bug 1580922)
Backed out changeset e24d2e6811b0 (bug 1580922)
Backed out changeset 485eee83a4f3 (bug 1580922)
2019-10-02 10:44:04 +03:00
Nicolas Silva
dd62825627 Bug 1580922 - Add a wrench rawtest. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D47790

--HG--
extra : moz-landing-system : lando
2019-10-02 06:54:56 +00:00
Glenn Watson
334f0b22f4 Bug 1584439 - Enable picture caching for scroll bars and UI content. r=nical
Once this patch lands, all content drawn by WebRender is drawn into
a picture cache surface.

This will incur some extra GPU memory overhead since there are extra
GPU texture buffers. Much of this can be reduced by adding a couple
of simple optimizations in future to detect tiles that are solid
colors only.

With this change, we'll now be able to provide exact dirty rects for
the entire screen without any hacks, and start the work to draw into
OS compositor surfaces directly.

Differential Revision: https://phabricator.services.mozilla.com/D47395

--HG--
extra : moz-landing-system : lando
2019-10-01 08:52:40 +00:00