From 69393cfeddaf6418aa86c906ed11d010165a50f5 Mon Sep 17 00:00:00 2001 From: mkcash <35645504+mkcash@users.noreply.github.com> Date: Mon, 25 May 2026 13:56:35 +0800 Subject: [PATCH] [ baobao ] Fix drag handle vertical alignment for table blocks #2604 --- packages/core/src/extensions/SideMenu/SideMenu.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/core/src/extensions/SideMenu/SideMenu.ts b/packages/core/src/extensions/SideMenu/SideMenu.ts index e98059b585..898149ea35 100644 --- a/packages/core/src/extensions/SideMenu/SideMenu.ts +++ b/packages/core/src/extensions/SideMenu/SideMenu.ts @@ -242,6 +242,11 @@ export class SideMenuView< if (this.editor.isEditable) { const blockContentBoundingBox = block.node.getBoundingClientRect(); const column = block.node.closest("[data-node-type=column]"); + const blockNodeElement = block.node; + const tableElement = blockNodeElement.querySelector("[data-node-type=tableContent]"); + const yPos = tableElement + ? blockContentBoundingBox.y + (tableElement.getBoundingClientRect().top - blockContentBoundingBox.top) / 2 + : blockContentBoundingBox.y; this.state = { show: true, referencePos: new DOMRect( @@ -254,7 +259,7 @@ export class SideMenuView< : ( this.pmView.dom.firstChild as HTMLElement ).getBoundingClientRect().x, - blockContentBoundingBox.y, + yPos, blockContentBoundingBox.width, blockContentBoundingBox.height, ),