<Swing Dev> RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux
Sergey Bylokhov
serb at openjdk.java.net
Sat Feb 27 21:59:43 UTC 2021
On Sat, 27 Feb 2021 17:02:13 GMT, Alexander Zvegintsev <azvegint at openjdk.org> wrote:
> This issue occurs only under `MetalLookAndFeel` on Linux.
>
> It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix.
>
>> component.setBounds(ownerX, ownerY, 1, 1);
>
> This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes.
>
> If `MetalToolTipUI#paint()` call happens before getting correct sizes, it calculates `paintTextR` with negative sizes for component with `1x1` size, thus IAE is thrown.
>
> The fix is to do not proceed with `paint()` for negative sizes.
> The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good.
Any idea why Linux is affected only?
test/jdk/javax/swing/JToolTip/FastTooltipSwitchIAE.java line 52:
> 50: SwingUtilities.invokeLater(() -> {
> 51: try {
> 52: UIManager.setLookAndFeel(new MetalLookAndFeel());
Can the test checks all installed L&F just to check for similar bugs?
-------------
PR: https://git.openjdk.java.net/jdk/pull/2761
More information about the swing-dev
mailing list