diff --git a/src/index.ts b/src/index.ts index 7f9ff9a..9ae76f5 100644 --- a/src/index.ts +++ b/src/index.ts @@ -27,6 +27,8 @@ function onTouchstart( e:TouchEvent ) { // only allow one drag operation at a time if( activeDragOperation ) { console.log( "dnd-poly: drag operation already active" ); + // try avoid infinite loop on iOS if something happened with draggable dom object (disappeared or changed during drag) + activeDragOperation._cleanup(); return; } diff --git a/src/internal/drag-operation-controller.ts b/src/internal/drag-operation-controller.ts index 2a20d4d..a88722b 100644 --- a/src/internal/drag-operation-controller.ts +++ b/src/internal/drag-operation-controller.ts @@ -245,7 +245,7 @@ export class DragOperationController { return true; } - private _cleanup() { + public _cleanup() { console.log( "dnd-poly: cleanup" );