Descriptioncc: Mirror LiveTilesRect and tiles between active and recycled trees.
When the live tiles rect changes on the active tiling, we also remove
tiles on the recycled tiling to avoid unshared tiles in the recycle
tree. But when a tile is created on the active tree, we should also
share the tile to the recycle tree. Since we're creating tiles, we
also need to update the live tiles rect so tiles do not exist outside
of it. So now the live tiles rect is simply updated on both trees at
once.
This ensures that on the next commit, if the picture layer did not
get any invalidations, and doesn't push properties, it still has all
the tiles in its live tiles rect so we can do ready-to-activate checks
correctly.
Secondly, when activating, if any tiles were present on the pending
tree but are not on the active tree (can happen due to missing
recordings on the active tree), then share those tiles to the active
tree during activation.
This patch fixes DCHECKs occuring in PictureLayerTiling's
CloneTilesAndPropertiesFrom() where the pending and active tiling were
not ending up with the same number of tiles.
R=enne, vmpstr
BUG=387116
Committed: https://crrev.com/bd6d7bc43094d50c0ce3d785aa270b49efb5959a
Cr-Commit-Position: refs/heads/master@{#308174}
Patch Set 1 #Patch Set 2 : noswap-ltr: . #Patch Set 3 : noswap-ltr: . #
Total comments: 3
Patch Set 4 : noswap-ltr: withtestforclone #Patch Set 5 : noswap-ltr: . #Patch Set 6 : noswap-ltr: mirror live tiles rect #
Total comments: 2
Patch Set 7 : noswap-ltr: withcheck #
Total comments: 7
Messages
Total messages: 25 (1 generated)
|