jspreadsheet / jspreadsheet/ce

Page scrolls to top after keyboard-only interaction (Copy + Edit via F2 + Enter) — observed in v4 and v5

Open
#1,761 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
7.2k
Forks
890
PR merge metrics
No merged PRs in 30d

Description

A user experience issue in Jspreadsheet CE (tested on both v4 and v5) where the screen scrolls to the top unexpectedly during keyboard-only operations.

🔄 Steps to Reproduce
Navigate to a spreadsheet table with scrollable content.

  1. Select a cell or a column
  2. Press Ctrl+C to copy.
  3. Press F2 to enter edit mode.
  4. Press Enter to confirm the value.

🧪 Observed Behavior
After pressing Enter, the page scrolls to the top — which disrupts user focus and context.
No error appears in the console.

✅ Expected Behavior
The cell should update and focus should remain on the same row without affecting the scroll position.

🔍 Additional Notes
This issue appears only when using the keyboard (no mouse interaction involved).
Similar issues have been reported earlier:
https://github.com/jspreadsheet/ce/issues/980
We're currently unable to trace the exact cause but believe it's triggered internally during cell re-render or focus.

📦 Environment
Library: Jspreadsheet CE v4 & v5
Browser: Reproducible on latest Chrome

Is this a known regression? Any workaround or fix suggestion would be appreciated.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue in a scrollable Jspreadsheet CE table on the latest Chrome using the Ctrl+C, F2, and Enter sequence, then compare keyboard-only behavior with mouse interaction. Review the related issue #980 and investigate the internal cell re-render or focus path. Done means the edited cell retains focus and row position without scrolling the page to the top in both v4 and v5.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.