The notification was posted on self.emacsView (the NSView container). VoiceOver called accessibilityFocusedUIElement on the view, got back the same buffer element, and did not re-anchor its browse cursor. Fix: post on self (the buffer element itself). When VoiceOver receives NSAccessibilityFocusedUIElementChangedNotification from an element that is already focused, it silently re-queries accessibilitySelectedTextRange and re-anchors its browse cursor without re-announcing the element name. Covers all emacsMovedCursor granularities (arrow keys, M-f/M-b, C-n/C-p via the separate isCtrlNP path).
34 KiB
34 KiB