MCPcopy
hub / github.com/jscad/OpenJSCAD.org / augmentTouchEvent

Function augmentTouchEvent

src/ui/viewer/lightgl.js:1401–1445  ·  view source on GitHub ↗
(original)

Source from the content-addressed store, hash-verified

1399 }
1400
1401 function augmentTouchEvent(original) {
1402 var e = {};
1403 for(var name in original) {
1404 if(typeof original[name] == 'function') {
1405 e[name] = (function(callback) {
1406 return function() {
1407 callback.apply(original, arguments);
1408 };
1409 })(original[name]);
1410 } else {
1411 e[name] = original[name];
1412 }
1413 }
1414 e.original = original;
1415
1416 if(e.targetTouches.length > 0) {
1417 var touch = e.targetTouches[0];
1418 e.x = touch.pageX;
1419 e.y = touch.pageY;
1420
1421 for(var obj = gl.canvas; obj; obj = obj.offsetParent) {
1422 e.x -= obj.offsetLeft;
1423 e.y -= obj.offsetTop;
1424 }
1425 if(hasOld) {
1426 e.deltaX = e.x - oldX;
1427 e.deltaY = e.y - oldY;
1428 } else {
1429 e.deltaX = 0;
1430 e.deltaY = 0;
1431 hasOld = true;
1432 }
1433 oldX = e.x;
1434 oldY = e.y;
1435 e.dragging = true;
1436 }
1437
1438 e.preventDefault = function() {
1439 e.original.preventDefault();
1440 };
1441 e.stopPropagation = function() {
1442 e.original.stopPropagation();
1443 };
1444 return e;
1445 }
1446
1447 function mousedown(e) {
1448 gl = context;

Callers 3

touchstartFunction · 0.85
touchmoveFunction · 0.85
touchendFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected