Editor in dialog overlapping another breaks SideMenu and drag-and-drop
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 50/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- react, typescript
- Bereich
- frontend
Rechercherichtung
Start in packages/core/src/extensions/SideMenu/SideMenu.ts at findClosestEditorElement, then reproduce the overlapping-editor case using the linked demo. Trace how SideMenu hover detection and drag-and-drop choose an editor; done means the topmost editor handles both interactions without breaking ordinary editor behavior.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
What’s broken?
We have a setup with an editor and a button next to it that opens another editor instance in a dialog above it. In areas where the two editors directly overlap, the SideMenu does not appear in the topmost editor. Drag and drop is also not possible in these overlapping areas.
https://github.com/user-attachments/assets/be553b97-812c-487e-9f84-7aa12d7f9e20
The root cause is likely in findClosestEditorElement (in SideMenu.ts) because it does not consider the z-axis stacking order when determining the editor element.
What did you expect to happen?
Option 1
Ensure Sidebar and drag-and-drop interactions only consider the topmost editor.
Option 2
Add an option to exclude specific editors (for example editors behind a dialog) from the hover and drag detection logic.
Steps to reproduce
Having an editor in a dialog above another editor
Demo:
https://react-shadcn-blockno-nf9x.bolt.host
BlockNote version
No response
Environment
No response
Additional context
No response
Contribution
- I'd be interested in contributing a fix for this issue
Sponsor
- I'm a sponsor and would appreciate if you could look into this sooner than later 💖
- Vorherrschende Sprache
- TypeScript
- Sterne
- 10.2k
- Forks
- 772
- Ø Merge
- 6 T. 3 Std.
- Gemergte PRs (30 T.)
- 26
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus TypeCellOS/BlockNote
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
TypeCellOS/BlockNote#2949 · 1 Kommentar ·
-
a11y
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
TypeCellOS/BlockNote#2855 ·
-
a11y
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
TypeCellOS/BlockNote#2829 · 1 Kommentar ·
-
a11y
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
TypeCellOS/BlockNote#2824 ·
-
a11y
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
TypeCellOS/BlockNote#2811 ·
Alle Issues in TypeCellOS/BlockNote
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
bcgov/bc-wallet-mobile#4761 · 1 Kommentar ·
-
external-issue to-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
-
area-deployment area-integrations triage:bot-seen
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 86/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
-
refactor
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100