Skip to content

fix(slickgrid): prevent native wheel drift with frozen columns - #2737

Merged
ghiscoding merged 1 commit into
masterfrom
bugfix/frozen-mousewheel-scroll
Aug 18, 2026
Merged

fix(slickgrid): prevent native wheel drift with frozen columns#2737
ghiscoding merged 1 commit into
masterfrom
bugfix/frozen-mousewheel-scroll

Conversation

@ghiscoding

@ghiscoding ghiscoding commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Summary

Fix wheel-scroll drift when using frozen columns.

When SlickGrid handles a wheel event, it updates the scrolling viewport and mirrors the vertical position to the frozen-column pane. The browser could then apply its native wheel scroll as well, briefly advancing the main viewport ahead of the frozen pane.

Changes

  • Prevent the native wheel default only after SlickGrid has handled the event and frozen columns are enabled.
  • Keep existing event propagation behavior.
  • Leave regular, non-frozen grid scrolling unchanged.

Test Coverage

  • Updated the frozen columns/rows mousewheel regression test to verify that the handled wheel event calls preventDefault().
  • slickGrid.spec.ts: 428 tests passing.

Scope

This fixes wheel and touchpad scrolling handled by SlickGrid. Native scrollbar-thumb dragging remains unchanged.

LLM model attribution

This PR was assisted by Codex GPT-5.6-Terra.

bug demo

Screencast_20260817_193846.webm

with fix

Screencast_20260817_193728.webm

@codecov

codecov Bot commented Aug 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.0%. Comparing base (75d6a2e) to head (c88e6ce).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2737   +/-   ##
=======================================
  Coverage   100.0%   100.0%           
=======================================
  Files         200      200           
  Lines       25569    25571    +2     
  Branches     9037     9038    +1     
=======================================
+ Hits        25569    25571    +2     
Flag Coverage Δ
angular 100.0% <ø> (ø)
universal 100.0% <100.0%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pkg-pr-new

pkg-pr-new Bot commented Aug 17, 2026

Copy link
Copy Markdown
angular-slickgrid

npm i https://pkg.pr.new/angular-slickgrid@2737

aurelia-slickgrid

npm i https://pkg.pr.new/aurelia-slickgrid@2737

slickgrid-react

npm i https://pkg.pr.new/slickgrid-react@2737

slickgrid-vue

npm i https://pkg.pr.new/slickgrid-vue@2737

@slickgrid-universal/angular-row-detail-plugin

npm i https://pkg.pr.new/@slickgrid-universal/angular-row-detail-plugin@2737

@slickgrid-universal/aurelia-row-detail-plugin

npm i https://pkg.pr.new/@slickgrid-universal/aurelia-row-detail-plugin@2737

@slickgrid-universal/react-row-detail-plugin

npm i https://pkg.pr.new/@slickgrid-universal/react-row-detail-plugin@2737

@slickgrid-universal/vue-row-detail-plugin

npm i https://pkg.pr.new/@slickgrid-universal/vue-row-detail-plugin@2737

@slickgrid-universal/binding

npm i https://pkg.pr.new/@slickgrid-universal/binding@2737

@slickgrid-universal/common

npm i https://pkg.pr.new/@slickgrid-universal/common@2737

@slickgrid-universal/composite-editor-component

npm i https://pkg.pr.new/@slickgrid-universal/composite-editor-component@2737

@slickgrid-universal/custom-footer-component

npm i https://pkg.pr.new/@slickgrid-universal/custom-footer-component@2737

@slickgrid-universal/custom-tooltip-plugin

npm i https://pkg.pr.new/@slickgrid-universal/custom-tooltip-plugin@2737

@slickgrid-universal/empty-warning-component

npm i https://pkg.pr.new/@slickgrid-universal/empty-warning-component@2737

@slickgrid-universal/event-pub-sub

npm i https://pkg.pr.new/@slickgrid-universal/event-pub-sub@2737

@slickgrid-universal/excel-export

npm i https://pkg.pr.new/@slickgrid-universal/excel-export@2737

@slickgrid-universal/graphql

npm i https://pkg.pr.new/@slickgrid-universal/graphql@2737

@slickgrid-universal/odata

npm i https://pkg.pr.new/@slickgrid-universal/odata@2737

@slickgrid-universal/pagination-component

npm i https://pkg.pr.new/@slickgrid-universal/pagination-component@2737

@slickgrid-universal/pdf-export

npm i https://pkg.pr.new/@slickgrid-universal/pdf-export@2737

@slickgrid-universal/row-detail-view-plugin

npm i https://pkg.pr.new/@slickgrid-universal/row-detail-view-plugin@2737

@slickgrid-universal/rxjs-observable

npm i https://pkg.pr.new/@slickgrid-universal/rxjs-observable@2737

@slickgrid-universal/sql

npm i https://pkg.pr.new/@slickgrid-universal/sql@2737

@slickgrid-universal/text-export

npm i https://pkg.pr.new/@slickgrid-universal/text-export@2737

@slickgrid-universal/utils

npm i https://pkg.pr.new/@slickgrid-universal/utils@2737

@slickgrid-universal/vanilla-bundle

npm i https://pkg.pr.new/@slickgrid-universal/vanilla-bundle@2737

@slickgrid-universal/vanilla-force-bundle

npm i https://pkg.pr.new/@slickgrid-universal/vanilla-force-bundle@2737

@slickgrid-universal/web-mcp

npm i https://pkg.pr.new/@slickgrid-universal/web-mcp@2737

commit: c88e6ce

@ghiscoding
ghiscoding merged commit 0be7225 into master Aug 18, 2026
14 checks passed
@ghiscoding
ghiscoding deleted the bugfix/frozen-mousewheel-scroll branch August 18, 2026 02:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant