Skip to content

Fix: Vertical scrolling causes OffscreenCanvas loss in Grid cells #8960

@tobiu

Description

@tobiu

We are observing a glitch where vertically scrolling the grid can cause some OffscreenCanvas instances (like Sparklines) to be "lost" or appear blank.

Analysis:
This likely relates to the buffered row range mechanism in Neo.grid.Body. When rows are recycled or moved, the VDOM diffing engine might be generating move operations or destructive updates that interfere with the OffscreenCanvas persistence, similar to the horizontal scrolling issue but on the vertical axis.

Investigation Plan:

  1. Inspect src/grid/Body.mjs and its row recycling/buffering logic.
  2. Analyze VDOM deltas during vertical scrolling to identify if DOM nodes are being destroyed/recreated instead of moved/updated.
  3. Ensure that canvas elements within the recycled rows maintain their worker association.

Goal:
Ensure OffscreenCanvas instances remain stable and connected to their workers during vertical scrolling and row recycling.

Metadata

Metadata

Assignees

Labels

aibugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions