feat: add MenuBarView with start/stop, settings, and error display

This commit is contained in:
Carsten Abele 2026-04-07 19:43:28 +02:00
parent dbe3294201
commit 1c9b44ab6b

View file

@ -0,0 +1,43 @@
import SwiftUI
struct MenuBarView: View {
@ObservedObject var manager: TranscriptionManager
@ObservedObject var settings = AppSettings.shared
let onShowTranscription: () -> Void
let onShowSettings: () -> Void
var body: some View {
VStack(spacing: 4) {
Button(manager.isRecording ? "Stop Recording" : "Start Recording") {
manager.toggle()
}
.keyboardShortcut("r")
if case .error(let msg) = manager.state {
Text(msg)
.font(.caption)
.foregroundStyle(.red)
.lineLimit(2)
.padding(.horizontal, 8)
}
Divider()
Button("Show Transcription") {
onShowTranscription()
}
Button("Settings...") {
onShowSettings()
}
Divider()
Button("Quit") {
NSApplication.shared.terminate(nil)
}
.keyboardShortcut("q")
}
.padding(.vertical, 4)
}
}