Commit 007d2d1f authored by rbyers@chromium.org's avatar rbyers@chromium.org

Update WebInputEventFactory on Mac for pinch gesture support

WebInputEventFactory::gestureEvent was added a long time ago but is
not currently used.  Remove the existing unused code and update the
function to support creating GesturePinchUpdate events from Cocoa
NSEventTypeMagnify events.

BUG=289887

Review URL: https://codereview.chromium.org/184983003

git-svn-id: svn://svn.chromium.org/blink/trunk@168482 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent 80822683
...@@ -366,19 +366,6 @@ static int windowsKeyCodeForKeyEvent(NSEvent* event) ...@@ -366,19 +366,6 @@ static int windowsKeyCodeForKeyEvent(NSEvent* event)
return windowsKeyCodeForKeyCode([event keyCode]); 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) static inline NSString* textFromEvent(NSEvent* event)
{ {
if ([event type] == NSFlagsChanged) if ([event type] == NSFlagsChanged)
...@@ -1138,10 +1125,21 @@ WebGestureEvent WebInputEventFactory::gestureEvent(NSEvent *event, NSView *view) ...@@ -1138,10 +1125,21 @@ WebGestureEvent WebInputEventFactory::gestureEvent(NSEvent *event, NSView *view)
result.globalX = temp.globalX; result.globalX = temp.globalX;
result.globalY = temp.globalY; result.globalY = temp.globalY;
result.type = gestureEventTypeForEvent(event);
result.modifiers = modifiersFromEvent(event); result.modifiers = modifiersFromEvent(event);
result.timeStampSeconds = [event timestamp]; 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; return result;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment