From a793e65560e1faf1865c34f69110497b6d1b3f80 Mon Sep 17 00:00:00 2001 From: Philipinho <16838612+Philipinho@users.noreply.github.com> Date: Sun, 24 May 2026 12:31:08 +0100 Subject: [PATCH] fix(base): suppress prosemirror dropcursor inside base-embed atom --- .../editor-ext/src/lib/base-embed/base-embed.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/editor-ext/src/lib/base-embed/base-embed.ts b/packages/editor-ext/src/lib/base-embed/base-embed.ts index 5c2ab7a07..b4e5f67c8 100644 --- a/packages/editor-ext/src/lib/base-embed/base-embed.ts +++ b/packages/editor-ext/src/lib/base-embed/base-embed.ts @@ -27,6 +27,20 @@ export const BaseEmbed = Node.create({ return { HTMLAttributes: {} }; }, + // prosemirror-dropcursor draws a block-boundary indicator on every + // `dragover` it sees. Pragmatic-dnd (used for column / choice reorder + // inside the embed) fires native `dragstart`/`dragover`, which bubble + // up to the editor and trigger dropcursor — visible as a stray blue + // line above or below the embed during an internal drag. The cursor + // event lands over the atom node, so dropcursor consults + // `disableDropCursor` on this node spec; returning true suppresses + // the indicator while still letting pragmatic-dnd handle the drag. + extendNodeSchema(extension) { + return extension.name === 'baseEmbed' + ? { disableDropCursor: true } + : {}; + }, + addAttributes() { return { pageId: {