Commit Graph
3741 Commits
Author SHA1 Message Date
JinjingandClaude Opus 4.6 d9facf1b9c fix: prevent app crash on macOS reactivation by deduplicating IPC handlers (#81)
When macOS re-activates the app after all windows are closed, `createWindow()` is called
again but IPC handlers from the previous window were still registered, causing duplicate
handler errors and crashes. This fix removes stale handlers before re-registering them
in pty, repos, and worktrees modules, and ensures repo/worktree handlers + auto-updater
are also set up on activate. Includes minor lint/style cleanups across the codebase.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:44:12 -07:00
JinjingandClaude Opus 4.6 598f7c17fa feat: display CI build status on worktree cards (#80)
Show CI check status icons (success/failure/pending) next to the branch
name on worktree cards. Return 'neutral' instead of 'pending' when no
CI checks exist to avoid showing a misleading spinner. Fix lint errors
in client.ts (curly braces, array-type).

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:36:57 -07:00
NeilandClaude Opus 4.6 1dff41c6d7 feat: add VS Code-style file search and icon activity bar (#78)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:28:05 -07:00
JinjingandClaude Opus 4.6 20cfa1f279 feat: add clickable file path links in terminal (#77)
- Add terminal link detection that recognizes file paths with optional
  line:column suffixes and opens them in the editor or externally
- Split shell IPC into separate openUrl, openFilePath, openFileUri, and
  pathExists handlers with proper URL/path validation
- Register xterm link providers per pane with path existence caching
- Support OSC 8 hyperlinks for http(s) and file: protocols
- Add editor-reveal-location custom event for jumping to line/column

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:17:41 -07:00
JinjingandClaude Opus 4.6 417a49bc1b feat: unify worktree meta editing into single dialog with double-click support (#76)
Merge the separate "Link Issue" and "Edit Comment" modals into a single
"Edit Worktree Details" dialog. Add double-click on worktree cards to
open the unified editor. Context menu items now focus the relevant field.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 23:06:44 -07:00
JinjingandClaude Opus 4.6 82425df6ea fix: remount terminal panes after shutdown to restore PTY connections (#73)
When all PTYs are dead after shutdown, bump a generation counter on
terminal tabs so React remounts TerminalPane components with fresh
PTY connections instead of showing stale terminals.

Also converts interfaces to type aliases in types.ts to satisfy linter.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 17:10:28 -07:00
JinjingandClaude Opus 4.6 9853bba8ba fix: resolve TS build errors in EditorPanel and context menu (#72)
- Return empty fragment instead of null to satisfy JSX.Element return type
- Remove unused paneTransportsRef parameter and PtyTransport import

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 17:06:44 -07:00
JinjingandClaude Opus 4.6 29119e1d6d fix: resolve TypeScript build errors for unused variable and return type (#71)
Remove unused `paneTransportsRef` from context menu hook and fix
`EditorPanel` return type to allow `null`.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:56:57 -07:00
JinjingandClaude Opus 4.6 e0fc58cc56 fix: bundle Monaco workers locally and fix JSX/TSX language detection (#69)
Use Vite worker imports to bundle Monaco web workers instead of relying on CDN,
and correct language IDs for .tsx/.jsx files to typescriptreact/javascriptreact.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:47:13 -07:00
Jinjing 2163c67035 fix: scope editor files and tabs per worktree (#68) 2026-03-23 16:45:00 -07:00
JinjingandClaude Opus 4.6 81d8a2c10c fix: improve text wrapping in delete worktree dialog (#67)
Add break-all to worktree name and use proper flex layout for error
messages to prevent long text from overflowing the dialog.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:38:08 -07:00
JinjingandClaude Opus 4.6 5765791bb9 refactor: extract TerminalPane hooks and modularize terminal themes (#66)
Split the monolithic TerminalPane component into focused custom hooks
(lifecycle, context menu, global effects, dark mode detection) and break
the large terminal-themes-data file into organized modules.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:31:29 -07:00
Jinjing 3a650b4196 fix: route terminal paste through electron clipboard (#65) 2026-03-23 16:27:50 -07:00
JinjingandClaude Opus 4.6 ecbbe3bfc9 fix: clear repo filter after creating worktree instead of auto-filtering (#64)
Previously, creating a worktree would auto-filter the sidebar to the
current repo, which could be confusing. Now clears the filter so all
worktrees remain visible, relying on revealWorktreeInSidebar to scroll
to the newly created worktree.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:26:20 -07:00
JinjingandClaude Opus 4.6 b6b1a27990 fix: allow single-digit values in NumberField input (#58) (#60)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:16:59 -07:00
JinjingandClaude Opus 4.6 67aa2af2f3 feat: use Enter to submit and Shift+Enter for line break in comment editor (#61)
Closes #48

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 16:14:37 -07:00
Neil 33b41cb97e Center page (#59) 2026-03-23 15:54:33 -07:00
JinjingandClaude Opus 4.6 19a7f650ce fix: hide terminal when no active worktree, show landing page instead (#57)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 15:53:25 -07:00
Jinjing 1fac83427d fix: preserve terminal search shortcut and refresh right sidebar state (#56) 2026-03-23 15:34:18 -07:00
Jinjing 59e6baa18f fix: keep worktree tab closes scoped to owning worktree (#54) 2026-03-23 14:45:14 -07:00
Jinjing 1048021e85 fix: preserve terminal state when clearing active worktree (#51) 2026-03-23 09:52:26 -07:00
JinjingandClaude Opus 4.6 596aac5b8c fix: skip redundant GitHub refresh when re-clicking active worktree (#45)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 09:23:59 -07:00
JinjingandClaude Opus 4.6 415ae35dce Fix shutdown clearing active worktree/tab state from wrong layer (#44)
Move activeWorktreeId/activeTabId clearing out of shutdownWorktreeTerminals
(a terminal-focused store action) and into the UI component that triggers
shutdown. The delete flow already handles this independently in worktrees.ts.

Also fix pre-existing lint issues and extract terminal helpers to separate file.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-23 00:00:10 -07:00
JinjingandClaude Opus 4.6 85f678d736 Make comment textarea auto-expandable in WorktreeMetaDialog (#43)
Auto-resize the textarea as the user types, capped at max-h-60 with overflow scroll.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 23:47:51 -07:00
Jinjing 0c83e5b9d8 fix: refresh github status on activity (#42) 2026-03-22 23:47:46 -07:00
NeilandClaude Opus 4.6 3bad80a8ba Add 'Add repo' option to repo filter dropdown (#39)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 23:17:25 -07:00
Jinjing ddbad7a13f Fix PR status display: deduplicate concurrent requests and simplify cache logic (#38) 2026-03-22 16:28:35 -07:00
NeilandClaude Opus 4.6 c17a9852c7 Fix update-related issues: macOS crash, duplicate notifications, version display (#37)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 15:56:06 -07:00
NeilandClaude Opus 4.6 b1a5b0fc0d Break up large files into well-organized modules (#29)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 15:22:55 -07:00
Jinjing f5275a74da Fix TypeScript error and linting issues: extract SortableTab to separate file (#34) 2026-03-22 14:54:26 -07:00
Jinjing 403b19af53 Update WorktreeCard and WorktreeList components (#32) 2026-03-22 14:17:03 -07:00
JinjingandClaude Opus 4.6 9d8ede4980 Add repo-added notifications (#19)
* repo-added notifications feature

- Add repo-added notifications

* Fix lint issues in repos slice: use type alias, add curly braces

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 14:04:30 -07:00
JinjingandClaude Opus 4.6 cfc3dfcbb4 Fix terminal padding: add small inset to xterm container (#30)
Adds 4px top-left margin with matching size reduction to prevent
terminal content from touching the pane edges.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 14:04:07 -07:00
NeilandClaude Opus 4.6 6a71c13124 Add dismiss button to update notifications (#25)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 12:39:24 -07:00
NeilandClaude Opus 4.6 a4dc702b6e Add Ghostty-style drag-to-reorder terminal panes (#24)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 12:39:14 -07:00
NeilandClaude Opus 4.6 4d65b9e69d Add Ghostty-style drag-to-resize for terminal split panes (#22)
- Wider invisible hit area around dividers (visible line drawn via CSS
  ::after pseudo-element) for easier grabbing
- Persist split ratios in layout snapshots so resized panes survive
  tab switches and restores
- Double-click divider to equalize sibling panes
- Notify onLayoutChanged after drag-end to trigger ratio persistence

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 12:11:54 -07:00
NeilandClaude Opus 4.6 c0eaf328b2 Add right sidebar with file explorer, source control, and Monaco editor (#21)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 11:47:22 -07:00
NeilandClaude Opus 4.6 7af384c904 Fix first worktree card top border cutoff (#15)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 18:43:04 -07:00
NeilandClaude Opus 4.6 234c422225 Improve update experience: toasts, graceful restart, sidebar indicator (#14)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 18:42:49 -07:00
NeilandClaude Opus 4.6 a9e2b49e56 Add card gap and quick-create in worktree dialog (#10)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 17:04:20 -07:00
NeilandClaude Opus 4.6 578cd02372 Fix useEffect anti-patterns across renderer (#9)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 15:15:38 -07:00
Neil 9de1eb4318 Terminal fixes, sort fixes, flashbang fix 2026-03-21 14:44:45 -07:00
Neil 7d53f3cec3 styles and restore fix 2026-03-21 14:18:46 -07:00
Neil c608aea129 clear filters 2026-03-21 13:56:45 -07:00
Neil 0e9d82c246 style tweaks 2026-03-21 13:44:33 -07:00
Neil 2c89a02741 menu fix 2026-03-21 13:36:41 -07:00
Neil e8d487d90d Terminal switch pane exapnded 2026-03-21 13:31:06 -07:00
Neil b093a5ab96 terminal improvements 2026-03-21 13:18:13 -07:00
Neil 173965b57f terminal fixes 2026-03-21 12:11:17 -07:00
Neil a3ef3a59d5 xterm 2026-03-21 11:34:11 -07:00