Skip to content

GUI: Select All / Deselect All act on the filtered list - #100

Merged
abrignoni merged 1 commit into
mainfrom
fix/select-all-respects-filter
Jul 28, 2026
Merged

GUI: Select All / Deselect All act on the filtered list#100
abrignoni merged 1 commit into
mainfrom
fix/select-all-respects-filter

Conversation

@abrignoni

Copy link
Copy Markdown
Owner

When a filter is applied the module list only shows matching modules, but Select All / Deselect All still walked the entire list — so they toggled modules that were not on screen. Filtering to chrome and pressing Select All selected every module in the tool.

Both buttons now act on the modules matching the active filter (i.e. exactly what is displayed). The match test used by filter_modules is factored into a shared module_matches_filter() so the buttons and the list can never disagree about what counts as visible.

No regression when unfiltered: an empty filter term matches every module, so Select All with no filter behaves exactly as before. Selections made under one filter are left untouched when the filter changes.

Verified: compiles; behavioral test covers unfiltered select/deselect, filtered select (only matching modules toggled), persistence across filter changes, and filtered deselect; 0 new pylint warnings (file counts identical before/after).

🤖 Generated with Claude Code

Applied to both vleappGUI.py and the parallel ileappGUI.py copy in this repo so the two do not drift.

When a filter is applied, the module list only shows the modules that
match it, but Select All and Deselect All still walked the whole list, so
they toggled modules the user could not see. Filtering to "chrome" and
pressing Select All selected every module in the tool.

Both buttons now act on the modules that match the active filter, which
is exactly what is on screen. The matching test used by filter_modules
is factored into module_matches_filter so the buttons and the list can
never disagree about what is visible.

With no filter applied the term is empty and matches every module, so
the unfiltered behavior is unchanged. Selections made under one filter
are left alone when the filter changes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@abrignoni
abrignoni force-pushed the fix/select-all-respects-filter branch from e434a38 to ad09a66 Compare July 28, 2026 16:12
@abrignoni
abrignoni merged commit a9db825 into main Jul 28, 2026
4 checks passed
@abrignoni
abrignoni deleted the fix/select-all-respects-filter branch July 28, 2026 16:19
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