Skip to content

fix(selection): preserve live previews for multi-row drag selection - #2777

Merged
ghiscoding merged 3 commits into
masterfrom
bugfix/multi-row-selection-trim
Aug 29, 2026
Merged

fix(selection): preserve live previews for multi-row drag selection#2777
ghiscoding merged 3 commits into
masterfrom
bugfix/multi-row-selection-trim

Conversation

@ghiscoding

@ghiscoding ghiscoding commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Summary

Fix duplicate ranges and missing live decorators when using Ctrl/Cmd multi-row drag selection.

Why

Intermediate drag events were being accumulated as separate ranges. Preventing that accumulation also removed the live selection preview.

Changes

  • Preserve the original selection ranges during modifier drags.
  • Replace the temporary preview range as the pointer moves.
  • Commit only the final range on mouseup.
  • Added regression coverage for multi-section row selection.

Validation

  • 4,374 common tests passed
  • TypeScript build passed
  • Oxlint passed
  • Prettier passed
  • Scoped coverage: 100% statements, functions, and lines

Comments

Cypress was not run.

AI / LLM assistance

  • AI / LLM assistance used:
    • No
    • Yes
  • If Yes:
    • which tool/model: Codex / GPT-5.6 Luna
    • how was it used: Investigated the selection lifecycle, implemented the fix, added regression coverage, and ran validation checks.

Checklist

  • The changes are limited to only one scope.
  • Tests were added or updated where appropriate.
  • Documentation was updated where appropriate.

@codecov

codecov Bot commented Aug 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.0%. Comparing base (77f0ded) to head (6799625).
⚠️ Report is 7 commits behind head on master.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2777   +/-   ##
=======================================
  Coverage   100.0%   100.0%           
=======================================
  Files         199      199           
  Lines       25763    25773   +10     
  Branches     9128     9131    +3     
=======================================
+ Hits        25763    25773   +10     
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 28, 2026

Copy link
Copy Markdown
angular-slickgrid

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

aurelia-slickgrid

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

slickgrid-react

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

slickgrid-vue

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

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

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

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

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

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

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

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

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

@slickgrid-universal/binding

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

@slickgrid-universal/common

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

@slickgrid-universal/composite-editor-component

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

@slickgrid-universal/custom-footer-component

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

@slickgrid-universal/custom-tooltip-plugin

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

@slickgrid-universal/empty-warning-component

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

@slickgrid-universal/event-pub-sub

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

@slickgrid-universal/excel-export

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

@slickgrid-universal/graphql

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

@slickgrid-universal/odata

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

@slickgrid-universal/pagination-component

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

@slickgrid-universal/pdf-export

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

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

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

@slickgrid-universal/rxjs-observable

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

@slickgrid-universal/sql

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

@slickgrid-universal/text-export

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

@slickgrid-universal/utils

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

@slickgrid-universal/vanilla-bundle

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

@slickgrid-universal/vanilla-force-bundle

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

@slickgrid-universal/web-mcp

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

commit: 6799625

@ghiscoding
ghiscoding merged commit 9556ba1 into master Aug 29, 2026
13 checks passed
@ghiscoding
ghiscoding deleted the bugfix/multi-row-selection-trim branch August 29, 2026 03:15
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