| 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 "core/dom/DOMNodeIds.h" | 7 #include "core/dom/DOMNodeIds.h" |
| 8 #include "core/events/GestureEvent.h" | 8 #include "core/events/GestureEvent.h" |
| 9 #include "core/frame/BrowserControls.h" | 9 #include "core/frame/BrowserControls.h" |
| 10 #include "core/frame/FrameHost.h" | 10 #include "core/frame/FrameHost.h" |
| (...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 217 | 217 |
| 218 if (!m_scrollGestureHandlingNode || | 218 if (!m_scrollGestureHandlingNode || |
| 219 !m_scrollGestureHandlingNode->layoutObject()) | 219 !m_scrollGestureHandlingNode->layoutObject()) |
| 220 return WebInputEventResult::NotHandled; | 220 return WebInputEventResult::NotHandled; |
| 221 | 221 |
| 222 passScrollGestureEventToWidget(gestureEvent, | 222 passScrollGestureEventToWidget(gestureEvent, |
| 223 m_scrollGestureHandlingNode->layoutObject()); | 223 m_scrollGestureHandlingNode->layoutObject()); |
| 224 | 224 |
| 225 m_currentScrollChain.clear(); | 225 m_currentScrollChain.clear(); |
| 226 std::unique_ptr<ScrollStateData> scrollStateData = | 226 std::unique_ptr<ScrollStateData> scrollStateData = |
| 227 makeUnique<ScrollStateData>(); | 227 WTF::makeUnique<ScrollStateData>(); |
| 228 scrollStateData->position_x = gestureEvent.position().x(); | 228 scrollStateData->position_x = gestureEvent.position().x(); |
| 229 scrollStateData->position_y = gestureEvent.position().y(); | 229 scrollStateData->position_y = gestureEvent.position().y(); |
| 230 scrollStateData->is_beginning = true; | 230 scrollStateData->is_beginning = true; |
| 231 scrollStateData->from_user_input = true; | 231 scrollStateData->from_user_input = true; |
| 232 scrollStateData->is_direct_manipulation = | 232 scrollStateData->is_direct_manipulation = |
| 233 gestureEvent.source() == PlatformGestureSourceTouchscreen; | 233 gestureEvent.source() == PlatformGestureSourceTouchscreen; |
| 234 scrollStateData->delta_consumed_for_scroll_sequence = | 234 scrollStateData->delta_consumed_for_scroll_sequence = |
| 235 m_deltaConsumedForScrollSequence; | 235 m_deltaConsumedForScrollSequence; |
| 236 ScrollState* scrollState = ScrollState::create(std::move(scrollStateData)); | 236 ScrollState* scrollState = ScrollState::create(std::move(scrollStateData)); |
| 237 customizedScroll(*m_scrollGestureHandlingNode.get(), *scrollState); | 237 customizedScroll(*m_scrollGestureHandlingNode.get(), *scrollState); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 263 WebInputEventResult result = | 263 WebInputEventResult result = |
| 264 passScrollGestureEventToWidget(gestureEvent, layoutObject); | 264 passScrollGestureEventToWidget(gestureEvent, layoutObject); |
| 265 if (result != WebInputEventResult::NotHandled) { | 265 if (result != WebInputEventResult::NotHandled) { |
| 266 // FIXME: we should allow simultaneous scrolling of nested | 266 // FIXME: we should allow simultaneous scrolling of nested |
| 267 // iframes along perpendicular axes. See crbug.com/466991. | 267 // iframes along perpendicular axes. See crbug.com/466991. |
| 268 m_deltaConsumedForScrollSequence = true; | 268 m_deltaConsumedForScrollSequence = true; |
| 269 return result; | 269 return result; |
| 270 } | 270 } |
| 271 | 271 |
| 272 std::unique_ptr<ScrollStateData> scrollStateData = | 272 std::unique_ptr<ScrollStateData> scrollStateData = |
| 273 makeUnique<ScrollStateData>(); | 273 WTF::makeUnique<ScrollStateData>(); |
| 274 scrollStateData->delta_x = delta.width(); | 274 scrollStateData->delta_x = delta.width(); |
| 275 scrollStateData->delta_y = delta.height(); | 275 scrollStateData->delta_y = delta.height(); |
| 276 scrollStateData->delta_granularity = | 276 scrollStateData->delta_granularity = |
| 277 static_cast<double>(gestureEvent.deltaUnits()); | 277 static_cast<double>(gestureEvent.deltaUnits()); |
| 278 scrollStateData->velocity_x = velocity.width(); | 278 scrollStateData->velocity_x = velocity.width(); |
| 279 scrollStateData->velocity_y = velocity.height(); | 279 scrollStateData->velocity_y = velocity.height(); |
| 280 scrollStateData->position_x = position.x(); | 280 scrollStateData->position_x = position.x(); |
| 281 scrollStateData->position_y = position.y(); | 281 scrollStateData->position_y = position.y(); |
| 282 scrollStateData->should_propagate = !gestureEvent.preventPropagation(); | 282 scrollStateData->should_propagate = !gestureEvent.preventPropagation(); |
| 283 scrollStateData->is_in_inertial_phase = | 283 scrollStateData->is_in_inertial_phase = |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 319 return WebInputEventResult::NotHandled; | 319 return WebInputEventResult::NotHandled; |
| 320 } | 320 } |
| 321 | 321 |
| 322 WebInputEventResult ScrollManager::handleGestureScrollEnd( | 322 WebInputEventResult ScrollManager::handleGestureScrollEnd( |
| 323 const PlatformGestureEvent& gestureEvent) { | 323 const PlatformGestureEvent& gestureEvent) { |
| 324 Node* node = m_scrollGestureHandlingNode; | 324 Node* node = m_scrollGestureHandlingNode; |
| 325 | 325 |
| 326 if (node && node->layoutObject()) { | 326 if (node && node->layoutObject()) { |
| 327 passScrollGestureEventToWidget(gestureEvent, node->layoutObject()); | 327 passScrollGestureEventToWidget(gestureEvent, node->layoutObject()); |
| 328 std::unique_ptr<ScrollStateData> scrollStateData = | 328 std::unique_ptr<ScrollStateData> scrollStateData = |
| 329 makeUnique<ScrollStateData>(); | 329 WTF::makeUnique<ScrollStateData>(); |
| 330 scrollStateData->is_ending = true; | 330 scrollStateData->is_ending = true; |
| 331 scrollStateData->is_in_inertial_phase = | 331 scrollStateData->is_in_inertial_phase = |
| 332 gestureEvent.inertialPhase() == ScrollInertialPhaseMomentum; | 332 gestureEvent.inertialPhase() == ScrollInertialPhaseMomentum; |
| 333 scrollStateData->from_user_input = true; | 333 scrollStateData->from_user_input = true; |
| 334 scrollStateData->is_direct_manipulation = | 334 scrollStateData->is_direct_manipulation = |
| 335 gestureEvent.source() == PlatformGestureSourceTouchscreen; | 335 gestureEvent.source() == PlatformGestureSourceTouchscreen; |
| 336 scrollStateData->delta_consumed_for_scroll_sequence = | 336 scrollStateData->delta_consumed_for_scroll_sequence = |
| 337 m_deltaConsumedForScrollSequence; | 337 m_deltaConsumedForScrollSequence; |
| 338 ScrollState* scrollState = ScrollState::create(std::move(scrollStateData)); | 338 ScrollState* scrollState = ScrollState::create(std::move(scrollStateData)); |
| 339 customizedScroll(*node, *scrollState); | 339 customizedScroll(*node, *scrollState); |
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 529 if (scrollbar->gestureEvent(targetedEvent.event(), &shouldUpdateCapture)) { | 529 if (scrollbar->gestureEvent(targetedEvent.event(), &shouldUpdateCapture)) { |
| 530 if (shouldUpdateCapture) | 530 if (shouldUpdateCapture) |
| 531 m_scrollbarHandlingScrollGesture = scrollbar; | 531 m_scrollbarHandlingScrollGesture = scrollbar; |
| 532 return true; | 532 return true; |
| 533 } | 533 } |
| 534 } | 534 } |
| 535 return false; | 535 return false; |
| 536 } | 536 } |
| 537 | 537 |
| 538 } // namespace blink | 538 } // namespace blink |
| OLD | NEW |