CellSelector: Support Ctrl+Click for noncontiguous cell selection and quick deselect with click
@simlin is already working on this.
Since Oct 2, 2025.
- Dominant language
- JavaScript
- Stars
- 3.3k
- Forks
- 1.3k
- PR merge metrics
- No merged PRs in 30d
Description
Why are you proposing this feature?
Summary
Please enhance sap.m.plugins.CellSelector to improve ad-hoc cell selection workflows in data tables:
Ctrl+Click add/remove: Allow selecting multiple, non-adjacent cells by holding Ctrl and clicking cells.
Click to deselect: Allow deselecting a cell by clicking it again (toggle), and/or provide an option to clear the entire selection when clicking outside the current selection.
Motivation / Use case
In analysis scenarios users often need to copy or operate on scattered cells (e.g., “A2, C2, F7”) without selecting whole ranges. Excel-style interactions (Ctrl+Click to add/remove individual cells) are familiar and reduce steps versus drawing multiple ranges. Quick deselect avoids reaching for a separate “clear selection” action.
Current behavior
CellSelector supports contiguous ranges via drag/shift and keyboard navigation, with incremental improvements in recent releases, but noncontiguous selection via Ctrl+Click isn’t available and deselect is not straightforward. See recent notes mentioning CellSelector improvements (selection behavior and ranges) in the 1.120 line.
How should a possible solution look like?
Proposed behavior
Ctrl+Click (Windows/Linux) / Cmd+Click (macOS) toggles the clicked cell’s membership in the current selection set without affecting other selected cells.
Click on an already-selected cell toggles it off (deselect).
Optional config flags (API proposal below) to tailor behavior:
enableNonContiguousSelection: boolean (default false)
toggleOnClickSelected: boolean (default true when non-contiguous is enabled)
clearOnBackgroundClick: boolean (default false)
Keyboard parity (optional but nice-to-have): a shortcut to “add/remove selection” mode similar to other tools.
Are there alternative approaches?
No response
Any further information you would like to share?
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.