mgradwohl / mgradwohl/tasksmack
[Feature] Multi-Select and Batch Process Actions
- Dominant language
- C++
- Stars
- 1
- Forks
- 0
- Avg merge
- 3h 4m
- Merged PRs (30d)
- 115
Description
## Problem Statement
`ProcessesPanel` supports selecting one process at a time. There's no way to select several processes and act on all of them at once (e.g. "kill all chrome processes," "renice this whole group") — a standard capability in Task Manager alternatives and Process Explorer-style tools.
## Proposed Solution
Ctrl/Shift-click multi-selection in the process table; batch terminate/priority-change actions operating over the current selection, reusing the existing single-process action and confirmation-dialog pattern with a summary of what's about to happen.
## Alternatives Considered
Rely on filtering to narrow down to the target processes and act one at a time — rejected, since the entire point of batch actions is acting on many matches at once without repeating the same action N times.
## Additional Context
n/a
## Implementation Notes
`ProcessesPanel.cpp` currently tracks a single selected PID. Needs a set-based selection model, `ImGui::Selectable` with range/ctrl-select flags, and `IProcessActions` calls iterated over the selection behind one confirmation dialog.
Contributor guide
Research direction
Start in ProcessesPanel.cpp to trace the current single-PID selection and action flow, then inspect IProcessActions and the existing confirmation-dialog pattern. Implement Ctrl/Shift multi-selection and batch terminate or priority-change actions, with one confirmation summary for the selected processes. Done means several processes can be selected and acted on together without repeating the action individually.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop, operating-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100