feat: support down to macOS 13.0

This commit is contained in:
Michael Freno
2026-01-11 21:38:26 -05:00
parent 18139dd24a
commit 0132ac3e0e
3 changed files with 10 additions and 9 deletions

View File

@@ -437,7 +437,7 @@
"$(inherited)", "$(inherited)",
"@executable_path/../Frameworks", "@executable_path/../Frameworks",
); );
MACOSX_DEPLOYMENT_TARGET = 14.6; MACOSX_DEPLOYMENT_TARGET = 13.0;
MARKETING_VERSION = 0.2.1; MARKETING_VERSION = 0.2.1;
PRODUCT_BUNDLE_IDENTIFIER = com.mikefreno.Gaze; PRODUCT_BUNDLE_IDENTIFIER = com.mikefreno.Gaze;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
@@ -473,7 +473,7 @@
"$(inherited)", "$(inherited)",
"@executable_path/../Frameworks", "@executable_path/../Frameworks",
); );
MACOSX_DEPLOYMENT_TARGET = 14.6; MACOSX_DEPLOYMENT_TARGET = 13.0;
MARKETING_VERSION = 0.2.1; MARKETING_VERSION = 0.2.1;
PRODUCT_BUNDLE_IDENTIFIER = com.mikefreno.Gaze; PRODUCT_BUNDLE_IDENTIFIER = com.mikefreno.Gaze;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";

View File

@@ -11,7 +11,7 @@ import SwiftUI
struct GazeApp: App { struct GazeApp: App {
@NSApplicationDelegateAdaptor(AppDelegate.self) var appDelegate @NSApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
@StateObject private var settingsManager = SettingsManager.shared @StateObject private var settingsManager = SettingsManager.shared
var body: some Scene { var body: some Scene {
// Onboarding window (only shown when not completed) // Onboarding window (only shown when not completed)
WindowGroup { WindowGroup {
@@ -22,7 +22,8 @@ struct GazeApp: App {
} }
} else { } else {
OnboardingContainerView(settingsManager: settingsManager) OnboardingContainerView(settingsManager: settingsManager)
.onChange(of: settingsManager.settings.hasCompletedOnboarding) { _, completed in .onChange(of: settingsManager.settings.hasCompletedOnboarding) {
completed in
if completed { if completed {
closeAllWindows() closeAllWindows()
appDelegate.onboardingCompleted() appDelegate.onboardingCompleted()
@@ -34,9 +35,9 @@ struct GazeApp: App {
.windowResizability(.contentSize) .windowResizability(.contentSize)
.defaultSize(width: 700, height: 700) .defaultSize(width: 700, height: 700)
.commands { .commands {
CommandGroup(replacing: .newItem) { } CommandGroup(replacing: .newItem) {}
} }
// Menu bar extra (always present) // Menu bar extra (always present)
MenuBarExtra("Gaze", systemImage: "eye.fill") { MenuBarExtra("Gaze", systemImage: "eye.fill") {
MenuBarContentWrapper( MenuBarContentWrapper(
@@ -50,7 +51,7 @@ struct GazeApp: App {
} }
.menuBarExtraStyle(.window) .menuBarExtraStyle(.window)
} }
private func closeAllWindows() { private func closeAllWindows() {
for window in NSApplication.shared.windows { for window in NSApplication.shared.windows {
window.close() window.close()

View File

@@ -46,8 +46,8 @@ struct GeneralSetupView: View {
Spacer() Spacer()
Toggle("", isOn: $launchAtLogin) Toggle("", isOn: $launchAtLogin)
.labelsHidden() .labelsHidden()
.onChange(of: launchAtLogin) { oldValue, newValue in .onChange(of: launchAtLogin) { isEnabled in
applyLaunchAtLoginSetting(enabled: newValue) applyLaunchAtLoginSetting(enabled: isEnabled)
} }
} }
.padding() .padding()