mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-21 17:25:36 +00:00
94cf690698
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 |
||
---|---|---|
.. | ||
2d | ||
angle | ||
cairo | ||
config | ||
docs | ||
gl | ||
graphite2 | ||
harfbuzz | ||
ipc | ||
layers | ||
ots | ||
qcms | ||
sfntly | ||
skia | ||
src | ||
tests | ||
thebes | ||
vr | ||
webrender_bindings | ||
wr | ||
ycbcr | ||
moz.build |