From fea00413020e469fbd71870afaf6d40f8616a12a Mon Sep 17 00:00:00 2001 From: hl-valdemar Date: Mon, 19 Oct 2026 18:30:45 +0200 Subject: [PATCH] fix: link current SDK for native window decorations --- Makefile | 6 ++++-- README.md | 2 ++ TODO.md | 2 ++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 306e519..4b6adfa 100644 --- a/Makefile +++ b/Makefile @@ -3,9 +3,11 @@ APP := .build/Conjure.app INSTALL_DIR ?= /Applications CODE_SIGN_IDENTITY ?= - +# Keep AppKit on the current SDK appearance, not deployment-target compatibility styling. +PLATFORM_FLAGS := -Xlinker -platform_version -Xlinker macos -Xlinker 14.0 -Xlinker $(shell xcrun --show-sdk-version) build: - swift build -c release + swift build -c release $(PLATFORM_FLAGS) mkdir -p $(APP)/Contents/MacOS $(APP)/Contents/Resources cp .build/release/Conjure $(APP)/Contents/MacOS/Conjure cp Resources/Info.plist $(APP)/Contents/Info.plist @@ -21,4 +23,4 @@ install: build swift Scripts/install.swift "$(APP)" "$(INSTALL_DIR)" test: - swift test + swift test $(PLATFORM_FLAGS) diff --git a/README.md b/README.md index f72abcd..4b70b4a 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,8 @@ A native macOS launcher for applications, calculations, unit and currency conver Requires macOS 14 or later and a Swift 6 toolchain (Xcode 16 or later). +The Makefile links with the active Xcode SDK version while retaining the macOS 14 deployment target. This keeps AppKit’s native window controls on the current system appearance instead of older-SDK compatibility styling. Use `make build` / `make run` for this build configuration; plain `swift build` does not include the explicit linker platform flags. + ```sh make run # Build and launch .build/Conjure.app. make build # Build without launching. diff --git a/TODO.md b/TODO.md index cf9c806..c1b6f46 100644 --- a/TODO.md +++ b/TODO.md @@ -4,5 +4,7 @@ - [ ] bug: looks like dragging around the conjure windows can cause other conjure windows of difference window sizes to spawn offset the corner instead of from the center of the windows - when moving a conjure window, the saved position should always be the center of the window, and windows should always be spawned at some position taking to mean their center. - this should keep window placement invariant of corner window sizes +- [ ] conjure notes: + - add action to delete a note (currently selected note) - [ ] the guidelines for centering the application when dragged are blurry on some external monitors. - track down the cause and fix it. \ No newline at end of file