Description
In the LoopLog treeview, multiple elements can now be selected at once (multi-select). If a user selects a parent node together with one or more of its child nodes, the child nodes are ignored in the preview output (see the preview filtering issue, _prune_contained).
Visually, those still-selected child nodes are currently indistinguishable from the parent selection in the treeview. For better feedback, child nodes that are "covered" by a selected parent should be shown slightly dimmed in the treeview.
Behavior:
- The parent node stays selected.
- Covered child nodes stay selected but appear dimmed.
- Removing the parent selection restores the normal selection of the child nodes — behavior identical to today, only with the additional preview filtering.
Technical notes
- ttk.Treeview paints selected rows with a theme background color; per-item
foreground tags (via tag_configure + item(..., tags=...)) may be covered by it or ignored depending on the theme.
- A clean rendering may require a custom treeview style/theme approach — platform-dependent and costly.
- The dimming logic must be recomputed on every selection event (child dimmed ⇔ parent selected) and stay consistent with the
_prune_contained logic from the preview filtering.
Verification
Manual: select a parent + child → the child appears dimmed; deselect the parent → the child is normally selected again. python -m pytest tests\test_all.py -q
Description
In the LoopLog treeview, multiple elements can now be selected at once (multi-select). If a user selects a parent node together with one or more of its child nodes, the child nodes are ignored in the preview output (see the preview filtering issue,
_prune_contained).Visually, those still-selected child nodes are currently indistinguishable from the parent selection in the treeview. For better feedback, child nodes that are "covered" by a selected parent should be shown slightly dimmed in the treeview.
Behavior:
Technical notes
foregroundtags (viatag_configure+item(..., tags=...)) may be covered by it or ignored depending on the theme._prune_containedlogic from the preview filtering.Verification
Manual: select a parent + child → the child appears dimmed; deselect the parent → the child is normally selected again.
python -m pytest tests\test_all.py -q