(cb)
| 3008 | } |
| 3009 | |
| 3010 | function handleFolderCheckboxChange(cb) { |
| 3011 | if (!cb) return; |
| 3012 | |
| 3013 | // Enforce single-select folders and mutually exclusive with files |
| 3014 | if (cb.checked) { |
| 3015 | clearFileSelections(); |
| 3016 | getFolderCheckboxes().forEach(other => { |
| 3017 | if (other !== cb && other.checked) { |
| 3018 | other.checked = false; |
| 3019 | updateRowHighlight(other); |
| 3020 | } |
| 3021 | }); |
| 3022 | window.selectedInlineFolder = cb.dataset.folder || null; |
| 3023 | } else { |
| 3024 | window.selectedInlineFolder = null; |
| 3025 | } |
| 3026 | |
| 3027 | updateRowHighlight(cb); |
| 3028 | updateFileActionButtons(); |
| 3029 | refreshSelectedFolderCaps(window.selectedInlineFolder); |
| 3030 | } |
| 3031 | |
| 3032 | function resetPagingForFolderNavigation(pane) { |
| 3033 | const paneKey = normalizePaneKey(pane || window.activePane); |
no test coverage detected