From 2774b3ea8fbcc13dc69bbd2cde9e641eeb105679 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Thu, 11 Jun 2026 19:06:33 +0800
Subject: [PATCH] Add uncategorized layout reset option
---
src/Apptag/ApptagApp.swift | 26 +++++++++++++++-----------
1 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/src/Apptag/ApptagApp.swift b/src/Apptag/ApptagApp.swift
index e155bc6..c88dc4a 100644
--- a/src/Apptag/ApptagApp.swift
+++ b/src/Apptag/ApptagApp.swift
@@ -17,7 +17,7 @@
Settings {
PreferencesView()
}
- .defaultSize(width: 1000, height: 480)
+ .defaultSize(width: 1000, height: 640)
.commands {
CommandGroup(replacing: .systemServices) { }
CommandGroup(replacing: .appVisibility) { }
@@ -42,6 +42,7 @@
private static let launcherOverlayLevel = NSWindow.Level(rawValue: NSWindow.Level.mainMenu.rawValue - 1)
private static let overlayDefaultLevel = launcherOverlayLevel
private static let overlayTextInputLevel = launcherOverlayLevel
+ private static let settingsContentSize = NSSize(width: 1000, height: 640)
private var statusItem: NSStatusItem?
private var overlayKeyMonitor: Any?
@@ -1295,15 +1296,19 @@
/// Settings must always appear centered over the current overlay view and float above it.
private func prepareSettingsWindow(_ window: NSWindow) {
dismissQuickSearchIfNeeded()
- let settingsSize = NSSize(width: 1000, height: 480)
+ let settingsSize = Self.settingsContentSize
+ let settingsFrameSize = window.frameRect(
+ forContentRect: NSRect(origin: .zero, size: settingsSize)
+ ).size
window.identifier = NSUserInterfaceItemIdentifier("TagLauncherPreferencesWindow")
- window.minSize = settingsSize
- window.maxSize = settingsSize
- if abs(window.frame.width - settingsSize.width) > 0.5 || abs(window.frame.height - settingsSize.height) > 0.5 {
- window.setFrame(
- NSRect(origin: window.frame.origin, size: settingsSize),
- display: false
- )
+ window.contentMinSize = settingsSize
+ window.contentMaxSize = settingsSize
+ window.minSize = settingsFrameSize
+ window.maxSize = settingsFrameSize
+ let currentContentSize = window.contentView?.bounds.size ?? window.contentLayoutRect.size
+ if abs(currentContentSize.width - settingsSize.width) > 0.5
+ || abs(currentContentSize.height - settingsSize.height) > 0.5 {
+ window.setContentSize(settingsSize)
}
if let overlayWindow, overlayWindow.isVisible {
@@ -1650,9 +1655,8 @@
return
}
- let settingsSize = NSSize(width: 1000, height: 480)
let window = NSWindow(
- contentRect: NSRect(origin: .zero, size: settingsSize),
+ contentRect: NSRect(origin: .zero, size: Self.settingsContentSize),
styleMask: [.titled, .closable],
backing: .buffered,
defer: false
--
Gitblit v1.9.3