diff --git a/packages/excalidraw/components/App.tsx b/packages/excalidraw/components/App.tsx index b8aa605fe..a6bac55f1 100644 --- a/packages/excalidraw/components/App.tsx +++ b/packages/excalidraw/components/App.tsx @@ -6386,7 +6386,7 @@ class App extends React.Component { // we must exit before we set `cursorButton` state and `savePointer` // else it will send pointer state & laser pointer events in collab when // panning - if (this.handleCanvasPanUsingWheelOrSpaceDragOrRightClickHold(event)) { + if (this.handleCanvasPan(event)) { return; } @@ -6709,7 +6709,7 @@ class App extends React.Component { }; // Returns whether the event is a panning - public handleCanvasPanUsingWheelOrSpaceDragOrRightClickHold = ( + public handleCanvasPan = ( event: React.PointerEvent | MouseEvent, ): boolean => { const isRightClickDragging = event.button === POINTER_BUTTON.SECONDARY; @@ -6816,14 +6816,14 @@ class App extends React.Component { }); this.savePointer(event.clientX, event.clientY, "up"); window.removeEventListener(EVENT.POINTER_MOVE, onPointerMove); + window.removeEventListener(EVENT.POINTER_UP, teardown); + window.removeEventListener(EVENT.BLUR, teardown); + onPointerMove.flush(); if (!hasDragged && isRightClickDragging) { this.handleCanvasContextMenu( event as React.MouseEvent, ); } - window.removeEventListener(EVENT.POINTER_UP, teardown); - window.removeEventListener(EVENT.BLUR, teardown); - onPointerMove.flush(); }), ); window.addEventListener(EVENT.BLUR, teardown); diff --git a/packages/excalidraw/element/textWysiwyg.tsx b/packages/excalidraw/element/textWysiwyg.tsx index 418ee30c8..7be3af3b7 100644 --- a/packages/excalidraw/element/textWysiwyg.tsx +++ b/packages/excalidraw/element/textWysiwyg.tsx @@ -640,7 +640,7 @@ export const textWysiwyg = ({ // trying to pan by clicking inside text area itself -> handle here if (target instanceof HTMLTextAreaElement) { event.preventDefault(); - app.handleCanvasPanUsingWheelOrSpaceDragOrRightClickHold(event); + app.handleCanvasPan(event); } temporarilyDisableSubmit(); return;