<Swing Dev> [15] RFR JDK-8239902: Remove direct usage of JSlider, JProgressBar classes in CAccessible class
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Thu Feb 27 10:53:05 UTC 2020
Looks fine.
On 2/27/20 2:45 am, Pankaj Bansal wrote:
> Hi All,
>
> Please review the following fix for jdk15.
>
>
> Bug:
>
> https://bugs.openjdk.java.net/browse/JDK-8239902
>
> webrev:
>
> http://cr.openjdk.java.net/~pbansal/8239902/webrev00/
>
> Issue:
>
> In class CAccessible, the JSlider and JProgressBar class are being used directly, as it is adding changeListeners directly to JSlider or JProgressBar classes. The Accessibility classes should never access swing component classes directly. Instead, they should be accessing the AccessibleContext for the corresponding swing component and use them.
>
> Fix:
>
> Removed the direct usage of JSlider and JProgressBar classes.
>
> CAccessible is adding AXChangeNotifiers notificationListeners for all Accessible swing components. Both JSlider and JProgressBar classes are firing the property change events with property name “ACCESSIBLE_VALUE_PROPERTY” in setValue function using the AccessibleContext. So, these events will be listened to by AXChangeNotifiers and can be processed there instead of adding separate changeListeners.
>
> This is a cleanup and will not affect the functionality. This can be verified by running the JSliderDemo and JProgressBarDemo attached in JBS.
>
>
> Regards,
> Pankaj Bansal
>
--
Best regards, Sergey.
More information about the swing-dev
mailing list