Replace the destructive refreshRoot() with an incremental refresh that re-fetches the root and every expanded directory while preserving childrenByDir. This keeps the file tree expanded instead of collapsing it to the root on every manual refresh. Closes #2036 Co-authored-by: bashrusakh <bashrusakh@users.noreply.github.com>