cc: Don't require low res to activate for shared ready-to-draw tiles.
commitbc80fa3586c3a379c367972e22b97304632641b8
authordanakj <danakj@chromium.org>
Thu, 4 Sep 2014 05:02:17 +0000 (3 22:02 -0700)
committerCommit bot <commit-bot@chromium.org>
Thu, 4 Sep 2014 05:06:27 +0000 (4 05:06 +0000)
tree3d9abdfd9be108991260f13bdb1207cba39254b2
parent2d514327ee39f1fecc5a993a7884bcb2b58dea0c
cc: Don't require low res to activate for shared ready-to-draw tiles.

When a tile is shared (no invalidation) and is being drawn on the
active tree (ready-to-draw), then that tile is not marked as required
for activation since activating it can't cause a bad-resolution flash.

However, we also would also say that "twin_had_missing_tile" in this
scenario, which causes us to mark low-res tilings as required. But
this is a bug since the tile is not missing in this case, and we do
not need low res to fill it in.

Instead, check to see if the active tree's tile is /not/ ready-to-draw.
When that is the case, the active tile is not being drawn and is
actually missing. Then a low res tile should be required if the
active tree is showing a low res tile in the same place.

For perf tests without scrolling (ie pages that just update in place
without input), this fixes us to never require low res tiles to
activate, since we won't show them.

R=enne, vmpstr
BUG=407121

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

Cr-Commit-Position: refs/heads/master@{#293262}
cc/layers/picture_layer_impl.cc
cc/layers/picture_layer_impl_unittest.cc
cc/test/fake_picture_layer_impl.cc
cc/test/fake_picture_layer_impl.h