@@ -70,6 +70,12 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
7070 action: #selector( checkForUpdate) ,
7171 keyEquivalent: " "
7272 )
73+
74+ let openCopilotForXcode = NSMenuItem (
75+ title: " Open Copilot for Xcode " ,
76+ action: #selector( openCopilotForXcode) ,
77+ keyEquivalent: " "
78+ )
7379
7480 let toggleRealtimeSuggestions = NSMenuItem (
7581 title: " Real-time Suggestions " ,
@@ -90,6 +96,8 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
9096 statusBarMenu. addItem ( copilotName)
9197 statusBarMenu. addItem ( checkForUpdate)
9298 statusBarMenu. addItem ( . separator( ) )
99+ statusBarMenu. addItem ( openCopilotForXcode)
100+ statusBarMenu. addItem ( . separator( ) )
93101 statusBarMenu. addItem ( toggleRealtimeSuggestions)
94102 statusBarMenu. addItem ( . separator( ) )
95103 statusBarMenu. addItem ( quitItem)
@@ -108,6 +116,16 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSWindowDelegate {
108116 @objc func quit( ) {
109117 exit ( 0 )
110118 }
119+
120+ @objc func openCopilotForXcode( ) {
121+ let task = Process ( )
122+ if let appPath = locateHostBundleURL ( url: Bundle . main. bundleURL) ? . absoluteString {
123+ task. launchPath = " /usr/bin/open "
124+ task. arguments = [ appPath]
125+ task. launch ( )
126+ task. waitUntilExit ( )
127+ }
128+ }
111129
112130 @objc func toggleRealtimeSuggestions( ) {
113131 let isOn = !UserDefaults. shared. value ( for: \. realtimeSuggestionToggle)
0 commit comments