 +
  }  // namespace content
 diff --git a/content/browser/frame_host/render_widget_host_view_child_frame.h b/content/browser/frame_host/render_widget_host_view_child_frame.h
-index 87e2de41..9f4115e 100644
+index 87e2de41..36edc3a 100644
 --- a/content/browser/frame_host/render_widget_host_view_child_frame.h
 +++ b/content/browser/frame_host/render_widget_host_view_child_frame.h
-@@ -178,6 +178,12 @@ class CONTENT_EXPORT RenderWidgetHostViewChildFrame
-   void RegisterFrameSinkId();
-   void UnregisterFrameSinkId();
- 
-+  void WillDrawSurface(const cc::LocalFrameId& local_frame_id,
+@@ -157,8 +157,11 @@ class CONTENT_EXPORT RenderWidgetHostViewChildFrame
+   void DidReceiveCompositorFrameAck() override;
+   void OnBeginFrame(const cc::BeginFrameArgs& args) override;
+   void ReclaimResources(const cc::ReturnedResourceArray& resources) override;
+-  void WillDrawSurface(const cc::LocalSurfaceId& id,
+-                       const gfx::Rect& damage_rect) override {}
++  void WillDrawSurface(const cc::LocalSurfaceId& local_surface_id,
 +                       const gfx::Rect& damage_rect) override;
 +  void BeginFrameSubscription(
 +      std::unique_ptr<RenderWidgetHostViewFrameSubscriber> subscriber) override;
 +  void EndFrameSubscription() override;
-+
-   void UpdateViewportIntersection(const gfx::Rect& viewport_intersection);
  
-  protected:
-@@ -250,6 +256,8 @@ class CONTENT_EXPORT RenderWidgetHostViewChildFrame
+   // Exposed for tests.
+   bool IsChildFrameForTesting() const override;
+@@ -250,6 +253,8 @@ class CONTENT_EXPORT RenderWidgetHostViewChildFrame
    // The surface client ID of the parent RenderWidgetHostView.  0 if none.
    cc::FrameSinkId parent_frame_sink_id_;
  

 }
 
+void RenderWidgetHostViewChildFrame::WillDrawSurface(
+    const cc::LocalFrameId& local_frame_id,
+    const gfx::Rect& damage_rect) {
+  if (local_frame_id != local_frame_id_ ||
+      damage_rect.IsEmpty() ||
+      !frame_subscriber_.get())
+    return;

diff --git a/content/browser/frame_host/render_widget_host_view_child_frame.cc b/content/browser/frame_host/render_widget_host_view_child_frame.cc
index fb68c4c..89abf5a 100644
--- a/content/browser/frame_host/render_widget_host_view_child_frame.cc
+++ b/content/browser/frame_host/render_widget_host_view_child_frame.cc
@@ -31,7 +31,9 @@
