From 4bd0e5ab1958246e0950c8fe86a7f1141a9ea575 Mon Sep 17 00:00:00 2001 From: hugo Date: Sat, 21 Feb 2026 20:53:20 +0100 Subject: [PATCH] fix: drag and drop back working --- .../components/MenuEditorView/MenuEditorView.tsx | 4 +++- tests/renderer/components/MenuEditorView.test.tsx | 10 ++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/renderer/components/MenuEditorView/MenuEditorView.tsx b/src/renderer/components/MenuEditorView/MenuEditorView.tsx index c7321a0..44c485b 100644 --- a/src/renderer/components/MenuEditorView/MenuEditorView.tsx +++ b/src/renderer/components/MenuEditorView/MenuEditorView.tsx @@ -597,8 +597,10 @@ export const MenuEditorView: React.FC = () => { setSelectedId(nodes[0]?.data.id || null); }} > - {({ node, style, tree }) => ( + {({ node, style, tree, dragHandle }) => (
setSelectedId(node.data.id)} diff --git a/tests/renderer/components/MenuEditorView.test.tsx b/tests/renderer/components/MenuEditorView.test.tsx index f9e3b67..2de53c2 100644 --- a/tests/renderer/components/MenuEditorView.test.tsx +++ b/tests/renderer/components/MenuEditorView.test.tsx @@ -105,6 +105,16 @@ describe('MenuEditorView entry editor', () => { expect(screen.getByRole('button', { name: /^delete$/i })).toBeInTheDocument(); }); + it('marks outliner rows as drag handles so drag-and-drop can start from rows', async () => { + const { container } = render(); + + await screen.findByRole('button', { name: /add entry/i }); + + const row = container.querySelector('.menu-editor-row'); + expect(row).not.toBeNull(); + expect(row).toHaveAttribute('data-drag-handle', 'true'); + }); + it('finalizes entry as page on a double-click gesture', async () => { render();