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

Side by Side Diff: android_webview/browser/hardware_renderer.cc

Issue 654403006: aw: Ensure invalidation when pipeline is stalled (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git/+/master
Patch Set: DidSkipCompositeInDraw Created 6 years, 2 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "android_webview/browser/hardware_renderer.h" 5 #include "android_webview/browser/hardware_renderer.h"
6 6
7 #include "android_webview/browser/aw_gl_surface.h" 7 #include "android_webview/browser/aw_gl_surface.h"
8 #include "android_webview/browser/deferred_gpu_command_service.h" 8 #include "android_webview/browser/deferred_gpu_command_service.h"
9 #include "android_webview/browser/parent_output_surface.h" 9 #include "android_webview/browser/parent_output_surface.h"
10 #include "android_webview/browser/shared_renderer_state.h" 10 #include "android_webview/browser/shared_renderer_state.h"
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 output_surface_->SetExternalStencilTest(stencil_enabled_); 137 output_surface_->SetExternalStencilTest(stencil_enabled_);
138 output_surface_->SetDrawConstraints(viewport_, clip_); 138 output_surface_->SetDrawConstraints(viewport_, clip_);
139 } 139 }
140 140
141 void HardwareRenderer::CommitFrame() { 141 void HardwareRenderer::CommitFrame() {
142 scroll_offset_ = shared_renderer_state_->GetScrollOffset(); 142 scroll_offset_ = shared_renderer_state_->GetScrollOffset();
143 if (committed_frame_.get()) { 143 if (committed_frame_.get()) {
144 TRACE_EVENT_INSTANT0("android_webview", 144 TRACE_EVENT_INSTANT0("android_webview",
145 "EarlyOut_PreviousFrameUnconsumed", 145 "EarlyOut_PreviousFrameUnconsumed",
146 TRACE_EVENT_SCOPE_THREAD); 146 TRACE_EVENT_SCOPE_THREAD);
147 shared_renderer_state_->DidSkipCommitFrame();
147 return; 148 return;
148 } 149 }
149 150
150 committed_frame_ = shared_renderer_state_->PassCompositorFrame(); 151 committed_frame_ = shared_renderer_state_->PassCompositorFrame();
151 // Happens with empty global visible rect. 152 // Happens with empty global visible rect.
152 if (!committed_frame_.get()) 153 if (!committed_frame_.get())
153 return; 154 return;
154 155
155 DCHECK(!committed_frame_->gl_frame_data); 156 DCHECK(!committed_frame_->gl_frame_data);
156 DCHECK(!committed_frame_->software_frame_data); 157 DCHECK(!committed_frame_->software_frame_data);
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 } 262 }
262 263
263 void HardwareRenderer::UnusedResourcesAreAvailable() { 264 void HardwareRenderer::UnusedResourcesAreAvailable() {
264 cc::ReturnedResourceArray returned_resources; 265 cc::ReturnedResourceArray returned_resources;
265 resource_collection_->TakeUnusedResourcesForChildCompositor( 266 resource_collection_->TakeUnusedResourcesForChildCompositor(
266 &returned_resources); 267 &returned_resources);
267 shared_renderer_state_->InsertReturnedResources(returned_resources); 268 shared_renderer_state_->InsertReturnedResources(returned_resources);
268 } 269 }
269 270
270 } // namespace android_webview 271 } // namespace android_webview
OLDNEW
« no previous file with comments | « android_webview/browser/browser_view_renderer_client.h ('k') | android_webview/browser/shared_renderer_state.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698