Undoing a block move into a multi-column layout removes the block until a second undo
Les mainteneurs répondent en général sous 1 jour
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 45/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- react, typescript
Piste de recherche
Start in src/extensions/DropCursor/multiColumnHandleDropPlugin.ts, where the drop handler removes the dragged block and then rewrites the column structure in separate editor calls. Check how editor.transact() groups steps for undo, and look for an existing test covering multi-column drops to extend. Done when one undo after a drop restores the original document with the block visible.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
What’s broken?
When I drag a block to the left or right of another block to create a multi-column layout, undoing the move once makes the moved block disappear from the document. Undoing a second time restores the block to its original position.
What did you expect to happen?
A single undo should revert the entire drag-and-drop operation and restore the document to its original state, with the moved block visible in its original position.
Steps to reproduce
- Create a document with at least two blocks.
- Use a block's drag handle to move it to the left or right of another block, creating a multi-column layout.
- Trigger Undo once (for example, by clicking the editor's Undo button or calling
editor.undo()). - Observe that the moved block disappears.
- Trigger Undo again and observe that the block returns to its original position.
BlockNote version
0.55.0 (@blocknote/[email protected])
Environment
Chrome on macOS; exact browser version not recorded.
Additional context
In src/extensions/DropCursor/multiColumnHandleDropPlugin.ts, the drop handler removes the dragged block and then updates or replaces the column structure using separate editor operations. This appears to split a single drag-and-drop action into multiple undo-history steps. In a local patch, wrapping the removal and column update/replacement in editor.transact() made one undo restore the original document.
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 💖
- Langage dominant
- TypeScript
- Étoiles
- 10.3k
- Forks
- 777
- Merge moyen
- 2 j 18 h
- PR mergées (30 j)
- 41
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de TypeCellOS/BlockNote
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
TypeCellOS/BlockNote#2949 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
a11y
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
TypeCellOS/BlockNote#2855 ·
Les mainteneurs répondent en général sous 1 jour
-
a11y
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
TypeCellOS/BlockNote#2829 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Comment thread actions: hover-only controls and unlabeled buttons in ThreadsSidebaPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertea11y
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
TypeCellOS/BlockNote#2824 ·
Les mainteneurs répondent en général sous 1 jour
-
needs-triage
Difficulté 3/5 Une demi-journée Accessibilité débutants 62/100
TypeCellOS/BlockNote#3209 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de TypeCellOS/BlockNote
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Chocobozzz/PeerTube#7832 ·
Les mainteneurs répondent en général sous 3 jours
-
Pay to use?Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 66/100
darkreader/darkreader#16108 · 1 commentaire ·
Les mainteneurs répondent en général sous 2 jours
-
Add: Dak Nong TV SDOuvertecheck:passed streams:add
Difficulté 1/5 Moins d'une heure Accessibilité débutants 75/100
Les mainteneurs répondent en général sous 1 jour
-
bug engine
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
frostney/GocciaScript#1746 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
agilepathway/label-checker#739 · 4 commentaires ·
Les mainteneurs répondent en général sous 1 jour