Hi Phil,

 

Thanks for quick review.

 

I have copied the code from BasicRadioButtonUI.java, so as you surmise, there 
are no code changes except for the references to Aqua in a couple places and 
the line "JComponnet compTransferFocusFrom = activeBtn" in jumpToNextComponent. 
This variable is not used any where else.

 

I ran all the JRadioButton tests, and also checked SwingSet2 demo, which works 
with arrow keys now.

Here is the new webrev with spaces fixed: 
http://cr.openjdk.java.net/~kaddepalli/8208640/webrev01/

 

Thanks

Krishna

From: Philip Race 
Sent: Saturday, August 11, 2018 11:09 PM
To: Krishna Addepalli <krishna.addepa...@oracle.com>
Cc: swing-dev@openjdk.java.net
Subject: Re: <Swing Dev> [11]RFR:JDK-8208640: [a11y][macosx] Unable to navigate 
between Radiobuttons in Radio group using keyboard

 

Hi,


On 8/11/18, 8:21 AM, Krishna Addepalli wrote: 

Hi All,

 

Please review a fix for JDK-8208640: 
https://bugs.openjdk.java.net/browse/JDK-8208640

Webrev: HYPERLINK 
"http://cr.openjdk.java.net/%7Ekaddepalli/8208640/webrev00/"http://cr.openjdk.java.net/~kaddepalli/8208640/webrev00/

 

The problem is that the arrow key navigation for Aqua L&F was not implemented, 
which is why neither the tab keys nor the arrow keys were allowing to navigate 
through the radio buttons through a button group. 

Proposed fix is to copy the implementation from Basic L&F into Aqua L&F.

The fix is confined - which is good - to Aqua RadioButton L&F.

As in copied from here  ?
http://hg.openjdk.java.net/jdk/jdk11/file/da793334f142/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicRadioButtonUI.java

Everything you have added to Aqua looks like a copy / paste of that modulo
- some comment + formatting difference (BTW there are some minor formatting 
issues)
- references to Aqua instead of Basic

Is there anything that *is* different that I should be looking at closely ?

Regarding formatting look for things like these

+        public void actionPerformed(ActionEvent e){
+        boolean containsInGroup(Object obj){
+            if (focusBase != null){
+        public void actionPerformed(ActionEvent e){
+        if(!isValidRadioButtonObj(eventSrc))
+                if(!isValidRadioButtonObj(curElement))
+                if(activeBtn != null) {
 

Also fixed the test that was written to include the Aqua L&F to be tested, and 
it passes on Mac 


Have you run any *other* related tests for RadioButton, either from TCK or 
jtreg,
automated, or manual ? I'd hope & expect anything that might be affected needs 
to be run ..

Of course we also need to build + test this against SwingSet2 as well.

-phil.




successfully.

 

Thanks,

Krishna

Reply via email to