diff --git a/web/src/components/CameraControlPanel.jsx b/web/src/components/CameraControlPanel.jsx
index fec9b6447..09e5acce9 100644
--- a/web/src/components/CameraControlPanel.jsx
+++ b/web/src/components/CameraControlPanel.jsx
@@ -115,20 +115,64 @@ export default function CameraControlPanel({ camera = '' }) {
Pan / Tilt
-
-
onSetMove(e, 'LEFT')} onMouseUp={(e) => onSetStop(e)}>
+ onSetMove(e, 'LEFT')}
+ onMouseUp={(e) => onSetStop(e)}
+ onTouchStart={(e) => {
+ onSetMove(e, 'LEFT');
+ e.preventDefault();
+ }}
+ onTouchEnd={(e) => {
+ onSetStop(e);
+ e.preventDefault();
+ }}
+ >
- onSetMove(e, 'RIGHT')} onMouseUp={(e) => onSetStop(e)}>
+ onSetMove(e, 'RIGHT')}
+ onMouseUp={(e) => onSetStop(e)}
+ onTouchStart={(e) => {
+ onSetMove(e, 'RIGHT');
+ e.preventDefault();
+ }}
+ onTouchEnd={(e) => {
+ onSetStop(e);
+ e.preventDefault();
+ }}
+ >
-
onSetMove(e, 'DOWN')} onMouseUp={(e) => onSetStop(e)}>
+ onSetMove(e, 'DOWN')}
+ onMouseUp={(e) => onSetStop(e)}
+ onTouchStart={(e) => {
+ onSetMove(e, 'DOWN');
+ e.preventDefault();
+ }}
+ onTouchEnd={(e) => {
+ onSetStop(e);
+ e.preventDefault();
+ }}
+ >
@@ -141,13 +185,35 @@ export default function CameraControlPanel({ camera = '' }) {
Zoom
-
onSetZoom(e, 'IN')} onMouseUp={(e) => onSetStop(e)}>
+ onSetZoom(e, 'IN')}
+ onMouseUp={(e) => onSetStop(e)}
+ onTouchStart={(e) => {
+ onSetZoom(e, 'IN');
+ e.preventDefault();
+ }}
+ onTouchEnd={(e) => {
+ onSetStop(e);
+ e.preventDefault();
+ }}
+ >
+
-
onSetZoom(e, 'OUT')} onMouseUp={(e) => onSetStop(e)}>
+ onSetZoom(e, 'OUT')}
+ onMouseUp={(e) => onSetStop(e)}
+ onTouchStart={(e) => {
+ onSetZoom(e, 'OUT');
+ e.preventDefault();
+ }}
+ onTouchEnd={(e) => {
+ onSetStop(e);
+ e.preventDefault();
+ }}
+ >
-