|
27 | 27 | var assert = (condition, message = "Assertion failed") => { |
28 | 28 | if (!condition) throw new Error(message); |
29 | 29 | }; |
30 | | - var version = "0.90.0"; |
| 30 | + var version = "0.91.0"; |
31 | 31 | function litecanvas(settings = {}) { |
32 | 32 | const root = window, math = Math, TWO_PI = math.PI * 2, raf = requestAnimationFrame, _browserEventListeners = [], on = (elem, evt, callback) => { |
33 | 33 | elem.addEventListener(evt, callback, false); |
|
1053 | 1053 | if (settings.tapEvents) { |
1054 | 1054 | const _getXY = ( |
1055 | 1055 | /** |
1056 | | - * @param {number} pageX |
1057 | | - * @param {number} pageY |
| 1056 | + * @param {MouseEvent | Touch} ev |
1058 | 1057 | */ |
1059 | | - (pageX, pageY) => [ |
1060 | | - (pageX - _canvas.offsetLeft) / _scale, |
1061 | | - (pageY - _canvas.offsetTop) / _scale |
| 1058 | + (ev) => [ |
| 1059 | + (ev.pageX - _canvas.offsetLeft) / _scale, |
| 1060 | + (ev.pageY - _canvas.offsetTop) / _scale |
1062 | 1061 | ] |
1063 | 1062 | ), _taps = /* @__PURE__ */ new Map(), _registerTap = ( |
1064 | 1063 | /** |
|
1114 | 1113 | (ev) => { |
1115 | 1114 | if (ev.button === 0) { |
1116 | 1115 | preventDefault(ev); |
1117 | | - const [x, y] = _getXY(ev.pageX, ev.pageY); |
| 1116 | + const [x, y] = _getXY(ev); |
1118 | 1117 | instance.emit("tap", x, y, 0); |
1119 | 1118 | _registerTap(0, x, y); |
1120 | 1119 | _pressingMouse = true; |
|
1131 | 1130 | if (ev.button === 0) { |
1132 | 1131 | preventDefault(ev); |
1133 | 1132 | const tap = _taps.get(0); |
1134 | | - const [x, y] = _getXY(ev.pageX, ev.pageY); |
| 1133 | + const [x, y] = _getXY(ev); |
1135 | 1134 | if (_checkTapped(tap)) { |
1136 | 1135 | instance.emit("tapped", tap.xi, tap.yi, 0); |
1137 | 1136 | } |
|
1142 | 1141 | } |
1143 | 1142 | ); |
1144 | 1143 | on( |
1145 | | - _canvas, |
| 1144 | + root, |
1146 | 1145 | "mousemove", |
1147 | 1146 | /** |
1148 | 1147 | * @param {MouseEvent} ev |
1149 | 1148 | */ |
1150 | 1149 | (ev) => { |
1151 | 1150 | preventDefault(ev); |
1152 | | - const [x, y] = _getXY(ev.pageX, ev.pageY); |
| 1151 | + const [x, y] = _getXY(ev); |
1153 | 1152 | instance.def("MX", x); |
1154 | 1153 | instance.def("MY", y); |
1155 | 1154 | if (!_pressingMouse) return; |
|
1167 | 1166 | preventDefault(ev); |
1168 | 1167 | const touches = ev.changedTouches; |
1169 | 1168 | for (const touch of touches) { |
1170 | | - const [x, y] = _getXY(touch.pageX, touch.pageY); |
| 1169 | + const [x, y] = _getXY(touch); |
1171 | 1170 | instance.emit("tap", x, y, touch.identifier + 1); |
1172 | 1171 | _registerTap(touch.identifier + 1, x, y); |
1173 | 1172 | } |
|
1183 | 1182 | preventDefault(ev); |
1184 | 1183 | const touches = ev.changedTouches; |
1185 | 1184 | for (const touch of touches) { |
1186 | | - const [x, y] = _getXY(touch.pageX, touch.pageY); |
| 1185 | + const [x, y] = _getXY(touch); |
1187 | 1186 | instance.emit("tapping", x, y, touch.identifier + 1); |
1188 | 1187 | _updateTap(touch.identifier + 1, x, y); |
1189 | 1188 | } |
|
0 commit comments