@@ -83,9 +83,10 @@ Elm.Native.Touch = function(elm) {
83 listen("touchcancel", end);
83 listen("touchcancel", end);
84 listen("touchleave", end);
84 listen("touchleave", end);
86 function move(e) {
87 function move(e) {
87 for (var i = root.value.length; i--; ) {
88 for (var i = root.value.length; i--; ) {
88− if (root.value[i].id === 0) {
89+ if (root.value[i].id === mouseID) {
89 root.value[i].x = e.pageX;
90 root.value[i].x = e.pageX;
90 root.value[i].y = e.pageY;
91 root.value[i].y = e.pageY;
91 elm.notify(root.id, root.value);
92 elm.notify(root.id, root.value);
@@ -95,18 +96,19 @@ Elm.Native.Touch = function(elm) {
96 node.addEventListener("mousedown", function(e) {
97 node.addEventListener("mousedown", function(e) {
97 node.addEventListener("mousemove", move);
98 node.addEventListener("mousemove", move);
98− e.identifier = 0;
99+ e.identifier = mouseID;
99 root.value.push(touch(e));
100 root.value.push(touch(e));
100 start(e);
101 start(e);
101 elm.notify(root.id, root.value);
102 elm.notify(root.id, root.value);
103 node.addEventListener("mouseup", function(e) {
104 node.addEventListener("mouseup", function(e) {
104 node.removeEventListener("mousemove", move);
105 node.removeEventListener("mousemove", move);
105− e.identifier = 0;
106+ e.identifier = mouseID;
107 for (var i = root.value.length; i--; ) {
108 for (var i = root.value.length; i--; ) {
108− if (root.value[i].id === 0) {
109+ if (root.value[i].id === mouseID) {
109 root.value.splice(i, 1);
110 root.value.splice(i, 1);
@@ -114,6 +116,10 @@ Elm.Native.Touch = function(elm) {
115 node.addEventListener("blur", function() {
117 node.addEventListener("blur", function() {
116 node.removeEventListener("mousemove", move);
118 node.removeEventListener("mousemove", move);
119+ if (root.values.length > 0) {
120+ elm.notify(root.id, []);
117 dict.clear();
123 dict.clear();