mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-18 06:45:33 +00:00
![Jamie Nicol](/assets/img/avatar_default.png)
When zooming, webrender overrides the raster space used to render text, so that we do not expensively rerasterize the glyphs for every fractional change in zoom level. Previously we chose to do this when any ancestor of the picture's spatial node was being zoomed. This worked on most pages, because the scroll frame which is used as the main picture caching slice is a descendent of the zooming reference frame. However, on pages without a scrollable frame, or for fixed-position content, the picture's spatial node will not be a descendent of the zooming reference frame. This meant that we did not detect that we were zooming and rendered the text in screen raster space rather than the overridden local space, leading to poor zooming performance. To fix this, check whether the primitive's spatial node (rather than the picture's) is a descendent of the zooming frame. Differential Revision: https://phabricator.services.mozilla.com/D88474