|
|
|
|
|
|
|
|
api("POST", "remote/keyboard-key", {key: "enter"}); |
|
|
api("POST", "remote/keyboard-key", {key: "enter"}); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
screencastContainerEl.addEventListener("click", evt => { |
|
|
|
|
|
|
|
|
screencastEl.addEventListener("click", evt => { |
|
|
evt.preventDefault(); |
|
|
evt.preventDefault(); |
|
|
api("POST", "remote/mouse-click", {button: "left", doubleClick: false}); |
|
|
api("POST", "remote/mouse-click", {button: "left", doubleClick: false}); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
screencastContainerEl.addEventListener("dblclick", evt => { |
|
|
|
|
|
|
|
|
screencastEl.addEventListener("dblclick", evt => { |
|
|
evt.preventDefault(); |
|
|
evt.preventDefault(); |
|
|
api("POST", "remote/mouse-click", {button: "left", doubleClick: true}); |
|
|
api("POST", "remote/mouse-click", {button: "left", doubleClick: true}); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
screencastContainerEl.addEventListener("wheel", evt => { |
|
|
|
|
|
|
|
|
screencastEl.addEventListener("contextmenu", evt => { |
|
|
|
|
|
evt.preventDefault(); |
|
|
|
|
|
api("POST", "remote/mouse-click", {button: "right", doubleClick: false}); |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
screencastEl.addEventListener("wheel", evt => { |
|
|
evt.preventDefault(); |
|
|
evt.preventDefault(); |
|
|
onScroll({x: evt.deltaX / 5, y: evt.deltaY / 5}); |
|
|
onScroll({x: evt.deltaX / 5, y: evt.deltaY / 5}); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
api("PUT", "remote/mouse-pos", mousePos); |
|
|
api("PUT", "remote/mouse-pos", mousePos); |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
screencastContainerEl.addEventListener("mousemove", evt => { |
|
|
|
|
|
if (evt.buttons != 1) { |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
evt.preventDefault(); |
|
|
|
|
|
moveDelta(mousePos, screenSize, {x: evt.movementX, y: evt.movementY}); |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
let numTouches = 0; |
|
|
let numTouches = 0; |
|
|
let touches = {}; |
|
|
let touches = {}; |
|
|
screencastContainerEl.addEventListener("touchstart", evt => { |
|
|
screencastContainerEl.addEventListener("touchstart", evt => { |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if (numTouches == 1) { |
|
|
if (numTouches == 1) { |
|
|
delta.x = Math.round(signPow(delta.x, 1.5)); |
|
|
|
|
|
delta.y = Math.round(signPow(delta.y, 1.5)); |
|
|
|
|
|
|
|
|
delta.x = Math.round(signPow(delta.x / 2, 1.5)); |
|
|
|
|
|
delta.y = Math.round(signPow(delta.y / 2, 1.5)); |
|
|
moveDelta(mousePos, screenSize, delta); |
|
|
moveDelta(mousePos, screenSize, delta); |
|
|
} else if (numTouches == 2) { |
|
|
} else if (numTouches == 2) { |
|
|
delta.x = -delta.x / 5 / numTouches; |
|
|
delta.x = -delta.x / 5 / numTouches; |
|
|
|
|
|
|
|
|
evt.preventDefault(); |
|
|
evt.preventDefault(); |
|
|
numTouches -= evt.changedTouches.length; |
|
|
numTouches -= evt.changedTouches.length; |
|
|
for (let touch of evt.changedTouches) { |
|
|
for (let touch of evt.changedTouches) { |
|
|
numTouches -= 1; |
|
|
|
|
|
let oldTouch = touches[touch.identifier]; |
|
|
let oldTouch = touches[touch.identifier]; |
|
|
touches[touch.identifier] = null; |
|
|
touches[touch.identifier] = null; |
|
|
if (oldTouch.moveDist < 10) { |
|
|
if (oldTouch.moveDist < 10) { |