diff --git a/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.ts b/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.ts index a3791365..980344f2 100644 --- a/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.ts +++ b/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.ts @@ -196,11 +196,22 @@ export default class Warmers extends Vue { } } - getSvgCoords(evt: MouseEvent): selectionPoint { + getSvgCoords(evt: MouseEvent | TouchEvent): selectionPoint { var e = this.$refs.warmer as any; var dim = e.getBoundingClientRect(); - var x = evt.clientX - dim.left; - var y = evt.clientY - dim.top; + + var x = null; + var y = null; + + if ((evt as TouchEvent).touches) + for (const touch of Array.from((evt as TouchEvent).touches).slice(0, 1)) { + x = touch.clientX - dim.left; + y = touch.clientY - dim.top; + } + else { + x = (evt as MouseEvent).clientX - dim.left; + y = (evt as MouseEvent).clientY - dim.top; + } let sizes = this.zoomController?.getSizes(); let pan = this.zoomController?.getPan(); x -= pan.x; diff --git a/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.vue b/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.vue index 8620d1b3..34a44846 100644 --- a/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.vue +++ b/Thermo.Active/wwwroot/src/app_modules_thermo/setup/riscaldi/components/base-components/warmers.vue @@ -4,6 +4,9 @@ @mousedown="startSelection" @mouseup="stopSelection" @mousemove.capture="moveSelection" + v-on:touchstart="startSelection" + v-on:touchend="stopSelection" + v-on:touchmove="moveSelection" >