On Tue, 8 Mar 2022 10:52:44 GMT, Manukumar V S <m...@openjdk.org> wrote:
> Create a regression test for the JTree usecase of > [JDK-4618767](https://bugs.openjdk.java.net/browse/JDK-4618767) > Context: Migrating tests from a closed tonga based test suite to open > regression based one. > > Issue identified in > [JDK-4618767](https://bugs.openjdk.java.net/browse/JDK-4618767): > Typing a letter while a JTree has focus now makes the selection jump to the > first/next node/item whose text starts with that letter even though that > letter is accompanied by modifier keys such as ALT or CTRL. > > Fix: > Only enable JTree letter navigation when the user doesn't press any modifier > keys such as ALT or CTRL. > > Testing: > Java 1.4.0 -> Test Failed. > $ ./j2sdk1.4.0/bin/java JTreeOld > LookAndFeel: javax.swing.plaf.metal.MetalLookAndFeel > OS = windows nt (unknown) > java.lang.RuntimeException: Test Failed, expected colors, but got food > at JTreeOld.doTest(JTreeOld.java:166) > at JTreeOld.main(JTreeOld.java:32) > Exception in thread "main" > > Java 1.4.1 -> Test Passed. > $ ./j2sdk1.4.1/bin/java JTreeOld > LookAndFeel: javax.swing.plaf.metal.MetalLookAndFeel > OS = windows nt (unknown) > Test passed javax.swing.plaf.metal.MetalLookAndFeel > LookAndFeel: com.sun.java.swing.plaf.motif.MotifLookAndFeel > OS = windows nt (unknown) > Test passed com.sun.java.swing.plaf.motif.MotifLookAndFeel > LookAndFeel: com.sun.java.swing.plaf.windows.WindowsLookAndFeel > OS = windows nt (unknown) > Test passed com.sun.java.swing.plaf.windows.WindowsLookAndFeel Marked as reviewed by aivanov (Reviewer). test/jdk/javax/swing/JTree/4618767/JTreeSelectedElementTest.java line 166: > 164: final Point locationOnScreen = tree.getLocationOnScreen(); > 165: Rectangle rt = > tree.getPathBounds(tree.getPathForRow(rowCount)); > 166: locationOnScreen.translate((int) (rt.getX() + rt.getWidth() > / 2), (int) (rt.getY() + rt.getHeight() / 2)); Suggestion: locationOnScreen.translate(rt.x + rt.width / 2, rt.y + rt.height / 2); ------------- PR: https://git.openjdk.java.net/jdk/pull/7742