RFR: 8286258: [Accessibility, macOS, VoiceOver] VoiceOver reads the spinner value wrong and sometime partially

Alexander Zuev kizune at openjdk.org
Wed Jan 21 20:21:37 UTC 2026


On Wed, 21 Jan 2026 20:00:48 GMT, Alexander Zuev <kizune at openjdk.org> wrote:

>> src/java.desktop/macosx/native/libawt_lwawt/awt/a11y/SpinboxAccessibility.m line 89:
>> 
>>> 87:         if ([child conformsToProtocol:@protocol(NSAccessibilityNavigableStaticText)]) {
>>> 88:             NSAccessibilityPostNotification(child, NSAccessibilityLayoutChangedNotification);
>>> 89:             NSAccessibilityPostNotification(child, NSAccessibilityAnnouncementRequestedNotification);
>> 
>> I assume this line is not necessary, `NSAccessibilityAnnouncementRequestedNotification` is used to make VoiceOver announce an arbitrary string, which would be passed in `userInfo` argument for `NSAccessibilityPostNotificationWithUserInfo`.
>
> I added it just to ping the a11y subsystem in non-disruptive manner, if i remember correctly without this notification rapid change back and forth resulted in not announcing the last selected value. Let me try to remove it and re-test.

Ok, i removed the second notification and it seems to work fine, looks like the glitch with fast switching was due to my previous version of the announcement suspension, i fixed it at the same time i added the second notification i thought that second notification was what corrected it.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/29235#discussion_r2714191282


More information about the client-libs-dev mailing list