|
1 | 1 | import { useState, useEffect } from "react"; |
2 | | -import { motion, AnimatePresence } from "framer-motion"; |
3 | | -import { Loader2, Bot, FolderCode } from "lucide-react"; |
| 2 | +import { motion } from "framer-motion"; |
| 3 | +import { Bot, FolderCode } from "lucide-react"; |
4 | 4 | import { api, type Project, type Session, type ClaudeMdFile } from "@/lib/api"; |
5 | 5 | import { OutputCacheProvider } from "@/lib/outputCache"; |
6 | 6 | import { TabProvider } from "@/contexts/TabContext"; |
7 | 7 | import { ThemeProvider } from "@/contexts/ThemeContext"; |
8 | | -import { Button } from "@/components/ui/button"; |
9 | 8 | import { Card } from "@/components/ui/card"; |
10 | 9 | import { ProjectList } from "@/components/ProjectList"; |
11 | 10 | import { FilePicker } from "@/components/FilePicker"; |
12 | 11 | import { SessionList } from "@/components/SessionList"; |
13 | | -import { RunningClaudeSessions } from "@/components/RunningClaudeSessions"; |
14 | | -import { Topbar } from "@/components/Topbar"; |
15 | 12 | import { CustomTitlebar } from "@/components/CustomTitlebar"; |
16 | 13 | import { MarkdownEditor } from "@/components/MarkdownEditor"; |
17 | 14 | import { ClaudeFileEditor } from "@/components/ClaudeFileEditor"; |
@@ -50,13 +47,13 @@ type View = |
50 | 47 | */ |
51 | 48 | function AppContent() { |
52 | 49 | const [view, setView] = useState<View>("tabs"); |
53 | | - const { createClaudeMdTab, createSettingsTab, createUsageTab, createMCPTab, createProjectsTab, createAgentsTab } = useTabState(); |
| 50 | + const { createClaudeMdTab, createSettingsTab, createUsageTab, createMCPTab, createAgentsTab } = useTabState(); |
54 | 51 | const [projects, setProjects] = useState<Project[]>([]); |
55 | 52 | const [selectedProject, setSelectedProject] = useState<Project | null>(null); |
56 | 53 | const [sessions, setSessions] = useState<Session[]>([]); |
57 | 54 | const [editingClaudeFile, setEditingClaudeFile] = useState<ClaudeMdFile | null>(null); |
58 | 55 | const [loading, setLoading] = useState(true); |
59 | | - const [error, setError] = useState<string | null>(null); |
| 56 | + const [_error, setError] = useState<string | null>(null); |
60 | 57 | const [showNFO, setShowNFO] = useState(false); |
61 | 58 | const [showClaudeBinaryDialog, setShowClaudeBinaryDialog] = useState(false); |
62 | 59 | const [showProjectPicker, setShowProjectPicker] = useState(false); |
@@ -197,10 +194,7 @@ function AppContent() { |
197 | 194 | /** |
198 | 195 | * Opens a new Claude Code session in the interactive UI |
199 | 196 | */ |
200 | | - const handleNewSession = async () => { |
201 | | - handleViewChange("tabs"); |
202 | | - // The tab system will handle creating a new chat tab |
203 | | - }; |
| 197 | + // New session creation is handled by the tab system via titlebar actions |
204 | 198 |
|
205 | 199 | /** |
206 | 200 | * Handles editing a CLAUDE.md file from a project |
@@ -229,10 +223,7 @@ function AppContent() { |
229 | 223 | /** |
230 | 224 | * Handles navigating to hooks configuration |
231 | 225 | */ |
232 | | - const handleProjectSettings = (project: Project) => { |
233 | | - setProjectForSettings(project); |
234 | | - handleViewChange("project-settings"); |
235 | | - }; |
| 226 | + // Project settings navigation handled via `projectForSettings` state when needed |
236 | 227 |
|
237 | 228 |
|
238 | 229 | const renderContent = () => { |
|
0 commit comments