Closed Bug 1514410 Opened 4 years ago Closed 4 years ago

[wpt-sync] Sync PR 14529 - Fix gradient background sizing


(Core :: Layout, enhancement, P4)




Tracking Status
firefox66 --- fixed


(Reporter:, Unassigned)




(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 14529 into mozilla-central (this bug is closed when the sync is complete).

Details from upstream follow.

Stephen Chenney <> wrote:
>  Fix gradient background sizing
>  This is a hard-to-fix situation. We size generated background images
>  according to the tile size, which is a snapped rectangle sized according
>  to the destination values, in general. But then we compute a src rect
>  for image drawing using the unsnapped values, because that is best for
>  bitmap images where we want to pull out the most accurate src rect
>  possible. However, that source rect ends up larger than the tile size
>  due to rounding without the original offset in the layer (because now
>  we are working in image space).
>  The gradient painting code then sees that it has a src rect that is
>  larger than the tile size and hence the gradient image size. The code
>  thinks that we want to have some more pixels than the gradient
>  provides, which is true in some cases, and scales things to get those
>  extra pixels in the painted output. Hence empty pixels on the screen
>  when we really want the gradient to be filling the dest rect.
>  Changing the gradient painting code will break valid use cases. Changing
>  the tile size breaks things in a different way and doesn't really fix
>  the problem. So change the src rect computation to use snapped sizes
>  for generated content in an attempt to get a src that matches the tile
>  size.
>  Bug: 898950
>  Change-Id: I100575ad4f4fa3004fbc232a72c90b0032ccef4e
>  Reviewed-on:
>  WPT-Export-Revision: e7a3531cf053afee9de5efdcb11bd65d9ac4ac16
Component: web-platform-tests → Layout
Product: Testing → Core
Ran 1 tests
PASS   : 1
Pushed by
[wpt PR 14529] - Fix gradient background sizing, a=testonly
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.