Hi, Shashi.
I checked it on the fresh build of jdk/client, and confirm that it is possible
to select progress bar using ctrl+option+up/down/left.
Screenshot is attached to the bug.
On 04/11/2018 23:08, shashidhara.veerabhadra...@oracle.com wrote:
Hi Sergey, I enabled 'All controls' access in the
'Keyboard->Shortcuts->Accessibility' but still was not able to get the focus
unto the progress bar and even with the short cut that you mentioned it always
skipped the progress bar. The control would move from 'edit text box' to 'Start
loading text' button. Even the bug description says to use the tab key to do this
operation.
Only with this fix, I was able to select the progress bar control and otherwise
not and that is true as per the focus traversal policy used for this control
type.
Thanks and regards,
Shashi
On 03/11/18 3:00 AM, Sergey Bylokhov wrote:
I am not sure that the focusable property should be changed to fix this issue.
because the property is ignored when a11y shortcuts are used, at least I am
able to select the progress bar using ctr+shift+cnd+left/right/up/down. And
VO reads the current value of the progress bar, but if the demo is in
progress("Start
loading text" button was pressed) the VO did not read information about the new
values of the progress bar.
On 24/10/2018 22:31, Shashidhara Veerabhadraiah wrote:
Hi Sergey, While fixing this bug I did not verified the behavior of other
components and how they behave with respect to the AT. Since the question about
other components came up and did some debugging on that part. Below is the
reason that I could find:
It is all about the focus traversal policy that is used for each component
type. While the both the JProgressBar and JLabel derived from JComponent and
then JComponent is also derived from Container and Component class.
JProgressBar component goes via the DefaultFocusTraversalPolicy(.java) while
the JLabel goes via the ContainerOrderFocusTraversalPolicy(.java) where there
are overriding methods of accept() function. This builds different behavior for
JLabel and JProressBar while focus traversal.
Since the both the components are derived out of Component class both are
default to focusable to true(Component.java) but because of the way accept()
method is overridden, JProgressBar's focusable state is considered only when
the focus traversable is overridden(not FOCUS_TRAVERSABLE_DEFAULT). Now by
calling setFocusable() explicitly overrides the current policy to
FOCUS_TRAVERSABLE_SET, hence the focusable state of the JProgressBar is
considered afterwards.
Hope this answers. Please let me know if you have any questions.
Thanks and regards,
Shashi
-----Original Message-----
From: Sergey Bylokhov
Sent: Thursday, October 25, 2018 3:11 AM
To: Shashidhara Veerabhadraiah <shashidhara.veerabhadra...@oracle.com>;
awt-...@openjdk.java.net; swing-dev@openjdk.java.net
Subject: Re: <Swing Dev> [12] JDK-7124285: Nothing heard from VoiceOver
regarding the status of the progress bar
Hi, Shashi.
Can you please provide more information about relation of focusable state and a
VoiceOver? The simple JLabel is not focusable, but VoiceOver reads its
contents, and it is possible to select the label using VoiceOver's shortcuts.
On 22/10/2018 00:36, shashidhara.veerabhadra...@oracle.com wrote:
Hi All, Please review a swingset fix for the below bug.
Bug: https://bugs.openjdk.java.net/browse/JDK-7124285
Fix: http://cr.openjdk.java.net/~sveerabhadra/7124285/webrev.00/
Problem: The JProgressBar component used in the swingset demo was not focusable
and once it is turned on, now the progress status is getting narrated via the
voice over.
Thanks and regards,
Shashi
--
Best regards, Sergey.