Ok, Looks fine.

> 
> Hi again,
> with this implementation I see a runtime exception, I see it in AccessBridge. 
> getAccessibleNameFromContext.
> InvocationUtils.invokeAndWait can't obtain AppContext. I don't see how it 
> relates to my changes, but without
> my changes it works fine, also it works fine with first version of the fix.
> 
> Thanks,
> Mikhail.
> 
> On 2/27/2017 3:49 PM, Mikhail Cherkasov wrote:
>> Hi Sergey,
>> 
>> http://cr.openjdk.java.net/~mcherkas/8171808/9/webrev.02/
>> I wrapped the very fist invocations of  _getVisibleChildrenCount and 
>> _getVisibleChild into InvocationUtils.invokeAndWait
>> and removed all InvocationUtils.invokeAndWait inside those two methods.
>> 
>> Thanks,
>> Mikhail.
>> 
>> On 2/24/2017 1:08 AM, Sergey Bylokhov wrote:
>>> Hi, Mikhail
>>> Why we call invokeAndWait() so many times in the new method?
>>> I guess we can do some work on EDT in one step then we will speedup the 
>>> code when the size of the table is huge and it has lots of visible items.
>>> 
>>>> Hi all,
>>>> 
>>>> Could you please review the fix:
>>>> http://cr.openjdk.java.net/~mcherkas/8171808/9/webrev.01/
>>>> for the following issue:
>>>> https://bugs.openjdk.java.net/browse/JDK-8171808
>>>> 
>>>> When JAWS asks java how many visible elements in the frame are,
>>>> java goes through the whole tree of component and asks each whether it 
>>>> visible or not.
>>>> During this java creates accessContext for each element, so this requires 
>>>> to get data from model.
>>>> So if user uses lazy loading or model is large, this counting makes app to 
>>>> freeze.
>>>> 
>>>> I reduced the number of components that should be checked for visibility,
>>>> if we get to a row that is invisible, there's no sense to check next rows, 
>>>> the same for columns.
>>>> 
>>>> Thanks,
>>>> Mikhail.
>> 
> 

Reply via email to