Index: Source/web/WebInputEventFactoryMac.mm |
diff --git a/Source/web/WebInputEventFactoryMac.mm b/Source/web/WebInputEventFactoryMac.mm |
index 516ae2f853cdd07e02e49007cfbbb4cee390f8cf..303fb04ef5001b8fa1fe087a42623e574ce1a283 100644 |
--- a/Source/web/WebInputEventFactoryMac.mm |
+++ b/Source/web/WebInputEventFactoryMac.mm |
@@ -366,19 +366,6 @@ static int windowsKeyCodeForKeyEvent(NSEvent* event) |
return windowsKeyCodeForKeyCode([event keyCode]); |
} |
-static WebInputEvent::Type gestureEventTypeForEvent(NSEvent *event) |
-{ |
- switch ([event type]) { |
- case NSEventTypeBeginGesture: |
- return WebInputEvent::GestureScrollBegin; |
- case NSEventTypeEndGesture: |
- return WebInputEvent::GestureScrollEnd; |
- default: |
- ASSERT_NOT_REACHED(); |
- return WebInputEvent::GestureScrollEnd; |
- } |
-} |
- |
static inline NSString* textFromEvent(NSEvent* event) |
{ |
if ([event type] == NSFlagsChanged) |
@@ -1138,10 +1125,21 @@ WebGestureEvent WebInputEventFactory::gestureEvent(NSEvent *event, NSView *view) |
result.globalX = temp.globalX; |
result.globalY = temp.globalY; |
- result.type = gestureEventTypeForEvent(event); |
result.modifiers = modifiersFromEvent(event); |
result.timeStampSeconds = [event timestamp]; |
+ // MacOS X gestures are used only for pinch support. |
+ result.sourceDevice = WebGestureEvent::Touchpad; |
+ switch ([event type]) { |
+ case NSEventTypeMagnify: |
+ result.type = WebInputEvent::GesturePinchUpdate; |
+ result.data.pinchUpdate.scale = [event magnification]; |
+ break; |
+ default: |
+ ASSERT_NOT_REACHED(); |
+ result.type = WebInputEvent::Undefined; |
+ } |
+ |
return result; |
} |