Implement OOPIF double-tap-zoom.

This CL adds the required pathways to support double-tap-zoom for OOPIF.

1) Modifies WebFrameWidgetImpl to get the box_bounds of the double-
   tapped element, and
2) sends the tapped point and box_bounds to the browser, where
3) RenderFrameHostImpl transforms them into root-view coordinates, and
4) sends them to the renderer via the main-frame's RenderViewHostImpl.
5) From there RenderViewImpl invokes WebViewImpl's
   AnimateDoubleTapZoom.

Bug: 734209
Change-Id: Ic55afb6154356d676872ced93f64a243190cf289
Reviewed-on: https://chromium-review.googlesource.com/c/1298081
Reviewed-by: Daniel Cheng <[email protected]>
Reviewed-by: Ken Buchanan <[email protected]>
Reviewed-by: David Bokan <[email protected]>
Commit-Queue: James MacLean <[email protected]>
Cr-Commit-Position: refs/heads/master@{#612371}
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 68f6d85..213908b 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -3049,6 +3049,15 @@
     input_event_queue_->SetNeedsLowLatency(needs_low_latency);
 }
 
+void RenderWidget::AnimateDoubleTapZoomInMainFrame(
+    const blink::WebPoint& point,
+    const blink::WebRect& rect_to_zoom) {
+  // Only oopif subframes should be sending this message.
+  DCHECK(!owner_delegate_);
+  Send(new WidgetHostMsg_AnimateDoubleTapZoomInMainFrame(routing_id(), point,
+                                                         rect_to_zoom));
+}
+
 void RenderWidget::RequestUnbufferedInputEvents() {
   if (input_event_queue_)
     input_event_queue_->RequestUnbufferedInputEvents();