On Thu, 1 Dec 2022 18:22:57 GMT, Olga Mikhaltsova <omikhaltc...@openjdk.org> wrote:
>> This is a fix for LineBreakMeasurer. It takes into account the >> TextAttribute.TRACKING value (not eq 0) while calculating the line breaks. >> >> Tested on Linux x64, Windows x64, macOS x64 with the reproducer >> (LineBreakSample.java) attached to JDK-8165943 and the following group of >> tests: >> `$JTREG_HOME/bin/jtreg -jdk:$BUILD_HOME ./test/jdk/java/awt/font` > > Olga Mikhaltsova has updated the pull request incrementally with two > additional commits since the last revision: > > - Fix tracking for CJK, Arabic and Hebrew > - Manual test Changes requested by prr (Reviewer). test/jdk/java/awt/font/LineBreakMeasurer/LineBreakWithTracking.java line 27: > 25: @test > 26: @key headful > 27: @bug 8165943 headful isn't needed on manual tests. Also whilst you can keep this manual test, I still think an automated test that verifies tracking is making a difference to the advance should be provided. test/jdk/java/awt/font/LineBreakMeasurer/LineBreakWithTracking.java line 76: > 74: Float regular = new Float(16.0); > 75: Float big = new Float(24.0); > 76: LineBreakWithTracking.java:74: warning: [removal] Float(double) in Float has been deprecated and marked for removal Float regular = new Float(16.0); ^ LineBreakWithTracking.java:75: warning: [removal] Float(double) in Float has been deprecated and marked for removal Float big = new Float(24.0); Use Float.valueOf(float) instead test/jdk/java/awt/font/LineBreakMeasurer/LineBreakWithTracking.java line 138: > 136: btn.addActionListener(new ActionListener(){ > 137: public void actionPerformed(ActionEvent e){ > 138: System.exit(0); Do not call System.exit() in jtreg tests - even manual ones or ones that run in their own VM. Instead dispose() the UI and then either let main() exit normally or throw RuntimeException() to indicate failure. Also be sure that ALL exit paths clean up windows. You may want to use PassFailJFrame.java to help you avoid writing the boilerplate and to get some of these things right https://github.com/openjdk/jdk/blob/master/test/jdk/java/awt/regtesthelpers/PassFailJFrame.java ------------- PR: https://git.openjdk.org/jdk/pull/10289