Impl thread smooth scrolling.

This is a first pass at smooth scrolling on the compositor thread.  It adds LayerTreeHostImpl::ScrollAnimated, which kicks off a scroll offset animation through the layer animation controller.

When the --enable-smooth-scrolling flag is present, InputHandlerProxy will call ScrollAnimated for composited wheel scrolls.

Once this is in the next steps are:

(1) Update the animation curve to aim at a new target when a wheel event comes in while a scroll animation is in progress.  (For now we just drop the event.)

(2) Unify the behavior with WebCore::ScrollAnimatorNone.  We should be able to share a lot of logic since cc::ScrollOffsetAnimationCurve is already exposed to Blink through compositor bindings (for http://crbug.com/243871).

BUG=575

Review URL: https://codereview.chromium.org/361143002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282205 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/cc/trees/layer_tree_host_impl.h b/cc/trees/layer_tree_host_impl.h
index 09449dd6..4528dc7 100644
--- a/cc/trees/layer_tree_host_impl.h
+++ b/cc/trees/layer_tree_host_impl.h
@@ -126,6 +126,9 @@
   virtual InputHandler::ScrollStatus ScrollBegin(
       const gfx::Point& viewport_point,
       InputHandler::ScrollInputType type) OVERRIDE;
+  virtual InputHandler::ScrollStatus ScrollAnimated(
+      const gfx::Point& viewport_point,
+      const gfx::Vector2dF& scroll_delta) OVERRIDE;
   virtual bool ScrollBy(const gfx::Point& viewport_point,
                         const gfx::Vector2dF& scroll_delta) OVERRIDE;
   virtual bool ScrollVerticallyByPage(const gfx::Point& viewport_point,