<Swing Dev> RFR: 8239137: JAWS does not always announce the value of JSliders in JColorChooser
Pankaj Bansal
pankaj.b.bansal at oracle.com
Tue Aug 4 06:08:36 UTC 2020
Hello Sergey,
I have created the CSR. Please have a look.
https://bugs.openjdk.java.net/browse/JDK-8251002
Regards,
Pankaj
On 28/07/20 6:08 AM, Sergey Bylokhov wrote:
> Looks fine. Please note you will need a CSR for this change.
>
> On 19.07.2020 11:28, Pankaj Bansal wrote:
>> Hi All,
>>
>> Please review the following fix for jdk16.
>>
>> Bug : https://bugs.openjdk.java.net/browse/JDK-8239137
>> webrev: http://cr.openjdk.java.net/~pbansal/8239137/webrev02/
>> <http://cr.openjdk.java.net/%7Epbansal/8239137/webrev02/>
>>
>> Issue: The JAWS does not announce the value of JSlider in JColorChooser
>>
>> Cause: The JSlider and JSpinner are kept in Sync in JColorChooser by
>> changing the value of other component when one is used. eg, when we
>> change color value using JSlider, the JSpinner value is also changed
>> to keep the two in Sync. This results in two accessibility value
>> change events being sent to JAWS (one for JSlider and JSpinner each)
>> instead of just one for JSlider.
>>
>> The event in JSlider is being sent from setValue method, whereas in
>> case of JSpinner, the event is being sent from a AccessibleJSpinner
>> stateChanged method which is added as changeListener to JSpinner.
>> This results in situation where the event for JSpinner is always
>> being sent first whether we are using JSlider or JSpinner. It looks
>> like JAWS is not able to process all the events being sent quickly.
>> So, the JSlider event is not being processed properly by JAWS.
>>
>>
>> Fix: The fix is to add the AccessibleJSlider as a ChangeListener on
>> the JSlider and then sending the accesssiblity value change event
>> from there instead of sending it from setValue method like being done
>> in JSpinner. This results in the accessibility events being sent to
>> JAWS in the order they are being changed. JAWS is able to announce
>> the value properly for JSlider and JSpinner.
>>
>> This can be tested by running any JColorchooser sample program (One
>> such sample program is attached in JBS). I have run full jtreg and
>> jck tests on mach5. The change is not breaking any test. Links in JBS.
>>
>> Regards
>> Pankaj
>>
>
>
More information about the swing-dev
mailing list