native macOS codings agent orchestrator
6
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #34 from onevcat/feature/per-tab-canvas-notification

Make canvas notification dot per-tab instead of per-worktree

authored by

Wei Wang and committed by
GitHub
c13d5c5f 106b58c2

+6 -1
+1 -1
supacode/Features/Canvas/Views/CanvasView.swift
··· 59 59 worktreeName: tab.title, 60 60 tree: tree, 61 61 isFocused: focusedTabID == tab.id, 62 - hasUnseenNotification: state.hasUnseenNotification, 62 + hasUnseenNotification: state.hasUnseenNotification(for: tab.id), 63 63 cardSize: resized.size, 64 64 canvasScale: canvasScale, 65 65 onTap: {
+5
supacode/Features/Terminal/Models/WorktreeTerminalState.swift
··· 32 32 var hasUnseenNotification: Bool { 33 33 notifications.contains { !$0.isRead } 34 34 } 35 + 36 + func hasUnseenNotification(for tabId: TerminalTabID) -> Bool { 37 + let surfaceIds = trees[tabId]?.leaves().map(\.id) ?? [] 38 + return notifications.contains { !$0.isRead && surfaceIds.contains($0.surfaceId) } 39 + } 35 40 var isSelected: () -> Bool = { false } 36 41 var onNotificationReceived: ((String, String) -> Void)? 37 42 var onNotificationIndicatorChanged: (() -> Void)?