8309733: [macOS, Accessibility] VoiceOver: Incorrect announcements of JRadioButton

Reviewed-by: abhiscxk, asemenov, prr, serb
This commit is contained in:
Alexander Zuev 2023-06-23 10:11:25 +00:00
parent d6685f0869
commit d1d2b55ce0

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2011, 2021, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2023, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -182,17 +182,23 @@ class CAccessible extends CFRetainedResource implements Accessible {
// Do send check box state changes to native side
if (thisRole == AccessibleRole.CHECK_BOX) {
valueChanged(ptr);
if (newValue != null && !newValue.equals(oldValue)) {
valueChanged(ptr);
}
}
// Do send radio button state changes to native side
if (thisRole == AccessibleRole.RADIO_BUTTON) {
valueChanged(ptr);
if (newValue != null && !newValue.equals(oldValue)) {
valueChanged(ptr);
}
}
// Do send toggle button state changes to native side
if (thisRole == AccessibleRole.TOGGLE_BUTTON) {
valueChanged(ptr);
if (newValue != null && !newValue.equals(oldValue)) {
valueChanged(ptr);
}
}
} else if (name.equals(ACCESSIBLE_NAME_PROPERTY)) {
//for now trigger only for JTabbedPane.