Forráskód Böngészése

Update bundled app and menu bar icon assets.

Use the provided logo set for AppIcon, reduce visual weight for better Dock sizing, and load a bundled menu bar icon asset with safe fallbacks.

Made-with: Cursor
huzaifahayat12 3 hónapja
szülő
commit
da9d9b5640

+ 14 - 27
google_apps/AppDelegate.swift

@@ -10,21 +10,32 @@ import Cocoa
 @main
 class AppDelegate: NSObject, NSApplicationDelegate {
     private var statusItem: NSStatusItem?
-    private let customMenuBarIconPath = "/Users/devmac1/Downloads/menu_bar_icon.png"
 
     func applicationDidFinishLaunching(_ aNotification: Notification) {
+        applyBundledAppIcon()
         configureMainWindowIfNeeded()
         setupStatusBarItem()
         StatusBarAppIconsController.shared.start()
     }
 
+    private func applyBundledAppIcon() {
+        if let assetAppIcon = NSImage(named: "AppIcon") {
+            NSApp.applicationIconImage = assetAppIcon
+            return
+        }
+        if let icnsURL = Bundle.main.url(forResource: "AppIcon", withExtension: "icns"),
+           let icnsIcon = NSImage(contentsOf: icnsURL) {
+            NSApp.applicationIconImage = icnsIcon
+        }
+    }
+
     private func setupStatusBarItem() {
         let item = NSStatusBar.system.statusItem(withLength: NSStatusItem.squareLength)
         statusItem = item
 
         guard let button = item.button else { return }
-        if let customIcon = NSImage(contentsOfFile: customMenuBarIconPath) {
-            button.image = scaledMenuBarIcon(from: customIcon)
+        if let menuBarIcon = NSImage(named: "menu_bar_icon") {
+            button.image = menuBarIcon
             button.image?.isTemplate = false
         } else {
             button.image = NSImage(systemSymbolName: "square.grid.2x2.fill", accessibilityDescription: "My Apps")
@@ -37,30 +48,6 @@ class AppDelegate: NSObject, NSApplicationDelegate {
         button.sendAction(on: [.leftMouseUp, .rightMouseUp])
     }
 
-    private func scaledMenuBarIcon(from source: NSImage) -> NSImage {
-        let side: CGFloat = 16
-        let target = NSSize(width: side, height: side)
-        let srcSize = source.size
-        guard srcSize.width > 0, srcSize.height > 0 else { return source }
-
-        let image = NSImage(size: target, flipped: false) { _ in
-            let scale = min(side / srcSize.width, side / srcSize.height)
-            let width = srcSize.width * scale
-            let height = srcSize.height * scale
-            let x = (side - width) / 2
-            let y = (side - height) / 2
-            let destinationRect = NSRect(x: x, y: y, width: width, height: height)
-            source.draw(
-                in: destinationRect,
-                from: NSRect(origin: .zero, size: srcSize),
-                operation: .sourceOver,
-                fraction: 1
-            )
-            return true
-        }
-        return image
-    }
-
     @objc
     private func statusBarButtonClicked(_ sender: Any?) {
         guard let event = NSApp.currentEvent else {

+ 10 - 0
google_apps/Assets.xcassets/AppIcon.appiconset/Contents.json

@@ -1,51 +1,61 @@
 {
   "images" : [
     {
+      "filename" : "icon_16x16.png",
       "idiom" : "mac",
       "scale" : "1x",
       "size" : "16x16"
     },
     {
+      "filename" : "icon_16x16@2x.png",
       "idiom" : "mac",
       "scale" : "2x",
       "size" : "16x16"
     },
     {
+      "filename" : "icon_32x32.png",
       "idiom" : "mac",
       "scale" : "1x",
       "size" : "32x32"
     },
     {
+      "filename" : "icon_32x32@2x.png",
       "idiom" : "mac",
       "scale" : "2x",
       "size" : "32x32"
     },
     {
+      "filename" : "icon_128x128.png",
       "idiom" : "mac",
       "scale" : "1x",
       "size" : "128x128"
     },
     {
+      "filename" : "icon_128x128@2x.png",
       "idiom" : "mac",
       "scale" : "2x",
       "size" : "128x128"
     },
     {
+      "filename" : "icon_256x256.png",
       "idiom" : "mac",
       "scale" : "1x",
       "size" : "256x256"
     },
     {
+      "filename" : "icon_256x256@2x.png",
       "idiom" : "mac",
       "scale" : "2x",
       "size" : "256x256"
     },
     {
+      "filename" : "icon_512x512.png",
       "idiom" : "mac",
       "scale" : "1x",
       "size" : "512x512"
     },
     {
+      "filename" : "icon_512x512@2x.png",
       "idiom" : "mac",
       "scale" : "2x",
       "size" : "512x512"

BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_128x128.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_16x16.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_256x256.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_32x32.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_512x512.png


BIN
google_apps/Assets.xcassets/AppIcon.appiconset/icon_512x512@2x.png


+ 21 - 0
google_apps/Assets.xcassets/menu_bar_icon.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "filename" : "menu_bar_icon.png",
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
google_apps/Assets.xcassets/menu_bar_icon.imageset/menu_bar_icon.png