| Index: cc/trees/layer_tree_host_impl.cc
|
| diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
|
| index dd075482c3ebf79a6699b03b48c13c6dd13a685d..050c8e23b323b677c3ac65e87dd576c68b4d8345 100644
|
| --- a/cc/trees/layer_tree_host_impl.cc
|
| +++ b/cc/trees/layer_tree_host_impl.cc
|
| @@ -240,7 +240,8 @@ LayerTreeHostImpl::LayerTreeHostImpl(
|
| id_(id),
|
| requires_high_res_to_draw_(false),
|
| is_likely_to_require_a_draw_(false),
|
| - mutator_(nullptr) {
|
| + mutator_(nullptr),
|
| + captured_scrollbar_layer_id_(Layer::INVALID_ID) {
|
| DCHECK(animation_host_);
|
| animation_host_->SetMutatorHostClient(this);
|
|
|
| @@ -3273,6 +3274,27 @@ float LayerTreeHostImpl::DeviceSpaceDistanceToLayer(
|
| device_viewport_point);
|
| }
|
|
|
| +void LayerTreeHostImpl::MouseDownAt(const gfx::Point& viewport_point) {
|
| + if (scroll_layer_id_when_mouse_over_scrollbar_ != Layer::INVALID_ID) {
|
| + captured_scrollbar_layer_id_ = scroll_layer_id_when_mouse_over_scrollbar_;
|
| + ScrollbarAnimationController* animation_controller =
|
| + ScrollbarAnimationControllerForId(captured_scrollbar_layer_id_);
|
| + if (animation_controller)
|
| + animation_controller->DidCaptureScrollbarBegin();
|
| + }
|
| +}
|
| +
|
| +void LayerTreeHostImpl::MouseUp() {
|
| + if (captured_scrollbar_layer_id_ != Layer::INVALID_ID) {
|
| + ScrollbarAnimationController* animation_controller =
|
| + ScrollbarAnimationControllerForId(captured_scrollbar_layer_id_);
|
| + if (animation_controller)
|
| + animation_controller->DidCaptureScrollbarEnd();
|
| +
|
| + captured_scrollbar_layer_id_ = Layer::INVALID_ID;
|
| + }
|
| +}
|
| +
|
| void LayerTreeHostImpl::MouseMoveAt(const gfx::Point& viewport_point) {
|
| gfx::PointF device_viewport_point = gfx::ScalePoint(
|
| gfx::PointF(viewport_point), active_tree_->device_scale_factor());
|
|
|