On Tue, 1 Aug 2023 13:05:37 GMT, Tejesh R <[email protected]> wrote:
>> The header border uses `g.drawLine` whereas the JTable data grid lines uses
>> `SwingUtilities2.drawVLine` and `SwingUtilities2.drawHLine` to draw
>> horizontal and vertical lines. The SwingUtilities2 uses `Graphics.fillRect`
>> which contributes to the difference between the position of these two lines
>> which happens/visible at higher ui scaling (difference in alignment between
>> vertical lines of these two). The fix propose to use the same methods for
>> metal L&F of JTable header border paint.
>> CI testing shows green.
>>
>> 
>
> Tejesh R has updated the pull request with a new target base due to a merge
> or a rebase. The incremental webrev excludes the unrelated changes brought in
> by the merge/rebase. The pull request contains 14 additional commits since
> the last revision:
>
> - Review fix
> - Merge branch 'master' of https://git.openjdk.java.net/jdk into
> branch_8311031
> - Review fix
> - Review fix
> - Review fix
> - Review fix
> - Review fix
> - Review fix
> - Review comment fix
> - Updated based on review comments
> - ... and 4 more: https://git.openjdk.org/jdk/compare/acb0339e...3e76abaa
test/jdk/javax/swing/JTableHeader/TableHeaderBorderPositionTest.java line 99:
> 97: saveBufferedImage(bufferedImage, "failureImage.png");
> 98: throw new RuntimeException("Test Failed at <" + x +
> ", " + y + ">");
> 99: }
Ideally this failure check should be done outside EDT else I think you will get
InvocationTargetException instead of RuntimeException
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14766#discussion_r1281458815