diff --git a/src/signature_pad.ts b/src/signature_pad.ts index d9232e54..4c6b2b10 100644 --- a/src/signature_pad.ts +++ b/src/signature_pad.ts @@ -187,7 +187,11 @@ export default class SignaturePad extends SignatureEventTarget { public on(): void { // Disable panning/zooming when touching canvas element this.canvas.style.touchAction = 'none'; - (this.canvas.style as CSSStyleDeclaration & { msTouchAction: string | null }).msTouchAction = 'none'; + ( + this.canvas.style as CSSStyleDeclaration & { + msTouchAction: string | null; + } + ).msTouchAction = 'none'; this.canvas.style.userSelect = 'none'; const isIOS = @@ -211,7 +215,11 @@ export default class SignaturePad extends SignatureEventTarget { public off(): void { // Enable panning/zooming when touching canvas element this.canvas.style.touchAction = 'auto'; - (this.canvas.style as CSSStyleDeclaration & { msTouchAction: string | null }).msTouchAction = 'auto'; + ( + this.canvas.style as CSSStyleDeclaration & { + msTouchAction: string | null; + } + ).msTouchAction = 'auto'; this.canvas.style.userSelect = 'auto'; this.canvas.removeEventListener('pointerdown', this._handlePointerDown); @@ -225,7 +233,7 @@ export default class SignaturePad extends SignatureEventTarget { const canvasWindow = window.document === this.canvas.ownerDocument ? window - : this.canvas.ownerDocument.defaultView ?? this.canvas.ownerDocument; + : (this.canvas.ownerDocument.defaultView ?? this.canvas.ownerDocument); return { addEventListener: canvasWindow.addEventListener.bind( @@ -376,7 +384,11 @@ export default class SignaturePad extends SignatureEventTarget { }; private _handlePointerDown = (event: PointerEvent): void => { - if (!this._isLeftButtonPressed(event) || this._drawingStroke) { + if ( + !event.isPrimary || + !this._isLeftButtonPressed(event) || + this._drawingStroke + ) { return; } @@ -386,7 +398,11 @@ export default class SignaturePad extends SignatureEventTarget { }; private _handlePointerMove = (event: PointerEvent): void => { - if (!this._isLeftButtonPressed(event, true) || !this._drawingStroke) { + if ( + !event.isPrimary || + !this._isLeftButtonPressed(event, true) || + !this._drawingStroke + ) { // Stop when primary button not pressed or multiple buttons pressed this._strokeEnd(this._pointerEventToSignatureEvent(event), false); return;