Looks fine.
> 28 февр. 2017 г., в 17:40, Mikhail Cherkasov <mikhail.cherka...@oracle.com>
> написал(а):
>
> Hi Sergey, Alexander,
>
> I have to revert the fix back to first version:
> http://cr.openjdk.java.net/~mcherkas/8171808/9/webrev.03/
> because invokeAndWait has side affect and needs to be called on all
> components separately, otherwise runtime exceptions can be occurred.
>
> Thanks,
> Mikhail.
>
>
> On 2/27/2017 8:13 PM, Sergey Bylokhov wrote:
>> 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.
>