Skip to content

fix: reset freeze pane split positions when switching sheets (#9035) (CP: 25.0)#9045

Merged
DiegoCardoso merged 2 commits into25.0from
cherry-pick-9035-to-25.0-1774866673000
Mar 30, 2026
Merged

fix: reset freeze pane split positions when switching sheets (#9035) (CP: 25.0)#9045
DiegoCardoso merged 2 commits into25.0from
cherry-pick-9035-to-25.0-1774866673000

Conversation

@vaadin-bot
Copy link
Copy Markdown
Collaborator

This PR cherry-picks changes from the original PR #9035 to branch 25.0.


Summary

  • Fixes freeze pane state bleeding between sheets when switching tabs in Spreadsheet
  • When switching from a sheet with a freeze pane split to one without that split type, the previous sheet's split position was not reset to 0, causing it to persist visually
  • Root cause: commit a1963f9 guarded setHorizontalSplitPosition/setVerticalSplitPosition behind split-exists checks but the else branches never explicitly reset the positions to 0

Fixes #9006

Test plan

  • New unit tests in SpreadsheetFactoryTest verify all freeze pane combinations (both splits, only rows, only columns, none) and the sheet-switching bleed scenario
  • Rollback verification: 3 of 5 unit tests fail without the fix, pass with it
  • Existing regression tests (HiddenAndFrozenIT, LoadFileWithFrozenPaneScrolledIT, MergedCellFrozenIT) all pass

🤖 Generated with Claude Code

DiegoCardoso and others added 2 commits March 30, 2026 10:31
## Summary
- Fixes freeze pane state bleeding between sheets when switching tabs in
Spreadsheet
- When switching from a sheet with a freeze pane split to one without
that split type, the previous sheet's split position was not reset to 0,
causing it to persist visually
- Root cause: commit a1963f9 guarded
`setHorizontalSplitPosition`/`setVerticalSplitPosition` behind
split-exists checks but the `else` branches never explicitly reset the
positions to 0

Fixes #9006

## Test plan
- [x] New unit tests in `SpreadsheetFactoryTest` verify all freeze pane
combinations (both splits, only rows, only columns, none) and the
sheet-switching bleed scenario
- [x] Rollback verification: 3 of 5 unit tests fail without the fix,
pass with it
- [x] Existing regression tests (`HiddenAndFrozenIT`,
`LoadFileWithFrozenPaneScrolledIT`, `MergedCellFrozenIT`) all pass

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@sonarqubecloud
Copy link
Copy Markdown

@DiegoCardoso DiegoCardoso enabled auto-merge (squash) March 30, 2026 12:16
@DiegoCardoso DiegoCardoso merged commit 442d20f into 25.0 Mar 30, 2026
6 checks passed
@DiegoCardoso DiegoCardoso deleted the cherry-pick-9035-to-25.0-1774866673000 branch March 30, 2026 12:16
@vaadin-bot
Copy link
Copy Markdown
Collaborator Author

This ticket/PR has been released with Vaadin 25.0.9.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants