Throttle Pinch-Zoom Re-Rastering in OOPIFs

This CL implements pinch-zoom re-raster throttling for OOPIFs by making
OOPIF compositors aware of when the main-frame is active in a pinch
zoom gesture.

It achieves this by receiving |is_pinch_gesture_active| via the
FrameVisualProperties sent to the FrameConnectorDelegate and appending
it to the VisualProperties synced from the browser process to subframes.
Then is is plumbed into the compositor along the same route as
|external_page_scale_factor|.

An existing test for propagation of PageScaleFactor to subframes has
been enhanced to verify the value propagates from mainframe to
subframe, and from subframe to sub-subframe. Another test verifies
the flag makes it into the compositor when VisualProperties are synced
to the RenderWidget.

Bug: 924336
Change-Id: Ie6ed3be5e2a6c2e7fcfa2eb25a2ae40e2421fc99
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1483734
Commit-Queue: James MacLean <wjmaclean@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#648489}
21 files changed