On Thu, 1 Apr 2021 12:12:40 GMT, Pankaj Bansal <pban...@openjdk.org> wrote:
>> Create implementation of NSAccessibilitySlider protocol >> https://developer.apple.com/documentation/appkit/nsaccessibilityslider >> >> The implementation has the function performIncrement and performDecrement to >> increase/decrease the value of slider using the VoiceOver. To implement this >> functionality, I could think of following two ways. I have chosen the first >> one here though it is more intrusive. >> 1. Make the AccessibleJSlider class implement the AccessibleAction >> interface. This makes AccessibleJSlider consistent with the >> AccessibleJSpinner class. It is more clear and the logic to >> increase/decrease Slider value can be changed easily. But this changes >> AccessibleJSlider class and will need a CSR. >> 2. Get the current Accessible Value from the component and just >> increment/decrement it in SliderAccessibility.m class itself and then set >> the current accessible value fro there only. This will not need any changes >> in AccessibleJSlider class, but this does not look correct way and I have >> not used this. >> >> The changes can be easily tested by using a JSlider example, like the >> following example. VO should announce the correct the slider values. To >> change the slider values, use ctrl+opt+shift+down key to start interacting >> with the slider, then use ctrl+opt+up/down arrow keys to increment/decrement >> slider values. >> >> import javax.swing.JFrame; >> import javax.swing.JSlider; >> >> public class JSliderDemo{ >> public static void main(String[] args) throws Exception { >> JFrame jframe = new JFrame("JSlider Demo"); >> jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); >> jframe.add(new JSlider()); >> >> jframe.setLocationRelativeTo(null); >> jframe.pack(); >> jframe.setVisible(true); >> } >> } > > Pankaj Bansal has updated the pull request with a new target base due to a > merge or a rebase. The pull request now contains seven commits: > > - Merge branch 'master' into JDK-8262981 > - increase initial capacity for rolesMap > - Remove whitespaces > - remove SpinboxAccessibility.m changes > - Code cleanup > - cleanup > - 8262981: Create implementation for NSAccessibilitySlider protocol Marked as reviewed by kizune (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/2874