From 7d2f7e8cd0feb3c482119edd0c92ecf89cf063eb Mon Sep 17 00:00:00 2001 From: jisangs Date: Sat, 16 May 2026 10:00:53 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B9=B4=EB=93=9C=20=EB=93=9C=EB=9E=98?= =?UTF-8?q?=EA=B7=B8=EC=8B=9C=20=EB=92=B7=EC=AA=BD=EC=97=90=20=EC=9E=88?= =?UTF-8?q?=EB=8A=94=20=EC=B9=B4=EB=93=9C=EC=AA=BD=20=EC=9C=84=EC=B9=98=20?= =?UTF-8?q?=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/renderer/handlers/drag-drop.js | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/src/renderer/handlers/drag-drop.js b/src/renderer/handlers/drag-drop.js index 7e57ec9..604878e 100644 --- a/src/renderer/handlers/drag-drop.js +++ b/src/renderer/handlers/drag-drop.js @@ -114,13 +114,7 @@ function _onDragEnter(e) { if (isSrc) return; _dropTargetIdx = idx; - - // 플레이스홀더를 삽입될 위치로 이동 - if (dragMode === 'single' && dragSrcIdx < idx) { - _grid.insertBefore(_placeholder, this.nextSibling); // 오른쪽으로 이동: 타겟 뒤 - } else { - _grid.insertBefore(_placeholder, this); // 왼쪽 이동 또는 multi: 타겟 앞 - } + _grid.insertBefore(_placeholder, this); } function _onDragLeave() { @@ -243,9 +237,9 @@ function _onGridDrop(e) { function _moveSingle(srcIdx, targetIdx) { const [moved] = _state.files.splice(srcIdx, 1); - _state.files.splice(targetIdx, 0, moved); + const insertAt = srcIdx < targetIdx ? targetIdx - 1 : targetIdx; + _state.files.splice(insertAt, 0, moved); - // 플레이스홀더 제거 후 소스 카드 복원 if (_placeholder.parentNode) _placeholder.parentNode.removeChild(_placeholder); const srcCard = _getCardEl(srcIdx); const targetCard = _getCardEl(targetIdx); @@ -253,11 +247,7 @@ function _moveSingle(srcIdx, targetIdx) { if (srcCard) { if (targetCard) { - if (srcIdx < targetIdx) { - _grid.insertBefore(srcCard, targetCard.nextSibling); - } else { - _grid.insertBefore(srcCard, targetCard); - } + _grid.insertBefore(srcCard, targetCard); } else { _grid.appendChild(srcCard); }