Introduce bottom controls to CC and let it respond to scrolling

This CL introduces bottom controls to compositor. Once the height of the
bottom controls is specified, a resize signal will be sent to cc and
renderer with a shortened view port height. Upon user scrolling, the
height of the bottom bar is computed by applying the shown ratio of the
top controls to the bottom controls. Since bottom control is less
sensitive, it will react to scrolling even if top controls is
constrained. Also please note that the shrinking and expanding of the
bottom area do not need to be pixel perfect, as such perfection cannot
be observed by human vision.

TODOs:
1. Implement main thread scrolling, like what we did for top controls.
2. Investigate to conduct standalone scrolling animation if the top
controls is totally absent.

BUG=581227
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2106753004
Cr-Commit-Position: refs/heads/master@{#412738}
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 4d5146f..cb2afbc 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -1020,8 +1020,10 @@
   if (!webwidget_)
     return;
 
-  if (compositor_)
+  if (compositor_) {
     compositor_->setViewportSize(params.physical_backing_size);
+    compositor_->setBottomControlsHeight(params.bottom_controls_height);
+  }
 
   visible_viewport_size_ = params.visible_viewport_size;
   resizer_rect_ = params.resizer_rect;