diff options
| author | bobzel <zzzman@gmail.com> | 2021-09-14 16:07:51 -0400 | 
|---|---|---|
| committer | bobzel <zzzman@gmail.com> | 2021-09-14 16:07:51 -0400 | 
| commit | 0fa9fd0f1c51c5a121a212635395bdb63ac28cd6 (patch) | |
| tree | e7c98de1591146cf2a50c513a669d5b7308aea46 /src/client/util/DragManager.ts | |
| parent | abc5f96945fc0716fb1ccb4c99005bc7b7473086 (diff) | |
| parent | 301652c454f3b74815aa7be2f2159e0a61d14e0b (diff) | |
merged with master
Diffstat (limited to 'src/client/util/DragManager.ts')
| -rw-r--r-- | src/client/util/DragManager.ts | 12 | 
1 files changed, 6 insertions, 6 deletions
| diff --git a/src/client/util/DragManager.ts b/src/client/util/DragManager.ts index 5e16de617..f7ef9ae6f 100644 --- a/src/client/util/DragManager.ts +++ b/src/client/util/DragManager.ts @@ -425,10 +425,10 @@ export namespace DragManager {          AbortDrag = () => {              options?.dragComplete?.(new DragCompleteEvent(true, dragData)); -            endDrag(); +            cleanupDrag();          }; -        const endDrag = action(() => { +        const cleanupDrag = action(() => {              hideDragShowOriginalElements(false);              document.removeEventListener("pointermove", moveHandler, true);              document.removeEventListener("pointerup", upHandler); @@ -518,15 +518,14 @@ export namespace DragManager {                  `translate(${(xs[i] += moveVec.x) + (options?.offsetX || 0)}px, ${(ys[i] += moveVec.y) + (options?.offsetY || 0)}px)  scale(${scaleXs[i]}, ${scaleYs[i]})`)              );          }; -        const upHandler = async (e: PointerEvent) => { -            dispatchDrag(document.elementFromPoint(e.x, e.y) || document.body, e, new DragCompleteEvent(false, dragData), snapDrag(e, xFromLeft, yFromTop, xFromRight, yFromBottom), finishDrag, options); -            endDrag(); +        const upHandler = (e: PointerEvent) => { +            dispatchDrag(document.elementFromPoint(e.x, e.y) || document.body, e, new DragCompleteEvent(false, dragData), snapDrag(e, xFromLeft, yFromTop, xFromRight, yFromBottom), finishDrag, options, cleanupDrag);          };          document.addEventListener("pointermove", moveHandler, true);          document.addEventListener("pointerup", upHandler);      } -    async function dispatchDrag(target: Element, e: PointerEvent, complete: DragCompleteEvent, pos: { x: number, y: number }, finishDrag?: (e: DragCompleteEvent) => void, options?: DragOptions) { +    async function dispatchDrag(target: Element, e: PointerEvent, complete: DragCompleteEvent, pos: { x: number, y: number }, finishDrag?: (e: DragCompleteEvent) => void, options?: DragOptions, endDrag?: () => void) {          const dropArgs = {              bubbles: true,              detail: { @@ -543,5 +542,6 @@ export namespace DragManager {          await finishDrag?.(complete);          target.dispatchEvent(new CustomEvent<DropEvent>("dashOnDrop", dropArgs));          options?.dragComplete?.(complete); +        endDrag?.();      }  }
\ No newline at end of file | 
