From f466f1bf467011fc564b0859c3e082ab6af2957f Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 13 Dec 2025 02:15:28 +0000 Subject: [PATCH] feat(mac): compact context session rows --- .../Sources/Clawdis/MenuContentView.swift | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/apps/macos/Sources/Clawdis/MenuContentView.swift b/apps/macos/Sources/Clawdis/MenuContentView.swift index e9e65e27c..1bac751b4 100644 --- a/apps/macos/Sources/Clawdis/MenuContentView.swift +++ b/apps/macos/Sources/Clawdis/MenuContentView.swift @@ -271,7 +271,7 @@ struct MenuContent: View { @ViewBuilder private var contextCardView: some View { - VStack(alignment: .leading, spacing: 10) { + VStack(alignment: .leading, spacing: 8) { HStack(alignment: .firstTextBaseline) { Text("Context") .font(.caption.weight(.semibold)) @@ -287,7 +287,7 @@ struct MenuContent: View { .font(.caption) .foregroundStyle(.secondary) } else { - VStack(alignment: .leading, spacing: 10) { + VStack(alignment: .leading, spacing: 8) { ForEach(self.contextSessions) { row in self.contextSessionRow(row) } @@ -316,22 +316,27 @@ struct MenuContent: View { private func contextSessionRow(_ row: SessionRow) -> some View { let width = self.contextPillWidth VStack(alignment: .leading, spacing: 4) { - ContextUsageBar( - usedTokens: row.tokens.total, - contextTokens: row.tokens.contextTokens, - width: width, - height: self.contextBarHeight) - HStack(spacing: 8) { + HStack(alignment: .firstTextBaseline, spacing: 8) { Text(row.key) - .font(.caption2.weight(row.key == "main" ? .semibold : .regular)) + .font(.caption.weight(row.key == "main" ? .semibold : .regular)) .lineLimit(1) .truncationMode(.middle) .layoutPriority(1) Spacer(minLength: 8) Text(row.tokens.contextSummaryShort) - .font(.caption2.monospacedDigit()) + .font(.caption.monospacedDigit()) .foregroundStyle(.secondary) + .lineLimit(1) + .fixedSize(horizontal: true, vertical: false) + .layoutPriority(2) } + .frame(width: width) + + ContextUsageBar( + usedTokens: row.tokens.total, + contextTokens: row.tokens.contextTokens, + width: width, + height: self.contextBarHeight) } .frame(width: width) }