4 Commits

Author SHA1 Message Date
Chinmay Garde
0b8efb62a6 Make flow::LayerBuilder virtual and plug in the default layer builder. (#4199) 2017-10-11 16:26:18 -07:00
George Kulakowski
3aa7522c11 Rename ftl to fxl in Fuchsia specific code (#4090) 2017-09-11 15:58:48 -07:00
Chinmay Garde
015e8cf521 Ensure that the source rect used for the the raster cache replacement is the same as the size of the N32Premul surface. (#3889)
Also adds debug printers for SkRect and SkPoint.
2017-07-17 23:42:40 -07:00
Chinmay Garde
1c6a531e89 Rework raster cache to fix numerous issues. (#3717)
* Fix pixel rounding error in the picture layer by first ensuring that
  the texture for the image is at least as big as the next integer size
  along each dimension and using kStrict_SrcRectConstraint while
  drawing the same image. We already select the source subset by
  looking at the cull rect of the picture.
* Decompose the transformation matrix into a series of operations that
  generated the same to calculate the scale at which to rasterize the
  picture. This make the rasterization scale resilient to
  transformations that introduce a perspective component to the
  resultant matrix.
* The scale in the decomposed matrix is now part of the key in the
  cache.
* Raster cache images that could never be rasterized were still taking
  part in the cache. Now, those entries are rejected early on. This
  leads to the sweep after the frame iterating over fewer items.
* Added a unit test target.
2017-06-05 15:57:05 -07:00