OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "core/input/ScrollManager.h" | 5 #include "core/input/ScrollManager.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 #include "core/dom/DOMNodeIds.h" | 8 #include "core/dom/DOMNodeIds.h" |
9 #include "core/events/GestureEvent.h" | 9 #include "core/events/GestureEvent.h" |
10 #include "core/frame/BrowserControls.h" | 10 #include "core/frame/BrowserControls.h" |
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
421 | 421 |
422 WebInputEventResult ScrollManager::PassScrollGestureEvent( | 422 WebInputEventResult ScrollManager::PassScrollGestureEvent( |
423 const WebGestureEvent& gesture_event, | 423 const WebGestureEvent& gesture_event, |
424 LayoutObject* layout_object) { | 424 LayoutObject* layout_object) { |
425 DCHECK(gesture_event.IsScrollEvent()); | 425 DCHECK(gesture_event.IsScrollEvent()); |
426 | 426 |
427 if (!last_gesture_scroll_over_frame_view_base_ || !layout_object || | 427 if (!last_gesture_scroll_over_frame_view_base_ || !layout_object || |
428 !layout_object->IsLayoutPart()) | 428 !layout_object->IsLayoutPart()) |
429 return WebInputEventResult::kNotHandled; | 429 return WebInputEventResult::kNotHandled; |
430 | 430 |
431 FrameViewBase* frame_view_base = | 431 FrameView* frame_view = ToLayoutPart(layout_object)->ChildFrameView(); |
432 ToLayoutPart(layout_object)->GetFrameViewBase(); | |
433 | 432 |
434 if (!frame_view_base || !frame_view_base->IsFrameView()) | 433 if (!frame_view) |
435 return WebInputEventResult::kNotHandled; | 434 return WebInputEventResult::kNotHandled; |
436 | 435 |
437 return ToFrameView(frame_view_base) | 436 return frame_view->GetFrame().GetEventHandler().HandleGestureScrollEvent( |
438 ->GetFrame() | 437 gesture_event); |
439 .GetEventHandler() | |
440 .HandleGestureScrollEvent(gesture_event); | |
441 } | 438 } |
442 | 439 |
443 bool ScrollManager::IsViewportScrollingElement(const Element& element) const { | 440 bool ScrollManager::IsViewportScrollingElement(const Element& element) const { |
444 // The root scroller is the one Element on the page designated to perform | 441 // The root scroller is the one Element on the page designated to perform |
445 // "viewport actions" like browser controls movement and overscroll glow. | 442 // "viewport actions" like browser controls movement and overscroll glow. |
446 if (!frame_->GetDocument()) | 443 if (!frame_->GetDocument()) |
447 return false; | 444 return false; |
448 | 445 |
449 return frame_->GetDocument()->GetRootScrollerController().ScrollsViewport( | 446 return frame_->GetDocument()->GetRootScrollerController().ScrollsViewport( |
450 element); | 447 element); |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
630 &should_update_capture)) { | 627 &should_update_capture)) { |
631 if (should_update_capture) | 628 if (should_update_capture) |
632 scrollbar_handling_scroll_gesture_ = scrollbar; | 629 scrollbar_handling_scroll_gesture_ = scrollbar; |
633 return true; | 630 return true; |
634 } | 631 } |
635 } | 632 } |
636 return false; | 633 return false; |
637 } | 634 } |
638 | 635 |
639 } // namespace blink | 636 } // namespace blink |
OLD | NEW |