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

Unified Diff: android_webview/browser/hardware_renderer.cc

Issue 2755463002: [cc] Fix CompositorFrameSinkSupport BeginFrameAck interface. (Closed)
Patch Set: pass on acks to MojoCFSs in clients. Created 3 years, 9 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
Index: android_webview/browser/hardware_renderer.cc
diff --git a/android_webview/browser/hardware_renderer.cc b/android_webview/browser/hardware_renderer.cc
index b4cc30fe769a9390e190ba1a674b6aa5acc8618f..8526fe084c355c892106ccfedbb3344c24998c39 100644
--- a/android_webview/browser/hardware_renderer.cc
+++ b/android_webview/browser/hardware_renderer.cc
@@ -167,7 +167,13 @@ void HardwareRenderer::DestroySurface() {
DCHECK(child_id_.is_valid());
// Submit an empty frame to force any existing resources to be returned.
- support_->SubmitCompositorFrame(child_id_, cc::CompositorFrame());
+ cc::CompositorFrame frame;
+ // We submit without a prior BeginFrame, so acknowledge a manual BeginFrame.
+ frame.metadata.begin_frame_ack =
+ cc::BeginFrameAck(cc::BeginFrameArgs::kManualSourceId,
+ cc::BeginFrameArgs::kStartingFrameNumber,
+ cc::BeginFrameArgs::kStartingFrameNumber, 0, true);
piman 2017/03/17 18:12:01 nit: this is used in many places, maybe a static c
Eric Seckler 2017/03/20 11:54:03 Done.
+ support_->SubmitCompositorFrame(child_id_, std::move(frame));
surfaces_->RemoveChildId(cc::SurfaceId(frame_sink_id_, child_id_));
support_->EvictFrame();
child_id_ = cc::LocalSurfaceId();
« no previous file with comments | « no previous file | android_webview/browser/surfaces_instance.cc » ('j') | cc/surfaces/compositor_frame_sink_support.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698