commit | 2eed6201bd9ed2c65c7910402d32c036db257fb6 | [log] [tgz] |
---|---|---|
author | Stephen Chenney <schenney@chromium.org> | Sat Dec 15 04:08:07 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Sat Dec 15 04:08:07 2018 |
tree | b0a341927987ad3ea9d2af84752590f3a192e33b | |
parent | cefffdd1404635570ba93b9f5f722cddfb93184d [diff] |
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. R=fmalita@chromium.org Bug: 898950 Change-Id: I100575ad4f4fa3004fbc232a72c90b0032ccef4e Reviewed-on: https://chromium-review.googlesource.com/c/1376814 Commit-Queue: Stephen Chenney <schenney@chromium.org> Reviewed-by: Florin Malita <fmalita@chromium.org> Cr-Commit-Position: refs/heads/master@{#616944}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .