gecko-dev/gfx
Jamie Nicol 94cf690698 Bug 1531142 - Avoid excessive glyph rasterization when pinch zooming. r=gw,kats
When pinch zooming webrender would re-rasterize glyphs for each tiny
difference in zoom level. This takes time in itself, but also causes
the texture cache to grow incredibly large, to the point where
resizing it to make room for more glyphs takes far too much time.

This patch avoids this by rounding the size at which glyphs are
rasterized whilst pinch zooming. To do this we add a FrameMsg which
APZ uses to tell webrender whether a spatial node is being pinch
zoomed. Then during frame building if a spatial node is being pinch
zoomed we override the raster space of its corresponding picture.

The chosen raster space is the current zoom level rounded up to the
nearest power of two, but not exceeding 8x. This seems to be a good
balance between quality and performance, though at high zoom levels
the cache still does grow very large due to the size of the glyphs.

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

--HG--
extra : moz-landing-system : lando
2019-05-22 20:13:34 +00:00
..
2d Bug 1533797 - Let freetype backend fall back to MS_SYMBOL if no UNICODE charmap is available. r=lsalzman 2019-05-10 16:27:49 +00:00
angle Bug 1549646 - Cherry-pick EXT_blend_func_extended into ANGLE. r=upstream 2019-05-06 19:02:23 -07:00
cairo Bug 1512504 - Remove support for MSVC. r=froydnj 2019-02-14 21:45:27 +00:00
config Bug 1539892 - replace FeatureChange and GPUDeviceStatus IPDL unions with native Maybe syntax; r=mattwoodrow 2019-03-28 21:13:53 +00:00
docs
gl Bug 1544180 - Add CheckedInt check r=jgilbert 2019-05-14 12:05:57 +09:00
graphite2
harfbuzz Bug 1540770 - Update HarfBuzz to version 2.4.0. r=jfkthame 2019-04-03 12:49:51 +00:00
ipc Bug 1540731 - Part 2: Move toplevel actors to override ActorDestroy, r=froydnj 2019-05-21 17:04:21 +00:00
layers Bug 1531142 - Avoid excessive glyph rasterization when pinch zooming. r=gw,kats 2019-05-22 20:13:34 +00:00
ots Bug 1531912 - Update OTS to 7.1.9. r=jfkthame 2019-03-02 15:32:15 +00:00
qcms Bug 1512504 - Remove support for MSVC. r=froydnj 2019-02-14 21:45:27 +00:00
sfntly Bug 1523969 part 8 - Move method definition inline comments to new line in 'gfx/'. r=kats 2019-02-25 16:07:19 -06:00
skia Backed out changeset 6440419b9d33 (Bug 1533546). r=jrmuizel 2019-05-22 18:20:09 +00:00
src Bug 1550156 - Add richer set of gfx feature failure codes for WebRender. r=jrmuizel 2019-05-10 09:50:58 -04:00
tests Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
thebes Bug 1359240 - When loading an SVG glyph, check if the SVG document is gz-compressed, and decompress before attempting to parse. r=jrmuizel 2019-05-20 21:01:18 +00:00
vr Bug 1550757 - Create new DLL for sharing VR code r=kip 2019-05-17 04:53:16 +00:00
webrender_bindings Bug 1531142 - Avoid excessive glyph rasterization when pinch zooming. r=gw,kats 2019-05-22 20:13:34 +00:00
wr Bug 1531142 - Avoid excessive glyph rasterization when pinch zooming. r=gw,kats 2019-05-22 20:13:34 +00:00
ycbcr Bug 1493898 - P6. Move YUVColorSpace definition in the gfx namespace. r=mattwoodrow. 2019-04-11 12:41:33 +00:00
moz.build Bug 1536162 - Update bugzilla component for gfx/wr. r=jrmuizel 2019-03-21 20:40:57 +00:00