Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(611)

Side by Side Diff: cc/trees/layer_tree_host_impl.cc

Issue 2816063003: Replace layer id with Element id for tracking scrollbar animation controllers (Closed)
Patch Set: Fix flaky LayerTreeHostImplTestScrollbarOpacity.Android Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> 10 #include <algorithm>
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after
199 need_update_gpu_rasterization_status_(false), 199 need_update_gpu_rasterization_status_(false),
200 content_is_suitable_for_gpu_rasterization_(true), 200 content_is_suitable_for_gpu_rasterization_(true),
201 has_gpu_rasterization_trigger_(false), 201 has_gpu_rasterization_trigger_(false),
202 use_gpu_rasterization_(false), 202 use_gpu_rasterization_(false),
203 use_msaa_(false), 203 use_msaa_(false),
204 gpu_rasterization_status_(GpuRasterizationStatus::OFF_DEVICE), 204 gpu_rasterization_status_(GpuRasterizationStatus::OFF_DEVICE),
205 input_handler_client_(NULL), 205 input_handler_client_(NULL),
206 did_lock_scrolling_layer_(false), 206 did_lock_scrolling_layer_(false),
207 wheel_scrolling_(false), 207 wheel_scrolling_(false),
208 scroll_affects_scroll_handler_(false), 208 scroll_affects_scroll_handler_(false),
209 scroll_layer_id_mouse_currently_over_(Layer::INVALID_ID),
210 scroll_layer_id_mouse_currently_captured_(Layer::INVALID_ID),
211 tile_priorities_dirty_(false), 209 tile_priorities_dirty_(false),
212 settings_(settings), 210 settings_(settings),
213 visible_(false), 211 visible_(false),
214 cached_managed_memory_policy_(settings.gpu_memory_policy), 212 cached_managed_memory_policy_(settings.gpu_memory_policy),
215 is_synchronous_single_threaded_(!task_runner_provider->HasImplThread() && 213 is_synchronous_single_threaded_(!task_runner_provider->HasImplThread() &&
216 !settings.single_thread_proxy_scheduler), 214 !settings.single_thread_proxy_scheduler),
217 // Must be initialized after is_synchronous_single_threaded_ and 215 // Must be initialized after is_synchronous_single_threaded_ and
218 // task_runner_provider_. 216 // task_runner_provider_.
219 tile_manager_(this, 217 tile_manager_(this,
220 GetTaskRunner(), 218 GetTaskRunner(),
(...skipping 2727 matching lines...) Expand 10 before | Expand all | Expand 10 after
2948 base::TimeDelta delayed_by) { 2946 base::TimeDelta delayed_by) {
2949 InputHandler::ScrollStatus scroll_status; 2947 InputHandler::ScrollStatus scroll_status;
2950 scroll_status.main_thread_scrolling_reasons = 2948 scroll_status.main_thread_scrolling_reasons =
2951 MainThreadScrollingReason::kNotScrollingOnMain; 2949 MainThreadScrollingReason::kNotScrollingOnMain;
2952 ScrollTree& scroll_tree = active_tree_->property_trees()->scroll_tree; 2950 ScrollTree& scroll_tree = active_tree_->property_trees()->scroll_tree;
2953 ScrollNode* scroll_node = scroll_tree.CurrentlyScrollingNode(); 2951 ScrollNode* scroll_node = scroll_tree.CurrentlyScrollingNode();
2954 2952
2955 if (scroll_node) { 2953 if (scroll_node) {
2956 // Flash the overlay scrollbar even if the scroll dalta is 0. 2954 // Flash the overlay scrollbar even if the scroll dalta is 0.
2957 ScrollbarAnimationController* animation_controller = 2955 ScrollbarAnimationController* animation_controller =
2958 ScrollbarAnimationControllerForId(scroll_node->owning_layer_id); 2956 ScrollbarAnimationControllerForId(scroll_node->element_id);
2959 2957
2960 if (animation_controller) 2958 if (animation_controller)
2961 animation_controller->WillUpdateScroll(); 2959 animation_controller->WillUpdateScroll();
2962 2960
2963 gfx::Vector2dF delta = scroll_delta; 2961 gfx::Vector2dF delta = scroll_delta;
2964 if (!scroll_node->user_scrollable_horizontal) 2962 if (!scroll_node->user_scrollable_horizontal)
2965 delta.set_x(0); 2963 delta.set_x(0);
2966 if (!scroll_node->user_scrollable_vertical) 2964 if (!scroll_node->user_scrollable_vertical)
2967 delta.set_y(0); 2965 delta.set_y(0);
2968 2966
(...skipping 30 matching lines...) Expand all
2999 scroll_node->id != scroll_animating_latched_node_id_) { 2997 scroll_node->id != scroll_animating_latched_node_id_) {
3000 continue; 2998 continue;
3001 } 2999 }
3002 3000
3003 bool scrolls_main_viewport_scroll_layer = 3001 bool scrolls_main_viewport_scroll_layer =
3004 viewport()->MainScrollLayer() && 3002 viewport()->MainScrollLayer() &&
3005 viewport()->MainScrollLayer()->scroll_tree_index() == scroll_node->id; 3003 viewport()->MainScrollLayer()->scroll_tree_index() == scroll_node->id;
3006 if (scrolls_main_viewport_scroll_layer) { 3004 if (scrolls_main_viewport_scroll_layer) {
3007 // Flash the overlay scrollbar even if the scroll dalta is 0. 3005 // Flash the overlay scrollbar even if the scroll dalta is 0.
3008 ScrollbarAnimationController* animation_controller = 3006 ScrollbarAnimationController* animation_controller =
3009 ScrollbarAnimationControllerForId(scroll_node->owning_layer_id); 3007 ScrollbarAnimationControllerForId(scroll_node->element_id);
3010 3008
3011 if (animation_controller) 3009 if (animation_controller)
3012 animation_controller->WillUpdateScroll(); 3010 animation_controller->WillUpdateScroll();
3013 3011
3014 gfx::Vector2dF scrolled = 3012 gfx::Vector2dF scrolled =
3015 viewport()->ScrollAnimated(pending_delta, delayed_by); 3013 viewport()->ScrollAnimated(pending_delta, delayed_by);
3016 // Viewport::ScrollAnimated returns pending_delta as long as it starts 3014 // Viewport::ScrollAnimated returns pending_delta as long as it starts
3017 // an animation. 3015 // an animation.
3018 if (scrolled == pending_delta) { 3016 if (scrolled == pending_delta) {
3019 scroll_animating_latched_node_id_ = scroll_node->id; 3017 scroll_animating_latched_node_id_ = scroll_node->id;
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
3259 DCHECK(scroll_state); 3257 DCHECK(scroll_state);
3260 3258
3261 TRACE_EVENT0("cc", "LayerTreeHostImpl::ScrollBy"); 3259 TRACE_EVENT0("cc", "LayerTreeHostImpl::ScrollBy");
3262 ScrollTree& scroll_tree = active_tree_->property_trees()->scroll_tree; 3260 ScrollTree& scroll_tree = active_tree_->property_trees()->scroll_tree;
3263 ScrollNode* scroll_node = scroll_tree.CurrentlyScrollingNode(); 3261 ScrollNode* scroll_node = scroll_tree.CurrentlyScrollingNode();
3264 3262
3265 if (!scroll_node) 3263 if (!scroll_node)
3266 return InputHandlerScrollResult(); 3264 return InputHandlerScrollResult();
3267 3265
3268 ScrollbarAnimationController* animation_controller = 3266 ScrollbarAnimationController* animation_controller =
3269 ScrollbarAnimationControllerForId(scroll_node->owning_layer_id); 3267 ScrollbarAnimationControllerForId(scroll_node->element_id);
3270 3268
3271 if (animation_controller) 3269 if (animation_controller)
3272 animation_controller->WillUpdateScroll(); 3270 animation_controller->WillUpdateScroll();
3273 3271
3274 float initial_top_controls_offset = 3272 float initial_top_controls_offset =
3275 browser_controls_offset_manager_->ControlsTopOffset(); 3273 browser_controls_offset_manager_->ControlsTopOffset();
3276 3274
3277 scroll_state->set_delta_consumed_for_scroll_sequence( 3275 scroll_state->set_delta_consumed_for_scroll_sequence(
3278 did_lock_scrolling_layer_); 3276 did_lock_scrolling_layer_);
3279 scroll_state->set_is_direct_manipulation(!wheel_scrolling_); 3277 scroll_state->set_is_direct_manipulation(!wheel_scrolling_);
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
3399 3397
3400 gfx::RectF device_viewport_layer_impl_bounds = MathUtil::MapClippedRect( 3398 gfx::RectF device_viewport_layer_impl_bounds = MathUtil::MapClippedRect(
3401 layer_impl->ScreenSpaceTransform(), gfx::RectF(layer_impl_bounds)); 3399 layer_impl->ScreenSpaceTransform(), gfx::RectF(layer_impl_bounds));
3402 3400
3403 return device_viewport_layer_impl_bounds.ManhattanDistanceToPoint( 3401 return device_viewport_layer_impl_bounds.ManhattanDistanceToPoint(
3404 device_viewport_point); 3402 device_viewport_point);
3405 } 3403 }
3406 3404
3407 void LayerTreeHostImpl::MouseDown() { 3405 void LayerTreeHostImpl::MouseDown() {
3408 ScrollbarAnimationController* animation_controller = 3406 ScrollbarAnimationController* animation_controller =
3409 ScrollbarAnimationControllerForId(scroll_layer_id_mouse_currently_over_); 3407 ScrollbarAnimationControllerForId(
3408 scroll_element_id_mouse_currently_over_);
3410 if (animation_controller) { 3409 if (animation_controller) {
3411 animation_controller->DidMouseDown(); 3410 animation_controller->DidMouseDown();
3412 scroll_layer_id_mouse_currently_captured_ = 3411 scroll_element_id_mouse_currently_captured_ =
3413 scroll_layer_id_mouse_currently_over_; 3412 scroll_element_id_mouse_currently_over_;
3414 } 3413 }
3415 } 3414 }
3416 3415
3417 void LayerTreeHostImpl::MouseUp() { 3416 void LayerTreeHostImpl::MouseUp() {
3418 if (scroll_layer_id_mouse_currently_captured_ != Layer::INVALID_ID) { 3417 if (scroll_element_id_mouse_currently_captured_) {
3419 ScrollbarAnimationController* animation_controller = 3418 ScrollbarAnimationController* animation_controller =
3420 ScrollbarAnimationControllerForId( 3419 ScrollbarAnimationControllerForId(
3421 scroll_layer_id_mouse_currently_captured_); 3420 scroll_element_id_mouse_currently_captured_);
3422 3421
3423 scroll_layer_id_mouse_currently_captured_ = Layer::INVALID_ID; 3422 scroll_element_id_mouse_currently_captured_ = ElementId();
3424 3423
3425 if (animation_controller) 3424 if (animation_controller)
3426 animation_controller->DidMouseUp(); 3425 animation_controller->DidMouseUp();
3427 } 3426 }
3428 } 3427 }
3429 3428
3430 void LayerTreeHostImpl::MouseMoveAt(const gfx::Point& viewport_point) { 3429 void LayerTreeHostImpl::MouseMoveAt(const gfx::Point& viewport_point) {
3431 gfx::PointF device_viewport_point = gfx::ScalePoint( 3430 gfx::PointF device_viewport_point = gfx::ScalePoint(
3432 gfx::PointF(viewport_point), active_tree_->device_scale_factor()); 3431 gfx::PointF(viewport_point), active_tree_->device_scale_factor());
3433 LayerImpl* layer_impl = 3432 LayerImpl* layer_impl =
3434 active_tree_->FindLayerThatIsHitByPoint(device_viewport_point); 3433 active_tree_->FindLayerThatIsHitByPoint(device_viewport_point);
3435 3434
3436 // Check if mouse is over a scrollbar or not. 3435 // Check if mouse is over a scrollbar or not.
3437 // TODO(sahel): get rid of this extera checking when 3436 // TODO(sahel): get rid of this extera checking when
3438 // FindScrollLayerForDeviceViewportPoint finds the proper layer for 3437 // FindScrollLayerForDeviceViewportPoint finds the proper layer for
3439 // scrolling on main thread when mouse is over scrollbar as well. 3438 // scrolling on main thread when mouse is over scrollbar as well.
3440 int new_id = Layer::INVALID_ID; 3439 ElementId new_element_id;
3441 if (layer_impl && layer_impl->ToScrollbarLayer()) 3440 if (layer_impl && layer_impl->ToScrollbarLayer())
3442 new_id = layer_impl->ToScrollbarLayer()->ScrollLayerId(); 3441 new_element_id = layer_impl->ToScrollbarLayer()->ScrollElementId();
3443 if (new_id == Layer::INVALID_ID) { 3442 if (!new_element_id) {
3444 bool scroll_on_main_thread = false; 3443 bool scroll_on_main_thread = false;
3445 uint32_t main_thread_scrolling_reasons; 3444 uint32_t main_thread_scrolling_reasons;
3446 LayerImpl* scroll_layer_impl = FindScrollLayerForDeviceViewportPoint( 3445 LayerImpl* scroll_layer_impl = FindScrollLayerForDeviceViewportPoint(
3447 device_viewport_point, InputHandler::TOUCHSCREEN, layer_impl, 3446 device_viewport_point, InputHandler::TOUCHSCREEN, layer_impl,
3448 &scroll_on_main_thread, &main_thread_scrolling_reasons); 3447 &scroll_on_main_thread, &main_thread_scrolling_reasons);
3449 3448
3450 // Scrollbars for the viewport are registered with the outer viewport layer. 3449 // Scrollbars for the viewport are registered with the outer viewport layer.
3451 if (scroll_layer_impl == InnerViewportScrollLayer()) 3450 if (scroll_layer_impl == InnerViewportScrollLayer())
3452 scroll_layer_impl = OuterViewportScrollLayer(); 3451 scroll_layer_impl = OuterViewportScrollLayer();
3453 3452
3454 new_id = scroll_layer_impl ? scroll_layer_impl->id() : Layer::INVALID_ID; 3453 if (scroll_layer_impl)
3454 new_element_id = scroll_layer_impl->element_id();
3455 } 3455 }
3456 3456
3457 if (new_id != scroll_layer_id_mouse_currently_over_) { 3457 if (new_element_id != scroll_element_id_mouse_currently_over_) {
3458 ScrollbarAnimationController* old_animation_controller = 3458 ScrollbarAnimationController* old_animation_controller =
3459 ScrollbarAnimationControllerForId( 3459 ScrollbarAnimationControllerForId(
3460 scroll_layer_id_mouse_currently_over_); 3460 scroll_element_id_mouse_currently_over_);
3461 if (old_animation_controller) { 3461 if (old_animation_controller) {
3462 old_animation_controller->DidMouseLeave(); 3462 old_animation_controller->DidMouseLeave();
3463 } 3463 }
3464 scroll_layer_id_mouse_currently_over_ = new_id; 3464 scroll_element_id_mouse_currently_over_ = new_element_id;
3465 } 3465 }
3466 3466
3467 ScrollbarAnimationController* new_animation_controller = 3467 ScrollbarAnimationController* new_animation_controller =
3468 ScrollbarAnimationControllerForId(new_id); 3468 ScrollbarAnimationControllerForId(new_element_id);
3469 if (!new_animation_controller) 3469 if (!new_animation_controller)
3470 return; 3470 return;
3471 3471
3472 for (ScrollbarLayerImplBase* scrollbar : ScrollbarsFor(new_id)) { 3472 int new_layer_id = active_tree_->LayerIdByElementId(new_element_id);
3473 for (ScrollbarLayerImplBase* scrollbar :
3474 active_tree_->ScrollbarsFor(new_layer_id)) {
3473 new_animation_controller->DidMouseMoveNear( 3475 new_animation_controller->DidMouseMoveNear(
3474 scrollbar->orientation(), 3476 scrollbar->orientation(),
3475 DeviceSpaceDistanceToLayer(device_viewport_point, scrollbar) / 3477 DeviceSpaceDistanceToLayer(device_viewport_point, scrollbar) /
3476 active_tree_->device_scale_factor()); 3478 active_tree_->device_scale_factor());
3477 } 3479 }
3478 } 3480 }
3479 3481
3480 void LayerTreeHostImpl::MouseLeave() { 3482 void LayerTreeHostImpl::MouseLeave() {
3481 for (auto& pair : scrollbar_animation_controllers_) 3483 for (auto& pair : scrollbar_animation_controllers_)
3482 pair.second->DidMouseLeave(); 3484 pair.second->DidMouseLeave();
3483 scroll_layer_id_mouse_currently_over_ = Layer::INVALID_ID; 3485 scroll_element_id_mouse_currently_over_ = ElementId();
3484 } 3486 }
3485 3487
3486 void LayerTreeHostImpl::PinchGestureBegin() { 3488 void LayerTreeHostImpl::PinchGestureBegin() {
3487 pinch_gesture_active_ = true; 3489 pinch_gesture_active_ = true;
3488 client_->RenewTreePriority(); 3490 client_->RenewTreePriority();
3489 pinch_gesture_end_should_clear_scrolling_node_ = !CurrentlyScrollingNode(); 3491 pinch_gesture_end_should_clear_scrolling_node_ = !CurrentlyScrollingNode();
3490 3492
3491 active_tree_->SetCurrentlyScrollingNode(OuterViewportScrollNode()); 3493 active_tree_->SetCurrentlyScrollingNode(OuterViewportScrollNode());
3492 browser_controls_offset_manager_->PinchBegin(); 3494 browser_controls_offset_manager_->PinchBegin();
3493 } 3495 }
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
3542 tree_impl->InnerViewportScrollLayer() 3544 tree_impl->InnerViewportScrollLayer()
3543 ? tree_impl->InnerViewportScrollLayer()->id() 3545 ? tree_impl->InnerViewportScrollLayer()->id()
3544 : Layer::INVALID_ID; 3546 : Layer::INVALID_ID;
3545 3547
3546 tree_impl->property_trees()->scroll_tree.CollectScrollDeltas( 3548 tree_impl->property_trees()->scroll_tree.CollectScrollDeltas(
3547 scroll_info, inner_viewport_layer_id); 3549 scroll_info, inner_viewport_layer_id);
3548 } 3550 }
3549 3551
3550 static void CollectScrollbarUpdates( 3552 static void CollectScrollbarUpdates(
3551 ScrollAndScaleSet* scroll_info, 3553 ScrollAndScaleSet* scroll_info,
3552 std::unordered_map<int, std::unique_ptr<ScrollbarAnimationController>>* 3554 std::unordered_map<ElementId,
3553 controllers) { 3555 std::unique_ptr<ScrollbarAnimationController>,
3556 ElementIdHash>* controllers) {
3554 scroll_info->scrollbars.reserve(controllers->size()); 3557 scroll_info->scrollbars.reserve(controllers->size());
3555 for (auto& pair : *controllers) { 3558 for (auto& pair : *controllers) {
3556 scroll_info->scrollbars.push_back(LayerTreeHostCommon::ScrollbarsUpdateInfo( 3559 scroll_info->scrollbars.push_back(LayerTreeHostCommon::ScrollbarsUpdateInfo(
3557 pair.first, pair.second->ScrollbarsHidden())); 3560 pair.first, pair.second->ScrollbarsHidden()));
3558 } 3561 }
3559 } 3562 }
3560 3563
3561 std::unique_ptr<ScrollAndScaleSet> LayerTreeHostImpl::ProcessScrollDeltas() { 3564 std::unique_ptr<ScrollAndScaleSet> LayerTreeHostImpl::ProcessScrollDeltas() {
3562 std::unique_ptr<ScrollAndScaleSet> scroll_info(new ScrollAndScaleSet()); 3565 std::unique_ptr<ScrollAndScaleSet> scroll_info(new ScrollAndScaleSet());
3563 3566
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
3687 if (active_tree_->root_layer_for_testing()) { 3690 if (active_tree_->root_layer_for_testing()) {
3688 std::unique_ptr<base::Value> json( 3691 std::unique_ptr<base::Value> json(
3689 active_tree_->root_layer_for_testing()->LayerTreeAsJson()); 3692 active_tree_->root_layer_for_testing()->LayerTreeAsJson());
3690 base::JSONWriter::WriteWithOptions( 3693 base::JSONWriter::WriteWithOptions(
3691 *json, base::JSONWriter::OPTIONS_PRETTY_PRINT, &str); 3694 *json, base::JSONWriter::OPTIONS_PRETTY_PRINT, &str);
3692 } 3695 }
3693 return str; 3696 return str;
3694 } 3697 }
3695 3698
3696 void LayerTreeHostImpl::RegisterScrollbarAnimationController( 3699 void LayerTreeHostImpl::RegisterScrollbarAnimationController(
3697 int scroll_layer_id) { 3700 int scroll_layer_id,
3701 ElementId scroll_element_id) {
3698 if (settings().scrollbar_animator == LayerTreeSettings::NO_ANIMATOR) 3702 if (settings().scrollbar_animator == LayerTreeSettings::NO_ANIMATOR)
3699 return; 3703 return;
3700 if (ScrollbarAnimationControllerForId(scroll_layer_id)) 3704 if (ScrollbarAnimationControllerForId(scroll_element_id))
3701 return; 3705 return;
3702 scrollbar_animation_controllers_[scroll_layer_id] = 3706 scrollbar_animation_controllers_[scroll_element_id] =
3703 active_tree_->CreateScrollbarAnimationController(scroll_layer_id); 3707 active_tree_->CreateScrollbarAnimationController(scroll_layer_id);
3704 } 3708 }
3705 3709
3706 void LayerTreeHostImpl::UnregisterScrollbarAnimationController( 3710 void LayerTreeHostImpl::UnregisterScrollbarAnimationController(
3707 int scroll_layer_id) { 3711 ElementId scroll_element_id) {
3708 scrollbar_animation_controllers_.erase(scroll_layer_id); 3712 scrollbar_animation_controllers_.erase(scroll_element_id);
3709 } 3713 }
3710 3714
3711 ScrollbarAnimationController* 3715 ScrollbarAnimationController*
3712 LayerTreeHostImpl::ScrollbarAnimationControllerForId( 3716 LayerTreeHostImpl::ScrollbarAnimationControllerForId(
3713 int scroll_layer_id) const { 3717 ElementId scroll_element_id) const {
3714 // The viewport layers have only one set of scrollbars and their controller 3718 // The viewport layers have only one set of scrollbars and their controller
3715 // is registered with the outer viewport. 3719 // is registered with the outer viewport.
3716 if (InnerViewportScrollLayer() && OuterViewportScrollLayer() && 3720 if (InnerViewportScrollLayer() && OuterViewportScrollLayer() &&
3717 scroll_layer_id == InnerViewportScrollLayer()->id()) 3721 scroll_element_id == InnerViewportScrollLayer()->element_id())
3718 scroll_layer_id = OuterViewportScrollLayer()->id(); 3722 scroll_element_id = OuterViewportScrollLayer()->element_id();
3719 auto i = scrollbar_animation_controllers_.find(scroll_layer_id); 3723 auto i = scrollbar_animation_controllers_.find(scroll_element_id);
3720 if (i == scrollbar_animation_controllers_.end()) 3724 if (i == scrollbar_animation_controllers_.end())
3721 return nullptr; 3725 return nullptr;
3722 return i->second.get(); 3726 return i->second.get();
3723 } 3727 }
3724 3728
3725 void LayerTreeHostImpl::PostDelayedScrollbarAnimationTask( 3729 void LayerTreeHostImpl::PostDelayedScrollbarAnimationTask(
3726 const base::Closure& task, 3730 const base::Closure& task,
3727 base::TimeDelta delay) { 3731 base::TimeDelta delay) {
3728 client_->PostDelayedAnimationTaskOnImplThread(task, delay); 3732 client_->PostDelayedAnimationTaskOnImplThread(task, delay);
3729 } 3733 }
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after
4298 } 4302 }
4299 4303
4300 void LayerTreeHostImpl::UpdateScrollSourceInfo(bool is_wheel_scroll) { 4304 void LayerTreeHostImpl::UpdateScrollSourceInfo(bool is_wheel_scroll) {
4301 if (is_wheel_scroll) 4305 if (is_wheel_scroll)
4302 has_scrolled_by_wheel_ = true; 4306 has_scrolled_by_wheel_ = true;
4303 else 4307 else
4304 has_scrolled_by_touch_ = true; 4308 has_scrolled_by_touch_ = true;
4305 } 4309 }
4306 4310
4307 } // namespace cc 4311 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698