cc: Remove nonsensical minimum source scale
commitab03a1db96e35fc3d0619b1ba5830bfdfcd31c5b
authorenne <enne@chromium.org>
Mon, 29 Jun 2015 22:55:31 +0000 (29 15:55 -0700)
committerCommit bot <commit-bot@chromium.org>
Mon, 29 Jun 2015 22:56:09 +0000 (29 22:56 +0000)
treed3123f2fd0f349665e153688fc1d9fba2338931f
parentb45192d3bd4592b3703dd8a025d238688ba162cd
cc: Remove nonsensical minimum source scale

Previously, minimum source scale was calculated in such a way that if
there was a small minimum page scale, the minimum source scale would be
huge.  Since the ideal source scale (i.e. contents / device / page)
would be a reasonable number, clamping to that "minimum" would make it
grow very large.  Then, when raster sources change from Javascript,
forcing PictureLayerImpl to "fix" the scale in place, the contents scale
would be divided by this huge source scale, causing a very small fixed
contents scale.  OOPS.

The real minimum scale is the contents scale minimum, and the rest of
the code in PictureLayerImpl is set up to clamp to that minimum.  Just
use that and don't try to calculate a nonsensical minimum source scale.

If the ideal contents scale *and* the ideal page scale are both very
small, then the raster source will be clamped to the
MinimumContentsScale anyway.

This managed to not get hit in tests, because PictureLayerImpl unit
tests set minimum page scale to very reasonable values (0.25) and then
proceed to clobber draw properties directly.  This lets them ignore page
scale clamping that would have happened had smaller page scales been set
directly on the tree while avoiding this bug.

R=danakj@chromium.org,vmpstr@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1211163003

Cr-Commit-Position: refs/heads/master@{#336671}
cc/layers/picture_layer_impl.cc
cc/layers/picture_layer_impl_unittest.cc