v1.3.0 - Project browsing and an in-app editor
A repository tab is no longer only a commit graph - it can also be a project browser with a real editor.
Project files
- Files mode - switch a repository tab from the commit graph to a project browser and back; the choice is remembered per tab.
- A lazy directory tree: a folder is read the first time it is opened, so a repository with a huge node_modules costs nothing until you look inside it.
- Git context on every row - modified and untracked badges, dimmed ignored entries, and a hide-ignored toggle.
- Editor tabs using the same editor as the diff sheet: syntax colouring, ⌘S / Ctrl+S saving, a line-number gutter, and ⌘F / Ctrl+F find and replace with a match count and a case toggle. Open files are restored on the next launch; unsaved text never is.
- Unsaved editors are asked about once - when leaving Files mode, closing the repository tab, or quitting.
- Right-click a row for new file, new folder, rename, delete, stage, unstage, discard, file history, and reveal in the system file manager.
- An open file follows what happens on disk: renamed, its tab moves with it; deleted, the tab says so and saving is refused.
Security and ### stability
- Hardened path validation - every path is checked against the opened repository before disk is touched.
- Fixed a race in the undo stack and cleaned up leaked resources.
- Fixed a repository reload loop and sped up slow graph reads.