From d72fb145c1c45b8ccbdaa63bd43bce9fa1de260e Mon Sep 17 00:00:00 2001 From: Dan Hobbs Date: Mon, 12 Dec 2022 07:33:15 +0000 Subject: [PATCH 1/5] fix: check if event is cancelable --- .../angular-resizable-element/src/lib/resizable.directive.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/projects/angular-resizable-element/src/lib/resizable.directive.ts b/projects/angular-resizable-element/src/lib/resizable.directive.ts index 561b360..64ea54a 100644 --- a/projects/angular-resizable-element/src/lib/resizable.directive.ts +++ b/projects/angular-resizable-element/src/lib/resizable.directive.ts @@ -323,7 +323,9 @@ export class ResizableDirective implements OnInit, OnDestroy { tap(({ event }) => { if (currentResize) { try { - event.preventDefault(); + if (event.cancelable) { + event.preventDefault(); + } } catch (e) { // just adding try-catch not to see errors in console if there is a passive listener for same event somewhere // browser does nothing except of writing errors to console From 55709b9cd1efce60923fe9184622469a0523e7ea Mon Sep 17 00:00:00 2001 From: Dan Hobbs Date: Mon, 12 Dec 2022 11:51:24 +0000 Subject: [PATCH 2/5] fix: simplify if statement and remove try/catch --- .../src/lib/resizable.directive.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/projects/angular-resizable-element/src/lib/resizable.directive.ts b/projects/angular-resizable-element/src/lib/resizable.directive.ts index 64ea54a..12fa44e 100644 --- a/projects/angular-resizable-element/src/lib/resizable.directive.ts +++ b/projects/angular-resizable-element/src/lib/resizable.directive.ts @@ -321,11 +321,9 @@ export class ResizableDirective implements OnInit, OnDestroy { this.mousemove ).pipe( tap(({ event }) => { - if (currentResize) { + if (currentResize && event.cancelable) { try { - if (event.cancelable) { - event.preventDefault(); - } + event.preventDefault(); } catch (e) { // just adding try-catch not to see errors in console if there is a passive listener for same event somewhere // browser does nothing except of writing errors to console From e9aadfb075deefb7d850e7f3907be8fe04ad14f1 Mon Sep 17 00:00:00 2001 From: Dan Hobbs Date: Mon, 12 Dec 2022 11:51:57 +0000 Subject: [PATCH 3/5] fix: oops, missed out the try/catch removal --- .gitignore | 2 ++ .../src/lib/resizable.directive.ts | 7 +------ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 6723602..e11beca 100644 --- a/.gitignore +++ b/.gitignore @@ -45,3 +45,5 @@ projects/angular-resizable-element/package.json # System Files .DS_Store Thumbs.db +package-lock.json +.gitignore diff --git a/projects/angular-resizable-element/src/lib/resizable.directive.ts b/projects/angular-resizable-element/src/lib/resizable.directive.ts index 12fa44e..8876518 100644 --- a/projects/angular-resizable-element/src/lib/resizable.directive.ts +++ b/projects/angular-resizable-element/src/lib/resizable.directive.ts @@ -322,12 +322,7 @@ export class ResizableDirective implements OnInit, OnDestroy { ).pipe( tap(({ event }) => { if (currentResize && event.cancelable) { - try { - event.preventDefault(); - } catch (e) { - // just adding try-catch not to see errors in console if there is a passive listener for same event somewhere - // browser does nothing except of writing errors to console - } + event.preventDefault(); } }), share() From ccab3a07cd3b59f7a0af1c3a85ff3acf917b6ea9 Mon Sep 17 00:00:00 2001 From: Dan Hobbs Date: Mon, 12 Dec 2022 12:04:29 +0000 Subject: [PATCH 4/5] fix: oops, too m,uch happy clicking to ignore --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index e11beca..600e6e3 100644 --- a/.gitignore +++ b/.gitignore @@ -46,4 +46,3 @@ projects/angular-resizable-element/package.json .DS_Store Thumbs.db package-lock.json -.gitignore From 606060814d445d4813abd01d7112f8a40d9e1472 Mon Sep 17 00:00:00 2001 From: Dan Hobbs Date: Mon, 12 Dec 2022 16:14:22 +0000 Subject: [PATCH 5/5] fix: check onMouseDown event is cancelable before calling event.preventDefault() --- .../src/lib/resize-handle.directive.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/projects/angular-resizable-element/src/lib/resize-handle.directive.ts b/projects/angular-resizable-element/src/lib/resize-handle.directive.ts index abee9e0..a4af886 100644 --- a/projects/angular-resizable-element/src/lib/resize-handle.directive.ts +++ b/projects/angular-resizable-element/src/lib/resize-handle.directive.ts @@ -103,7 +103,9 @@ export class ResizeHandleDirective implements OnInit, OnDestroy { clientX: number, clientY: number ): void { - event.preventDefault(); + if (event.cancelable) { + event.preventDefault(); + } if (!this.eventListeners.touchmove) { this.eventListeners.touchmove = this.renderer.listen( this.element.nativeElement,