-
-
Orca
- {repos.length === 0 ? (
- <>
-
Get started by adding a repository
+
+
+

+
ORCA
+
+
+ {canCreateWorktree
+ ? 'Select a worktree from the sidebar to begin.'
+ : 'Add a repository to get started.'}
+
+
+
- >
- ) : (
-
Select a worktree from the sidebar
- )}
+
+ {canCreateWorktree && (
+
+ )}
+
+
+ {shortcuts.length > 0 && (
+
+ {shortcuts.map((shortcut) => (
+
+
{shortcut.action}
+
+ {shortcut.keys.map((key) => (
+
+ ))}
+
+
+ ))}
+
+ )}
+
)
diff --git a/src/renderer/src/components/TabBar.tsx b/src/renderer/src/components/TabBar.tsx
index c57d4e72..f6a35bad 100644
--- a/src/renderer/src/components/TabBar.tsx
+++ b/src/renderer/src/components/TabBar.tsx
@@ -14,7 +14,7 @@ import {
arrayMove
} from '@dnd-kit/sortable'
import { CSS } from '@dnd-kit/utilities'
-import { X, Plus, Terminal as TerminalIcon } from 'lucide-react'
+import { X, Plus, Terminal as TerminalIcon, Minimize2 } from 'lucide-react'
import {
DropdownMenu,
DropdownMenuContent,
@@ -29,12 +29,14 @@ interface SortableTabProps {
tabCount: number
hasTabsToRight: boolean
isActive: boolean
+ isExpanded: boolean
onActivate: (tabId: string) => void
onClose: (tabId: string) => void
onCloseOthers: (tabId: string) => void
onCloseToRight: (tabId: string) => void
onSetCustomTitle: (tabId: string, title: string | null) => void
onSetTabColor: (tabId: string, color: string | null) => void
+ onToggleExpand: (tabId: string) => void
}
const TAB_COLORS = [
@@ -57,12 +59,14 @@ function SortableTab({
tabCount,
hasTabsToRight,
isActive,
+ isExpanded,
onActivate,
onClose,
onCloseOthers,
onCloseToRight,
onSetCustomTitle,
- onSetTabColor
+ onSetTabColor,
+ onToggleExpand
}: SortableTabProps): React.JSX.Element {
const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({
id: tab.id
@@ -124,6 +128,24 @@ function SortableTab({
style={{ backgroundColor: tab.color }}
/>
)}
+ {isExpanded && (
+
+ )}