| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 84 offset = rootView->inputEventsOffsetForEmulation(); | 84 offset = rootView->inputEventsOffsetForEmulation(); |
| 85 visualViewport = flooredIntPoint(rootView->page()->frameHost().visua
lViewport().visibleRect().location()); | 85 visualViewport = flooredIntPoint(rootView->page()->frameHost().visua
lViewport().visibleRect().location()); |
| 86 overscrollOffset = rootView->page()->frameHost().chromeClient().elas
ticOverscroll(); | 86 overscrollOffset = rootView->page()->frameHost().chromeClient().elas
ticOverscroll(); |
| 87 } | 87 } |
| 88 } | 88 } |
| 89 return FloatPoint( | 89 return FloatPoint( |
| 90 (pointInRendererViewport.x() - offset.width()) / scale + visualViewport.
x() + overscrollOffset.width(), | 90 (pointInRendererViewport.x() - offset.width()) / scale + visualViewport.
x() + overscrollOffset.width(), |
| 91 (pointInRendererViewport.y() - offset.height()) / scale + visualViewport
.y() + overscrollOffset.height()); | 91 (pointInRendererViewport.y() - offset.height()) / scale + visualViewport
.y() + overscrollOffset.height()); |
| 92 } | 92 } |
| 93 | 93 |
| 94 PlatformEvent::DispatchType toPlatformDispatchType(WebInputEvent::DispatchType t
ype) |
| 95 { |
| 96 static_assert(PlatformEvent::DispatchType::Blocking == static_cast<PlatformE
vent::DispatchType>(WebInputEvent::DispatchType::Blocking), |
| 97 "Dispatch Types not equal"); |
| 98 static_assert(PlatformEvent::DispatchType::EventNonBlocking == static_cast<P
latformEvent::DispatchType>(WebInputEvent::DispatchType::EventNonBlocking), |
| 99 "Dispatch Types not equal"); |
| 100 static_assert(PlatformEvent::DispatchType::ListenersNonBlockingPassive == st
atic_cast<PlatformEvent::DispatchType>(WebInputEvent::DispatchType::ListenersNon
BlockingPassive), |
| 101 "Dispatch Types not equal"); |
| 102 static_assert(PlatformEvent::DispatchType::ListenersForcedNonBlockingPassive
== static_cast<PlatformEvent::DispatchType>(WebInputEvent::DispatchType::Listen
ersForcedNonBlockingPassive), |
| 103 "Dispatch Types not equal"); |
| 104 |
| 105 return static_cast<PlatformEvent::DispatchType>(type); |
| 106 } |
| 107 |
| 94 unsigned toPlatformModifierFrom(WebMouseEvent::Button button) | 108 unsigned toPlatformModifierFrom(WebMouseEvent::Button button) |
| 95 { | 109 { |
| 96 if (button == WebMouseEvent::ButtonNone) | 110 if (button == WebMouseEvent::ButtonNone) |
| 97 return 0; | 111 return 0; |
| 98 | 112 |
| 99 unsigned webMouseButtonToPlatformModifier[] = { | 113 unsigned webMouseButtonToPlatformModifier[] = { |
| 100 PlatformEvent::LeftButtonDown, | 114 PlatformEvent::LeftButtonDown, |
| 101 PlatformEvent::MiddleButtonDown, | 115 PlatformEvent::MiddleButtonDown, |
| 102 PlatformEvent::RightButtonDown | 116 PlatformEvent::RightButtonDown |
| 103 }; | 117 }; |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 452 PlatformTouchEventBuilder::PlatformTouchEventBuilder(Widget* widget, const WebTo
uchEvent& event) | 466 PlatformTouchEventBuilder::PlatformTouchEventBuilder(Widget* widget, const WebTo
uchEvent& event) |
| 453 { | 467 { |
| 454 m_type = toPlatformTouchEventType(event.type); | 468 m_type = toPlatformTouchEventType(event.type); |
| 455 m_modifiers = event.modifiers; | 469 m_modifiers = event.modifiers; |
| 456 m_timestamp = event.timeStampSeconds; | 470 m_timestamp = event.timeStampSeconds; |
| 457 m_causesScrollingIfUncanceled = event.movedBeyondSlopRegion; | 471 m_causesScrollingIfUncanceled = event.movedBeyondSlopRegion; |
| 458 | 472 |
| 459 for (unsigned i = 0; i < event.touchesLength; ++i) | 473 for (unsigned i = 0; i < event.touchesLength; ++i) |
| 460 m_touchPoints.append(PlatformTouchPointBuilder(widget, event.touches[i])
); | 474 m_touchPoints.append(PlatformTouchPointBuilder(widget, event.touches[i])
); |
| 461 | 475 |
| 462 m_cancelable = event.cancelable; | 476 m_dispatchType = toPlatformDispatchType(event.dispatchType); |
| 463 } | 477 } |
| 464 | 478 |
| 465 static FloatPoint convertAbsoluteLocationForLayoutObjectFloat(const LayoutPoint&
location, const LayoutObject& layoutObject) | 479 static FloatPoint convertAbsoluteLocationForLayoutObjectFloat(const LayoutPoint&
location, const LayoutObject& layoutObject) |
| 466 { | 480 { |
| 467 return layoutObject.absoluteToLocal(FloatPoint(location), UseTransforms); | 481 return layoutObject.absoluteToLocal(FloatPoint(location), UseTransforms); |
| 468 } | 482 } |
| 469 | 483 |
| 470 static IntPoint convertAbsoluteLocationForLayoutObject(const LayoutPoint& locati
on, const LayoutObject& layoutObject) | 484 static IntPoint convertAbsoluteLocationForLayoutObject(const LayoutPoint& locati
on, const LayoutObject& layoutObject) |
| 471 { | 485 { |
| 472 return roundedIntPoint(convertAbsoluteLocationForLayoutObjectFloat(location,
layoutObject)); | 486 return roundedIntPoint(convertAbsoluteLocationForLayoutObjectFloat(location,
layoutObject)); |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 712 else if (event.type() == EventTypeNames::touchcancel) | 726 else if (event.type() == EventTypeNames::touchcancel) |
| 713 type = TouchCancel; | 727 type = TouchCancel; |
| 714 else { | 728 else { |
| 715 NOTREACHED(); | 729 NOTREACHED(); |
| 716 type = Undefined; | 730 type = Undefined; |
| 717 return; | 731 return; |
| 718 } | 732 } |
| 719 | 733 |
| 720 timeStampSeconds = event.platformTimeStamp(); | 734 timeStampSeconds = event.platformTimeStamp(); |
| 721 modifiers = event.modifiers(); | 735 modifiers = event.modifiers(); |
| 722 cancelable = event.cancelable(); | 736 dispatchType = event.cancelable() ? WebInputEvent::Blocking : WebInputEvent:
:EventNonBlocking; |
| 723 movedBeyondSlopRegion = event.causesScrollingIfUncanceled(); | 737 movedBeyondSlopRegion = event.causesScrollingIfUncanceled(); |
| 724 | 738 |
| 725 // Currently touches[] is empty, add stationary points as-is. | 739 // Currently touches[] is empty, add stationary points as-is. |
| 726 for (unsigned i = 0; i < event.touches()->length() && i < static_cast<unsign
ed>(WebTouchEvent::touchesLengthCap); ++i) { | 740 for (unsigned i = 0; i < event.touches()->length() && i < static_cast<unsign
ed>(WebTouchEvent::touchesLengthCap); ++i) { |
| 727 touches[i] = toWebTouchPoint(event.touches()->item(i), layoutObject, Web
TouchPoint::StateStationary); | 741 touches[i] = toWebTouchPoint(event.touches()->item(i), layoutObject, Web
TouchPoint::StateStationary); |
| 728 ++touchesLength; | 742 ++touchesLength; |
| 729 } | 743 } |
| 730 // If any existing points are also in the change list, we should update | 744 // If any existing points are also in the change list, we should update |
| 731 // their state, otherwise just add the new points. | 745 // their state, otherwise just add the new points. |
| 732 addTouchPointsUpdateStateIfNecessary(toWebTouchPointState(event.type()), eve
nt.changedTouches(), touches, &touchesLength, layoutObject); | 746 addTouchPointsUpdateStateIfNecessary(toWebTouchPointState(event.type()), eve
nt.changedTouches(), touches, &touchesLength, layoutObject); |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 785 break; | 799 break; |
| 786 case GestureSourceTouchscreen: | 800 case GestureSourceTouchscreen: |
| 787 sourceDevice = WebGestureDeviceTouchscreen; | 801 sourceDevice = WebGestureDeviceTouchscreen; |
| 788 break; | 802 break; |
| 789 case GestureSourceUninitialized: | 803 case GestureSourceUninitialized: |
| 790 NOTREACHED(); | 804 NOTREACHED(); |
| 791 } | 805 } |
| 792 } | 806 } |
| 793 | 807 |
| 794 } // namespace blink | 808 } // namespace blink |
| OLD | NEW |