Editor in dialog overlapping another breaks SideMenu and drag-and-drop
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 50/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- react, typescript
- Lĩnh vực
- frontend
Hướng nghiên cứu
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.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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 💖
- Ngôn ngữ chính
- TypeScript
- Star
- 10.2k
- Fork
- 772
- Merge trung bình
- 6 ngày 21 giờ
- Pull request đã merge (30 ngày)
- 26
Chuẩn bị môi trường
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của TypeCellOS/BlockNote
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
TypeCellOS/BlockNote#2949 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
a11y
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
TypeCellOS/BlockNote#2855 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
a11y
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
TypeCellOS/BlockNote#2829 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
a11y
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
TypeCellOS/BlockNote#2824 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
a11y
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
TypeCellOS/BlockNote#2811 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của TypeCellOS/BlockNote
Issue tương tự
-
Add: Digi World (Romania) SDĐang mởcheck:passed streams:add
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Fission-AI/OpenSpec#1986 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
nestjs/docs.nestjs.com#3554 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
publicodes/publicodes#868 ·
-
namespace operations
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
EclipseFdn/open-vsx.org#13488 ·
Maintainer thường phản hồi trong vòng 2 ngày