Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(638)

Unified Diff: cc/resources/picture_layer_tiling.cc

Issue 1130123003: cc: Separate the priority from the tile and put in new PrioritizedTile (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: merge Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/resources/picture_layer_tiling.h ('k') | cc/resources/picture_layer_tiling_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/picture_layer_tiling.cc
diff --git a/cc/resources/picture_layer_tiling.cc b/cc/resources/picture_layer_tiling.cc
index 21c1417e5b4fd891e7e16df8dd23fa87ed63fdda..de2cb4a19f1cca0e9587f3943e83c2d837072fe7 100644
--- a/cc/resources/picture_layer_tiling.cc
+++ b/cc/resources/picture_layer_tiling.cc
@@ -13,6 +13,7 @@
#include "base/trace_event/trace_event.h"
#include "base/trace_event/trace_event_argument.h"
#include "cc/base/math_util.h"
+#include "cc/resources/prioritized_tile.h"
#include "cc/resources/tile.h"
#include "cc/resources/tile_priority.h"
#include "ui/gfx/geometry/point_conversions.h"
@@ -810,13 +811,30 @@ bool PictureLayerTiling::IsTileRequiredForDraw(const Tile* tile) const {
return true;
}
-void PictureLayerTiling::UpdateTilePriority(Tile* tile) const {
- tile->set_priority(ComputePriorityForTile(tile));
- tile->set_is_occluded(IsTileOccluded(tile));
+void PictureLayerTiling::UpdateRequiredStatesOnTile(Tile* tile) const {
+ DCHECK(tile);
tile->set_required_for_activation(IsTileRequiredForActivation(tile));
tile->set_required_for_draw(IsTileRequiredForDraw(tile));
}
+PrioritizedTile PictureLayerTiling::MakePrioritizedTile(Tile* tile) const {
+ DCHECK(tile);
+ return PrioritizedTile(tile, ComputePriorityForTile(tile),
+ IsTileOccluded(tile));
+}
+
+std::map<const Tile*, PrioritizedTile>
+PictureLayerTiling::UpdateAndGetAllPrioritizedTilesForTesting() {
+ std::map<const Tile*, PrioritizedTile> result;
+ for (const auto& key_tile_pair : tiles_) {
+ UpdateRequiredStatesOnTile(key_tile_pair.second);
+ PrioritizedTile prioritized_tile =
+ MakePrioritizedTile(key_tile_pair.second);
+ result.insert(std::make_pair(prioritized_tile.tile(), prioritized_tile));
+ }
+ return result;
+}
+
void PictureLayerTiling::VerifyAllTilesHaveCurrentRasterSource() const {
#if DCHECK_IS_ON()
for (const auto& tile_pair : tiles_)
« no previous file with comments | « cc/resources/picture_layer_tiling.h ('k') | cc/resources/picture_layer_tiling_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698