RFR: 8292948: JEditorPane ignores font-size styles in external linked css-file [v2]
Stanimir Stamenkov
duke at openjdk.org
Sat Aug 27 17:14:18 UTC 2022
On Sat, 27 Aug 2022 14:06:19 GMT, Stanimir Stamenkov <duke at openjdk.org> wrote:
>> [JDK-8292948] reveals a regression by the fix for [JDK-8257664] (#1759) causing `font-size` declarations from external style sheets to be ignored.
>>
>> As far as I've traced, the problem is with the `isDefined(CSS.Attribute.FONT_SIZE)` test:
>>
>> https://github.com/openjdk/jdk/blob/70b5b3119b2ed032b021a080f34a4fa28d092fb5/src/java.desktop/share/classes/javax/swing/text/html/StyleSheet.java#L2825-L2830
>>
>> It misses declarations from linked styles via a `resolver` ([`AttributeSet.ResolveAttribute`](https://github.com/openjdk/jdk/blob/b0e0b87891eb81c2b33c1cfa598701b7bd2e5bdf/src/java.desktop/share/classes/javax/swing/text/AttributeSet.java#L187-L191)) attribute that happens to hold the external style sheet rules. The fix for this would be to move the implied `CSS.Attribute.FONT_SIZE` handling after:
>>
>> https://github.com/openjdk/jdk/blob/70b5b3119b2ed032b021a080f34a4fa28d092fb5/src/java.desktop/share/classes/javax/swing/text/html/StyleSheet.java#L2833-L2835
>>
>> and drop the `isDefined()` test.
>>
>> [I'll prepare a jtreg test further.]
>>
>> [JDK-8292948]: https://bugs.openjdk.org/browse/JDK-8292948 "JEditorPane ignores font-size styles in external linked css-file"
>> [JDK-8257664]: https://bugs.openjdk.org/browse/JDK-8257664 "HTMLEditorKit: Wrong CSS relative font sizes"
>
> Stanimir Stamenkov has updated the pull request incrementally with two additional commits since the last revision:
>
> - 8292948: Add suggested jtreg test
> - 8292948: Update copyright year
test/jdk/javax/swing/text/html/StyleSheet/TestExternalCSSFontSize.java line 58:
> 56:
> 57: CountDownLatch setUp() throws Exception {
> 58: File htmlFile = new File("TestExternalCSSFontSize.html");
Not sure if I should better resolve this from the classpath:
Suggestion:
URL htmlFile = getClass().getResource(getClass().getSimpleName() + ".html");
-------------
PR: https://git.openjdk.org/jdk/pull/10054
More information about the client-libs-dev
mailing list