diff --git a/ClashX/AppDelegate.swift b/ClashX/AppDelegate.swift index 0ffa3f1..d74e92a 100644 --- a/ClashX/AppDelegate.swift +++ b/ClashX/AppDelegate.swift @@ -26,9 +26,6 @@ class AppDelegate: NSObject, NSApplicationDelegate { _ = ProxyConfigManager.install() statusItem = NSStatusBar.system.statusItem(withLength: AppDelegate.StatusItemIconWidth) - let image : NSImage = NSImage(named: NSImage.Name(rawValue: "menu_icon"))! - image.isTemplate = true - statusItem.image = image statusItem.menu = statusMenu updateMenuItem() startProxy() @@ -44,7 +41,11 @@ class AppDelegate: NSObject, NSApplicationDelegate { func updateMenuItem(){ proxySettingMenuItem.state = ConfigManager.proxyPortAutoSet ? .on : .off autoStartMenuItem.state = LaunchAtLogin.isEnabled ? .on:.off + let image = proxySettingMenuItem.state == .on ? + NSImage(named: NSImage.Name(rawValue: "menu_icon"))! : + NSImage(named: NSImage.Name(rawValue: "menu_icon_disabled"))! + statusItem.image = image } func startProxy() { @@ -93,8 +94,10 @@ class AppDelegate: NSObject, NSApplicationDelegate { @IBAction func actionGenConfig(_ sender: Any) { let ctrl = NSStoryboard(name: NSStoryboard.Name(rawValue: "Main"), bundle: nil) .instantiateController(withIdentifier: NSStoryboard.SceneIdentifier(rawValue: "sampleConfigGenerator")) as! NSWindowController + genConfigWindow?.close() genConfigWindow=ctrl + ctrl.window?.title = ctrl.contentViewController?.title ?? "" ctrl.showWindow(nil) NSApp.activate(ignoringOtherApps: true) ctrl.window?.makeKeyAndOrderFront(self) diff --git a/ClashX/Assets.xcassets/AppIcon.appiconset/Contents.json b/ClashX/Assets.xcassets/AppIcon.appiconset/Contents.json index 2db2b1c..bcf8088 100644 --- a/ClashX/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/ClashX/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -21,28 +21,33 @@ "scale" : "2x" }, { - "idiom" : "mac", "size" : "128x128", + "idiom" : "mac", + "filename" : "logo@128.png", "scale" : "1x" }, { - "idiom" : "mac", "size" : "128x128", + "idiom" : "mac", + "filename" : "logo@256-1.png", "scale" : "2x" }, { - "idiom" : "mac", "size" : "256x256", + "idiom" : "mac", + "filename" : "logo@256.png", "scale" : "1x" }, { - "idiom" : "mac", "size" : "256x256", + "idiom" : "mac", + "filename" : "logo@512-2.png", "scale" : "2x" }, { - "idiom" : "mac", "size" : "512x512", + "idiom" : "mac", + "filename" : "logo@512-1.png", "scale" : "1x" }, { diff --git a/ClashX/Assets.xcassets/AppIcon.appiconset/logo@128.png b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@128.png new file mode 100644 index 0000000..0061478 Binary files /dev/null and b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@128.png differ diff --git a/ClashX/Assets.xcassets/AppIcon.appiconset/logo@256-1.png b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@256-1.png new file mode 100644 index 0000000..1ab0bc4 Binary files /dev/null and b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@256-1.png differ diff --git a/ClashX/Assets.xcassets/AppIcon.appiconset/logo@256.png b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@256.png new file mode 100644 index 0000000..1ab0bc4 Binary files /dev/null and b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@256.png differ diff --git a/ClashX/Assets.xcassets/AppIcon.appiconset/logo@512-1.png b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@512-1.png new file mode 100644 index 0000000..c624b94 Binary files /dev/null and b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@512-1.png differ diff --git a/ClashX/Assets.xcassets/AppIcon.appiconset/logo@512-2.png b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@512-2.png new file mode 100644 index 0000000..c624b94 Binary files /dev/null and b/ClashX/Assets.xcassets/AppIcon.appiconset/logo@512-2.png differ diff --git a/ClashX/clash b/ClashX/clash index 7dcb833..0193d13 160000 --- a/ClashX/clash +++ b/ClashX/clash @@ -1 +1 @@ -Subproject commit 7dcb8330f06b4789b7b172f6371dcdc22e4aa2ab +Subproject commit 0193d1377f6d424e6712dda1e1fa3d4667b37bd3