Index: cc/resources/resource_update_controller.cc |
diff --git a/cc/resources/resource_update_controller.cc b/cc/resources/resource_update_controller.cc |
index 59c536b0844b495712447d1ec17c31c627915b85..868133596bec362c2292a4af59097a2cf7d6ac22 100644 |
--- a/cc/resources/resource_update_controller.cc |
+++ b/cc/resources/resource_update_controller.cc |
@@ -32,11 +32,7 @@ size_t ResourceUpdateController::MaxPartialTextureUpdates() { |
size_t ResourceUpdateController::MaxFullUpdatesPerTick( |
ResourceProvider* resource_provider) { |
- double textures_per_second = resource_provider->EstimatedUploadsPerSecond(); |
- size_t textures_per_tick = |
- floor(resource_provider->TextureUpdateTickRate().InSecondsF() * |
- textures_per_second); |
- return textures_per_tick ? textures_per_tick : 1; |
+ return resource_provider->EstimatedUploadsPerTick(); |
} |
ResourceUpdateController::ResourceUpdateController( |
@@ -113,12 +109,9 @@ void ResourceUpdateController::OnTimerFired() { |
client_->ReadyToFinalizeTextureUpdates(); |
} |
-base::TimeTicks ResourceUpdateController::Now() const { |
- return gfx::FrameTime::Now(); |
-} |
- |
-base::TimeDelta ResourceUpdateController::UpdateMoreTexturesTime() const { |
- return resource_provider_->TextureUpdateTickRate(); |
+base::TimeTicks ResourceUpdateController::UpdateMoreTexturesCompletionTime() { |
+ return resource_provider_->EstimatedUploadCompletionTime( |
+ texture_updates_per_tick_); |
} |
size_t ResourceUpdateController::UpdateMoreTexturesSize() const { |
@@ -129,25 +122,14 @@ size_t ResourceUpdateController::MaxBlockingUpdates() const { |
return UpdateMoreTexturesSize() * kMaxBlockingUpdateIntervals; |
} |
-base::TimeDelta ResourceUpdateController::PendingUpdateTime() const { |
- base::TimeDelta update_one_resource_time = |
- UpdateMoreTexturesTime() / UpdateMoreTexturesSize(); |
- return update_one_resource_time * resource_provider_->NumBlockingUploads(); |
-} |
- |
bool ResourceUpdateController::UpdateMoreTexturesIfEnoughTimeRemaining() { |
while (resource_provider_->NumBlockingUploads() < MaxBlockingUpdates()) { |
if (!queue_->FullUploadSize()) |
return false; |
if (!time_limit_.is_null()) { |
- // Estimated completion time of all pending updates. |
- base::TimeTicks completion_time = Now() + PendingUpdateTime(); |
- |
- // Time remaining based on current completion estimate. |
- base::TimeDelta time_remaining = time_limit_ - completion_time; |
- |
- if (time_remaining < UpdateMoreTexturesTime()) |
+ base::TimeTicks completion_time = UpdateMoreTexturesCompletionTime(); |
+ if (completion_time > time_limit_) |
return true; |
} |