On Thu, 11 Feb 2021 18:04:26 GMT, Stanimir Stamenkov <github.com+1247730+sta...@openjdk.org> wrote:
>> The fix looks good to me too. It passes the set of the four tests related to >> the recent fixes: >> >> - javax/swing/text/html/CSS/8231286/HtmlFontSizeTest.java >> - javax/swing/text/html/CSS/4765271/bug4765271.java >> - javax/swing/text/html/StyleSheet/TestWrongCSSFontSize.java >> - javax/swing/text/html/StyleSheet/8260687/BodyInheritedFontSize.java >> >> I've just updated BodyInheritedFontSize.java on [my JDK-8260687 >> branch](https://github.com/aivanov-jdk/jdk/tree/JDK-8260687) to include your >> test case with `font-size: 100%`. > > I have copied the changes from the aivanov-jdk/jdk@f9e997776fe4 branch > earlier and made my revision to include the `font-size: 100%` case. I have > the following adjustments that don't appear included in @aivanov-jdk's latest > change: > > - The `<p style="font-size: 100%">...</p>` has to be before the > `<p>...</p>` to trigger the pre-existing problem (f.e. in Java 11); > - Replace `StyleConstants.getFontSize()` for `GlyphView.getFont().getSize()` > > The former is unreliable as it doesn't explicitly send a `StyleSheet` > context and depends on a generally unknown state of the > `CSS.styleSheet.w3cLengthUnits` the `FontSize` declaration has been > instantiated from. At the end, it doesn't report the actual font set to the > view – it computes a new result that might differ from the actual. > I have copied the changes from the > [aivanov-jdk/jdk@f9e9977](https://github.com/aivanov-jdk/jdk/commit/f9e997776fe4) > branch earlier and made my revision to include the `font-size: 100%` case. I > have the following adjustments that don't appear included in @aivanov-jdk's > latest change: > > * The `<p style="font-size: 100%">...</p>` has to be before the > `<p>...</p>` to trigger the pre-existing problem (f.e. in Java 11); I do not think the order matters. The paragraph which does not specify the font size and the paragraph which specifies it as 100% have the same size. This can be confirmed with another added check, does it make sense? > * Replace `StyleConstants.getFontSize()` for > `GlyphView.getFont().getSize()` > The former is unreliable as it doesn't explicitly send a `StyleSheet` > context and depends on a generally unknown state of the > `CSS.styleSheet.w3cLengthUnits` the `FontSize` declaration has been > instantiated from. At the end, it doesn't report the actual font set to the > view – it computes a new result that might differ from the actual. Does it not? I can't see it has much of difference: visually the views have different font sizes which is confirmed by the existing check. But the font size in all three cases is expected to be the same. ------------- PR: https://git.openjdk.java.net/jdk/pull/2515