From 4a0961afd69a4f9f209b24825106ab15737434c1 Mon Sep 17 00:00:00 2001 From: Joshua Granick Date: Tue, 1 Sep 2015 09:45:32 -0700 Subject: [PATCH] Primary touch fix --- lime/_backend/html5/HTML5Window.hx | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lime/_backend/html5/HTML5Window.hx b/lime/_backend/html5/HTML5Window.hx index 9c751998a..4da179f18 100644 --- a/lime/_backend/html5/HTML5Window.hx +++ b/lime/_backend/html5/HTML5Window.hx @@ -48,6 +48,7 @@ class HTML5Window { private var currentTouches = new Map (); private var enableTextEvents:Bool; private var parent:Window; + private var primaryTouch:Touch; private var setHeight:Int; private var setWidth:Int; private var unusedTouchesPool = new List (); @@ -440,7 +441,13 @@ class HTML5Window { Touch.onStart.dispatch (touch); - if (data == event.touches[0]) { + if (primaryTouch == null) { + + primaryTouch = touch; + + } + + if (touch == primaryTouch) { parent.onMouseDown.dispatch (x, y, 0); @@ -466,9 +473,10 @@ class HTML5Window { currentTouches.remove (data.identifier); unusedTouchesPool.add (touch); - if (data == event.touches[0]) { + if (touch == primaryTouch) { parent.onMouseUp.dispatch (x, y, 0); + primaryTouch = null; } @@ -491,7 +499,7 @@ class HTML5Window { Touch.onMove.dispatch (touch); - if (data == event.touches[0]) { + if (touch == primaryTouch) { parent.onMouseMove.dispatch (x, y);