@@ -78,6 +78,12 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
7878 action: #selector( checkForUpdate) ,
7979 keyEquivalent: " "
8080 )
81+
82+ let openCopilotForXcode = NSMenuItem (
83+ title: " Open Copilot for Xcode " ,
84+ action: #selector( openCopilotForXcode) ,
85+ keyEquivalent: " "
86+ )
8187
8288 let toggleRealtimeSuggestions = NSMenuItem (
8389 title: " Real-time Suggestions " ,
@@ -98,6 +104,8 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
98104 statusBarMenu. addItem ( copilotName)
99105 statusBarMenu. addItem ( checkForUpdate)
100106 statusBarMenu. addItem ( . separator( ) )
107+ statusBarMenu. addItem ( openCopilotForXcode)
108+ statusBarMenu. addItem ( . separator( ) )
101109 statusBarMenu. addItem ( toggleRealtimeSuggestions)
102110 statusBarMenu. addItem ( . separator( ) )
103111 statusBarMenu. addItem ( quitItem)
@@ -116,6 +124,16 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
116124 @objc func quit( ) {
117125 exit ( 0 )
118126 }
127+
128+ @objc func openCopilotForXcode( ) {
129+ let task = Process ( )
130+ if let appPath = locateHostBundleURL ( url: Bundle . main. bundleURL) ? . absoluteString {
131+ task. launchPath = " /usr/bin/open "
132+ task. arguments = [ appPath]
133+ task. launch ( )
134+ task. waitUntilExit ( )
135+ }
136+ }
119137
120138 @objc func toggleRealtimeSuggestions( ) {
121139 let isOn = !UserDefaults. shared. value ( for: \. realtimeSuggestionToggle)
0 commit comments