Bug 287629
Summary: | [GTK][WPE] <lang-attribute-affects-rendering.html> fails | ||
---|---|---|---|
Product: | WebKit | Reporter: | Deleted User <deleted_user> |
Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | Other | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
See Also: |
https://bugs.webkit.org/show_bug.cgi?id=270564 https://bugs.webkit.org/show_bug.cgi?id=79756 https://github.com/web-platform-tests/wpt/pull/51158 |
Deleted User
https://github.com/web-platform-tests/wpt/blob/1a5b13545a/css/css-fonts/lang-attribute-affects-rendering.html
It only fails for GTK: https://wpt.fyi/results/css?label=master&product=chrome%5Bexperimental%5D&product=edge%5Bexperimental%5D&product=firefox%5Bexperimental%5D&product=safari%5Bexperimental%5D&product=webkitgtk&aligned&q=%2Fcss%2Fcss-fonts%2Flang-attribute-affects-rendering.html.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Deleted User
Some analysis, read the test-case for context:
- https://searchfox.org/wubkat/rev/eb60a003e2487c2a8f34aaf8ce8f5d5af280ed55/Source/WebCore/platform/graphics/ComplexTextController.cpp#358 is called for "fi".
- `m_font.fontDescription().computedLocale()` is "en" ("tr" for the -ref.html file). That's expected.
- `FontCascade::fontForCombiningCharacterSequence` (https://searchfox.org/wubkat/rev/eb60a003e2487c2a8f34aaf8ce8f5d5af280ed55/Source/WebCore/platform/graphics/FontCascade.h#208) corresponds to different implementations: https://searchfox.org/wubkat/search?q=fontForCombiningCharacterSequence&redirect=false
- Since the test passes for Safari, perhaps the implementation for Skia, which is used by GTK, is buggy: https://searchfox.org/wubkat/rev/eb60a003e2487c2a8f34aaf8ce8f5d5af280ed55/Source/WebCore/platform/graphics/skia/FontCascadeSkia.cpp#132
Deleted User
Continued analysis:
https://searchfox.org/wubkat/rev/dd523ddb28deecac34400360788b2ba9cee771af/Source/WebCore/platform/graphics/ComplexTextController.cpp#462 is called.
Safari and GTK use different implementations of that method.
The test passes with Safari. Presumably, because of
<https://searchfox.org/wubkat/rev/dd523ddb28deecac34400360788b2ba9cee771af/Source/WebCore/platform/graphics/coretext/ComplexTextControllerCoreText.mm#200>.
The bug/missing functionality for GTK is presumably in the GTK-specific implementation: <https://searchfox.org/wubkat/rev/dd523ddb28deecac34400360788b2ba9cee771af/Source/WebCore/platform/graphics/skia/ComplexTextControllerSkia.cpp#153>.
Deleted User
`hb_language_t` (https://harfbuzz.github.io/harfbuzz-hb-common.html#hb-language-t) might need to be set.
Deleted User
Pull request: https://github.com/WebKit/WebKit/pull/40761
EWS
Committed 291691@main (c30953f1f00c): <https://commits.webkit.org/291691@main>
Reviewed commits have been landed. Closing PR #40761 and removing active labels.
Radar WebKit Bug Importer
<rdar://problem/146381919>