Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Undoing a block move into a multi-column layout removes the block until a second undo

Ouverte
#3,197 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

@adarshsm y travaille déjà.

Depuis le 16/10/2026.

  • #3207 par @adarshsm — ouverte

É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
Domaine
frontend, web-dev

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

needs-triage
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
  1. Create a document with at least two blocks.
  2. Use a block's drag handle to move it to the left or right of another block, creating a multi-column layout.
  3. Trigger Undo once (for example, by clicking the editor's Undo button or calling editor.undo()).
  4. Observe that the moved block disappears.
  5. 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

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de TypeCellOS/BlockNote

Toutes les issues de TypeCellOS/BlockNote

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.