Alexandr,

Please find my answer below.

Thanks,
Dmitry
On 14/04/2014 14:12, Alexander Scherbatiy wrote:
On 4/14/2014 10:59 AM, dmitry markov wrote:
Hi Alexandr,

Thank you for the review. According to the specification in ListSelectionModel: getAnchorSelectionIndex() and getLeadSelectionIndex() return the first index and the second index arguments from the most recent call to setSelectionInterval(), addSelectionInterval() or removeSelectionInterval(). So if -1 is not set explicitly via the methods described above, it is correct to return value which is not -1 even for empty selection. I guess, such behavior is intended for storing the information about the previous selection.
Is it possible that the lead selection index can be greater than the table row numbers?
Yes, it is possible. The lead selection index may be greater or equal to the row count, (e.g. for case described in the bug the lead index is 0 for the empty selection).

I seems that the getAdjustedIndex(index, row) method checks both these cases.
That is right. The fix does the same thing as getAdjustedIndex() method. Unfortunately we can not use the method in the fix, since if I get it right getAdjustedIndex() is designed for work with selectionModel, but here we work with modelSelection.

     Thanks,
     Alexandr.


Thanks,
Dmitry
On 11/04/2014 17:07, Alexander Scherbatiy wrote:
On 4/11/2014 4:36 PM, dmitry markov wrote:
Hello,

Could you review the fix for jdk9, please?

    bug: https://bugs.openjdk.java.net/browse/JDK-8032874
webrev: http://cr.openjdk.java.net/~dmarkov/8032874/jdk9/webrev.00/

Problem description: If JTable has Sorter and Filter and selected row is removed ArrayIndexOutOfBoundsException will be thrown. Fix: The method restoreSelection() in SortManager class should invoke convertRowIndexToView() only when modelSelection is NOT empty.

Is it the right behavior that modelSelection.getLeadSelectionIndex() does not return -1 when modelSelection.isSelectionEmpty() is true?

   Thanks,
   Alexandr.

Thanks,
Dmitry




Reply via email to