From 24eb9892ef7cb8dfbc74b191753402010b8924d8 Mon Sep 17 00:00:00 2001 From: Adam Eisenreich Date: Fri, 16 May 2025 14:33:05 +0200 Subject: [PATCH] fix: include page blur in end events for drag --- .../src/lib/split/split.component.ts | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/projects/angular-split/src/lib/split/split.component.ts b/projects/angular-split/src/lib/split/split.component.ts index 4deb472..dae82e4 100644 --- a/projects/angular-split/src/lib/split/split.component.ts +++ b/projects/angular-split/src/lib/split/split.component.ts @@ -19,7 +19,20 @@ import { } from '@angular/core' import { takeUntilDestroyed } from '@angular/core/rxjs-interop' import type { SplitAreaComponent } from '../split-area/split-area.component' -import { Subject, filter, fromEvent, map, pairwise, skipWhile, startWith, switchMap, take, takeUntil, tap } from 'rxjs' +import { + Subject, + filter, + fromEvent, + map, + merge, + pairwise, + skipWhile, + startWith, + switchMap, + take, + takeUntil, + tap, +} from 'rxjs' import { ClientPoint, createClassesString, @@ -197,7 +210,7 @@ export class SplitComponent { ), ), take(1), - takeUntil(fromMouseUpEvent(this.document, true)), + takeUntil(merge(fromMouseUpEvent(this.document, true), fromEvent(this.document, 'blur'))), tap(() => { this.ngZone.run(() => { this.dragStart.emit(this.createDragInteractionEvent(mouseDownContext.gutterIndex))