-
Notifications
You must be signed in to change notification settings - Fork 725
Description
Description
After the change in #8527 (manageCheckboxStateManually: true), when all child files in a folder are individually marked as viewed, the parent folder's checkbox does not automatically become checked.
Steps to reproduce
- Open a PR with files nested in folders (e.g.,
src/containing multiple files) - Check each child file individually as "viewed"
- Once all children are checked, observe that the parent folder checkbox remains unchecked
Expected behavior
Parent folder checkbox becomes checked when all children are checked (as it did before #8527).
Actual behavior
Parent folder checkbox stays unchecked despite all children being checked.
Environment
- VS Code: 1.111.0
- Extension: v0.132.0
- OS: macOS 15.6
Analysis
The code in DirectoryTreeNode.getTreeItem() correctly computes the parent state via allChildrenViewed(), and refresh() is called on the topmost directory after checkbox changes. However, it seems that with manageCheckboxStateManually: true, the checkbox state update via refresh() → getTreeItem() may not be reflected in the UI by VS Code.
This may be a VS Code TreeView API limitation where checkboxState changes returned from getTreeItem() during a refresh() are not applied when manageCheckboxStateManually: true.