 		if @session?.lastEvent
 			event.deltaTime = event.time - @session.lastEvent.time
 			event.previous = @session.lastEvent.point
-			event.delta = Utils.pointSubtract(event.point, event.previous)
+
+			if @session.lastEvent.fingers != event.fingers
+				event.delta = {x:0, y:0}
+			else if @session.lastEvent.fingers == event.fingers == 2
+				event.delta = Utils.pointSubtract(event.touchCenter, @session.lastEvent.touchCenter)
+			else
+				event.delta = Utils.pointSubtract(event.point, event.previous)
 
 		if event.touches.length > 0
 			

		@_process(@_getGestureEvent(event))
		
	touchend: (event) =>
		@em.wrap(window).removeEventListener("touchmove", @touchmove)
		@em.wrap(window).removeEventListener("touchend", @touchend)
		event = @_getGestureEvent(event)

		@session = null
	
	touchstart: (event) =>
		return if event.touches.length > 1
		@em.wrap(window).addEventListener("touchmove", @touchmove)
		@em.wrap(window).addEventListener("touchend", @touchend)
		
		@session =
			startEvent: @_getGestureEvent(event)
			startMultiEvent: null
			startTime: Date.now()
			pressTimer: window.setTimeout(@longpressstart, 250)
			started: {}
