From 1b31f05fb2641c6d28da26d63fe282eb99ae63ef Mon Sep 17 00:00:00 2001 From: = Date: Mon, 29 Jun 2020 13:53:16 +0200 Subject: [PATCH] selezione riscaldi con touch --- .../components/base-components/warmers.ts | 17 ++++++++++++++--- .../components/base-components/warmers.vue | 3 +++ 2 files changed, 17 insertions(+), 3 deletions(-) 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" >