Only draw when one pointer is active

This commit is contained in:
Andreas Hocevar
2020-10-29 20:00:12 +01:00
parent a1a59b4408
commit 23a544aa30
+4 -1
View File
@@ -535,7 +535,7 @@ class Draw extends PointerInteraction {
event.type === MapBrowserEventType.POINTERDOWN event.type === MapBrowserEventType.POINTERDOWN
) { ) {
pass = false; pass = false;
} else if (move) { } else if (move && this.getPointerCount() === 1) {
pass = event.type === MapBrowserEventType.POINTERMOVE; pass = event.type === MapBrowserEventType.POINTERMOVE;
if (pass && this.freehand_) { if (pass && this.freehand_) {
this.handlePointerMove_(event); this.handlePointerMove_(event);
@@ -603,6 +603,7 @@ class Draw extends PointerInteraction {
handleUpEvent(event) { handleUpEvent(event) {
let pass = true; let pass = true;
if (this.getPointerCount() === 0) {
if (this.downTimeout_) { if (this.downTimeout_) {
clearTimeout(this.downTimeout_); clearTimeout(this.downTimeout_);
this.downTimeout_ = undefined; this.downTimeout_ = undefined;
@@ -631,6 +632,8 @@ class Draw extends PointerInteraction {
} else if (this.freehand_) { } else if (this.freehand_) {
this.abortDrawing(); this.abortDrawing();
} }
}
if (!pass && this.stopClick_) { if (!pass && this.stopClick_) {
event.stopPropagation(); event.stopPropagation();
} }