RFR: 8165943: LineBreakMeasurer does not measure correctly if TextAttribute.TRACKING is set. [v2]
Olga Mikhaltsova
omikhaltcova at openjdk.org
Tue Dec 6 22:19:24 UTC 2022
On Thu, 1 Dec 2022 20:16:19 GMT, Phil Race <prr at openjdk.org> wrote:
>> 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
>
> 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.
fixed
> 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
fixed
> 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
fixed
-------------
PR: https://git.openjdk.org/jdk/pull/10289
More information about the client-libs-dev
mailing list