fix dragMove running after dragEnd

This commit is contained in:
Aran-Fey
2024-12-06 23:54:51 +01:00
parent 7145a9944e
commit badb9acc3f
2 changed files with 5 additions and 6 deletions

View File

@@ -268,7 +268,6 @@ export class DrawerComponent extends ComponentBase {
) {
this.openFractionAtDragStart = this.openFraction;
this.dragStartedAt = relevantClickCoordinate;
markEventAsHandled(event);
return true;
}
@@ -283,8 +282,6 @@ export class DrawerComponent extends ComponentBase {
}
dragMove(event: PointerEvent) {
markEventAsHandled(event);
// Account for the side of the drawer
let relevantCoordinate, drawerSize;
@@ -314,8 +311,6 @@ export class DrawerComponent extends ComponentBase {
}
endDrag(event: PointerEvent): void {
markEventAsHandled(event);
// Snap to fully open or fully closed
let threshold = this.openFractionAtDragStart > 0.5 ? 0.75 : 0.25;

View File

@@ -147,7 +147,11 @@ export class DragHandler extends EventHandler {
// triggered if mousedown and mouseup happened on the same element.)
//
// Workaround: Delay the disconnect a little bit.
requestAnimationFrame(() => this._disconnectDragListeners());
window.removeEventListener("pointermove", this.onPointerMove, true);
window.removeEventListener("pointerup", this.onPointerUp, true);
requestAnimationFrame(() =>
window.removeEventListener("click", this.onClick, true)
);
this.onEnd(event);
}