diff --git a/src/hooks/useMode.js b/src/hooks/useMode.js index f575e954..46709a76 100644 --- a/src/hooks/useMode.js +++ b/src/hooks/useMode.js @@ -600,10 +600,6 @@ export function useMode() { canvas?.off('mouse:move') canvas?.off('mouse:up') canvas?.off('mouse:out') - Object.keys(mouseEvent).forEach((key) => { - canvas?.off('mouse:down', mouseEvent[key]) - document.removeEventListener('contextmenu', mouseEvent[key]) - }) Object.keys(keyboardEvent).forEach((key) => { document.removeEventListener('keydown', keyboardEvent[key]) @@ -687,6 +683,7 @@ export function useMode() { const changeMode = (canvas, mode) => { mouseAndkeyboardEventClear() + addCommonMouseEvent() setMode(mode) setCanvas(canvas) @@ -695,9 +692,6 @@ export function useMode() { changeMouseEvent(mode) changeKeyboardEvent(mode) - canvas?.on('mouse:move', drawMouseLines) - canvas?.on('mouse:out', removeMouseLines) - switch (mode) { case 'template': templateMode() @@ -729,6 +723,12 @@ export function useMode() { } } + // 모든 모드에서 사용되는 공통 이벤트 추가 + const addCommonMouseEvent = () => { + canvas?.on('mouse:move', drawMouseLines) + canvas?.on('mouse:out', removeMouseLines) + } + const changeKeyboardEvent = (mode) => { if (mode === Mode.EDIT) { switch (mode) {