Skip to content
Bug reportOct 28, 2026· 0:26· 9 views

BlockNote: ArrowUp from empty check list item jumps above the list instead of to the previous item

0:26 total

Comments · 0

Be the first to comment.

Bug reportby SceneRecap AI

mediumBlockNote keyboard navigation (ArrowUp handling) for checkListItem blocks, especially empty check list items with placeholder content.
os: macOSdpr: 1url: /examples/basic/minimalpage: BlockNote - Basic Setuplocale: en-USbrowser: Chromium 151.0.7922.34timezone: Europe/Berlinviewport: 1280x720

Repro steps

  1. 1.Open the Basic Setup example at /examples/basic/minimal.
  2. 2.Click into the BlockNote editor textbox.
  3. 3.Type 'anchor' and press Enter.
  4. 4.Type '/check' and press Enter to pick 'Check List' from the slash menu.
  5. 5.Type 'deed' and press Enter, then 'de' and Enter, then 'de' and Enter. This leaves an empty check list item at the bottom with the caret in it.
  6. 6.Press ArrowUp in the empty check list item.
  7. 7.Press ArrowDown three times.

Expected

ArrowUp from the empty last check list item moves the caret to the end of the previous item, the second 'de' item.

Actual

After ArrowUp the caret is no longer visible in the empty item, and it is not visible in the 'de' item above it. The title reports that the caret jumps above the list. At 17.0s the block side menu shows beside the 'anchor' paragraph. After the ArrowDown presses, the caret is back in the empty check list item at 19.0s.

Evidence

visualControl: the slash menu filtered by '/check' shows 'Check List' under 'Basic blocks', and picking it creates a check list item.
visualControl: Enter in check list items creates new items as expected. The list shows deed, de, de and an empty item with the caret in it.
visualBefore ArrowUp, the caret is in the empty 'List' placeholder item.
visualAfter ArrowUp at 14.0s, no caret is visible in the empty item and none is visible at the end of the 'de' item above it.
visualThe block side menu (plus and drag handle) shows beside the 'anchor' paragraph above the list.
visualAfter ArrowDown presses at 17.7s and 18.5s, the caret is back in the empty check list item.
consoleMany 'preloaded using link preload but not used' warnings for avatar and sponsor images. These look unrelated to the editor behavior.
Issue markdown (copy-paste ready)
## Summary
In the Basic Setup example, pressing ArrowUp in an empty check list item does not move the caret to the previous check list item. The title reports that the caret jumps above the list.

## Environment
- Chromium 151.0.7922.34, macOS
- Viewport 1280x720, DPR 1
- URL: /examples/basic/minimal (BlockNote - Basic Setup)

## Steps to reproduce
1. Open /examples/basic/minimal (0s).
2. Click into the BlockNote editor (2.9s).
3. Type `anchor` and press Enter (4.9s).
4. Type `/check` and press Enter to pick **Check List** (7.5s).
5. Type `deed` and Enter, then `de` and Enter, then `de` and Enter. The caret is now in an empty check list item (10.8s).
6. Press ArrowUp (14.0s).

## Expected
The caret moves to the end of the previous item, the second `de` item.

## Actual
- At 15.0s the caret is not visible in the empty item, and not visible in the `de` item above it.
- At 17.0s the block side menu shows beside the `anchor` paragraph above the list.
- After the ArrowDown presses (17.7s, 18.5s), the caret is back in the empty check list item at 19.0s.

## Control (working)
- The slash menu shows **Check List** for `/check` and creates a check list item (7.0s).
- Enter inside check list items creates new items as expected (11.0s).

## Evidence
- Console at 3.0s: many link preload warnings for avatar and sponsor images. These look unrelated.
- No network errors were captured.

## Suggested area
ArrowUp keyboard handling for `checkListItem` blocks, especially empty items that show placeholder content.

*Recorded with SceneRecap.*

Your recordings could explain themselves too.

Free plan · silent recordings welcome · bug reports included.

Try SceneRecap free →
BlockNote: ArrowUp from empty check list item jumps above the list instead of to the previous item · SceneRecap