Skip to content

Commit 9c92e81

Browse files
authored
Merge pull request intitni#198 from SNQ-2001/feature/add-open-copilot-for-xcode
Added "Open Copilot for Xcode"
2 parents c734a3f + 68bc419 commit 9c92e81

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

ExtensionService/AppDelegate.swift

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)