tab order

This commit is contained in:
Ian Gulliver
2026-10-19 08:56:37 -07:00
parent 32ea6da327
commit dec87b3dc3
10 changed files with 292 additions and 298 deletions
+1 -5
View File
@@ -395,10 +395,6 @@ private struct TabStrip: View {
}
private func info() -> Info {
var first: [TaskTab] = []
for t in store.focus.tabs where taskTabs.contains(t) && !first.contains(t) {
first.append(t)
}
let tab = store.focus.tab
let waiting = store.inbox.filter { $0.taskId == store.selectedTaskId }.count
let transcript = store.transcript
@@ -408,7 +404,7 @@ private struct TabStrip: View {
let hasReviews = transcript.contains(where: isReviewEvent)
let workflow = store.selectedTaskId.flatMap { store.findTask($0) }?.workflowRun != nil
let team = store.selectedTaskId.map { !store.team($0).isEmpty } ?? false
let order = (first + taskTabs.filter { !first.contains($0) }).filter { t in
let order = taskTabs.filter { t in
if t == tab {
return true
}
+2 -2
View File
@@ -39,7 +39,7 @@ final class Store {
var reviewed: Int?
var question: (taskId: String, itemId: String)?
var connected = false
private(set) var focus = Focus(tabs: [.transcript], tab: .transcript)
private(set) var focus = Focus(tab: .transcript)
var leadSessions: [AgentSession] = []
let leadFeed: Feed
var jump: (taskId: String, seq: Int64)?
@@ -343,7 +343,7 @@ final class Store {
func setFocus(taskId: String?? = .none, projectId: String?? = .none, tab: TaskTab? = nil) async throws {
let task = taskId ?? focus.taskId
let project = task != nil ? findTask(task!)?.projectId : (projectId ?? focus.projectId)
var next = Focus(tabs: focus.tabs, tab: tab ?? focus.tab)
var next = Focus(tab: tab ?? focus.tab)
if let task, !task.isEmpty {
next.taskId = task
}