File tree Expand file tree Collapse file tree 2 files changed +22
-3
lines changed
Tool/Sources/XcodeInspector Expand file tree Collapse file tree 2 files changed +22
-3
lines changed Original file line number Diff line number Diff line change @@ -82,6 +82,14 @@ extension AppDelegate {
8282 keyEquivalent: " "
8383 )
8484 quitItem. target = self
85+
86+ let reactivateObservationsItem = NSMenuItem (
87+ title: " Reactivate Observations to Xcode " ,
88+ action: #selector( reactivateObservationsToXcode) ,
89+ keyEquivalent: " "
90+ )
91+
92+ reactivateObservationsItem. target = self
8593
8694 statusBarMenu. addItem ( copilotName)
8795 statusBarMenu. addItem ( openCopilotForXcode)
@@ -91,6 +99,7 @@ extension AppDelegate {
9199 statusBarMenu. addItem ( . separator( ) )
92100 statusBarMenu. addItem ( xcodeInspectorDebug)
93101 statusBarMenu. addItem ( accessibilityAPIPermission)
102+ statusBarMenu. addItem ( reactivateObservationsItem)
94103 statusBarMenu. addItem ( quitItem)
95104
96105 statusBarMenu. delegate = self
@@ -211,6 +220,10 @@ private extension AppDelegate {
211220 @objc func restartXcodeInspector( ) {
212221 XcodeInspector . shared. restart ( cleanUp: true )
213222 }
223+
224+ @objc func reactivateObservationsToXcode( ) {
225+ XcodeInspector . shared. reactivateObservationsToXcode ( )
226+ }
214227}
215228
216229private extension NSMenuItem {
Original file line number Diff line number Diff line change @@ -227,6 +227,15 @@ public final class XcodeInspector: ObservableObject {
227227 appChangeObservations. insert ( appChangeTask)
228228 }
229229
230+ public func reactivateObservationsToXcode( ) {
231+ Task { @MainActor in
232+ if let activeXcode {
233+ setActiveXcode ( activeXcode)
234+ activeXcode. observeAXNotifications ( )
235+ }
236+ }
237+ }
238+
230239 @MainActor
231240 private func setActiveXcode( _ xcode: XcodeAppInstanceInspector ) {
232241 previousActiveApplication = activeApplication
@@ -257,13 +266,11 @@ public final class XcodeInspector: ObservableObject {
257266 } else if let element = focusedElement,
258267 let editorElement = element. firstParent ( where: \. isSourceEditor)
259268 {
260- Logger . service. debug ( " Focused on child of source editor. " )
261269 focusedEditor = . init(
262270 runningApplication: xcode. runningApplication,
263271 element: editorElement
264272 )
265273 } else {
266- Logger . service. debug ( " No source editor found. " )
267274 focusedEditor = nil
268275 }
269276 }
@@ -272,7 +279,6 @@ public final class XcodeInspector: ObservableObject {
272279 let focusedElementChanged = Task { @MainActor in
273280 for await notification in xcode. axNotifications {
274281 if notification. kind == . focusedUIElementChanged {
275- Logger . service. debug ( " Update focused element " )
276282 try Task . checkCancellation ( )
277283 setFocusedElement ( )
278284 }
You can’t perform that action at this time.
0 commit comments