Surface synchronization: ResizeDueToAutoResize => DidUpdateVisualProperties

This CL generalizes RenderWidgetHostViewBase::ResizeDueToAutoResize
to RenderWidgetHostViewBase::DidUpdateVisualProperties

Instead of just passing the new viz::LocalSurfaceId and viewport size,
we pass in the RenderFrameMetadata up the hierarchy. This is useful for
synchronizing text selection handles across OOPIFs (since we need to
transform text selection handles up the hierarchy) and top bar controls
in the general case:

https://docs.google.com/document/d/1CJf8_EQON3DY58JoHi6oTPV7iIIMBbNqB8CN6DPJd8s/edit#heading=h.mz47wray3bxa

This doc discusses how a new rootScroller feature may be added to the web platform
and this additional plumbing allows us to address this use case.

Change-Id: Iafd74ce470f563efa83fb17178676478b33cdea7
Reviewed-on: https://chromium-review.googlesource.com/1054610
Reviewed-by: Ken Buchanan <[email protected]>
Reviewed-by: Antoine Labour <[email protected]>
Commit-Queue: Fady Samuel <[email protected]>
Cr-Commit-Position: refs/heads/master@{#557919}
diff --git a/content/browser/browser_plugin/browser_plugin_guest.h b/content/browser/browser_plugin/browser_plugin_guest.h
index 8e7c82c..964137d 100644
--- a/content/browser/browser_plugin/browser_plugin_guest.h
+++ b/content/browser/browser_plugin/browser_plugin_guest.h
@@ -57,6 +57,10 @@
 class Range;
 }  // namespace gfx
 
+namespace cc {
+class RenderFrameMetadata;
+}  // namespace cc
+
 namespace viz {
 class LocalSurfaceId;
 class SurfaceInfo;
@@ -182,9 +186,7 @@
 
   void EnableAutoResize(const gfx::Size& min_size, const gfx::Size& max_size);
   void DisableAutoResize();
-  void ResizeDueToAutoResize(
-      const gfx::Size& new_size,
-      const viz::LocalSurfaceId& child_allocated_surface_id);
+  void DidUpdateVisualProperties(const cc::RenderFrameMetadata& metadata);
 
   // WebContentsObserver implementation.
   void DidFinishNavigation(NavigationHandle* navigation_handle) override;