From 275d2cbd813787a0a2a3ca20d580701410608fce Mon Sep 17 00:00:00 2001 From: Daniel Freedman Date: Wed, 22 Jan 2014 15:07:47 -0800 Subject: [PATCH] Implement spec update for non-hover pointers issuing enter and leave https://dvcs.w3.org/hg/pointerevents/rev/95b152ce34eb fix ordering of over,enter and leave,down --- src/dispatcher.js | 4 ++-- src/touch.js | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/dispatcher.js b/src/dispatcher.js index 5a4deba7..d449df46 100644 --- a/src/dispatcher.js +++ b/src/dispatcher.js @@ -164,16 +164,16 @@ this.fireEvent('pointercancel', inEvent); }, leaveOut: function(event) { + this.out(event); if (!this.contains(event.target, event.relatedTarget)) { this.leave(event); } - this.out(event); }, enterOver: function(event) { + this.over(event); if (!this.contains(event.target, event.relatedTarget)) { this.enter(event); } - this.over(event); }, // LISTENER LOGIC eventHandler: function(inEvent) { diff --git a/src/touch.js b/src/touch.js index 1e4a0f49..9a203dce 100644 --- a/src/touch.js +++ b/src/touch.js @@ -243,6 +243,7 @@ outTarget: inPointer.target }); dispatcher.over(inPointer); + dispatcher.enter(inPointer); dispatcher.down(inPointer); }, touchmove: function(inEvent) { @@ -292,6 +293,7 @@ if (!this.scrolling) { dispatcher.up(inPointer); dispatcher.out(inPointer); + dispatcher.leave(inPointer); } this.cleanUpPointer(inPointer); }, @@ -301,6 +303,7 @@ cancelOut: function(inPointer) { dispatcher.cancel(inPointer); dispatcher.out(inPointer); + dispatcher.leave(inPointer); this.cleanUpPointer(inPointer); }, cleanUpPointer: function(inPointer) {