Skip to content

v0.5.0 — SwiftUI App + MenuBarExtra + Swift 6 mode

Choose a tag to compare

@hoangperry hoangperry released this 20 May 14:24

Architecture refactor: the app moves off the legacy NSApplication.shared + manual AppDelegate wiring and onto SwiftUI's modern @main App + MenuBarExtra. Compiles under Swift 6 language mode with strict concurrency checking.

Changed

  • MenuBarExtra refactor: main.swiftContextualMacTranslatorApp.swift. @main App struct with declarative MenuBarExtra scene replaces the ~50-line imperative NSStatusItem + NSMenu setup. AppDelegate lives on as @NSApplicationDelegateAdaptor, still owning the workflow, hotkey manager, HUDs, and the Settings + Onboarding windows.
  • Swift 6 language mode enabled on both executable and test targets. The codebase was already correctly annotated with @MainActor, Sendable value types, and @Observable reference types, so the upgrade was a zero-diff for source files.
  • Dead code removed: AppDelegate.buildStatusItem and the statusItem property gone.

Install

Download the DMG, double-click to open, drag Contextual Mac Translator to Applications. Signed with Apple Developer ID and notarized — no Gatekeeper warning.

Notes

Tests: 190 Swift / 45 suites green. Apple Silicon, macOS 14+.

Full changelog: v0.4.1...v0.5.0