Bug 201213

Summary: [Win] Material icons font aren't shown because ligature doesn't work
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: TextAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: don.olmstead, mmaxfield
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=247285
Bug Depends on:    
Bug Blocks: 201214    
Attachments:
Description Flags
test case
none
test case
none
WIP patch
none
[screenshot] layout issues
none
WIP patch none

Description Fujii Hironori 2019-08-27 22:08:09 PDT
[Win] Material icons font aren't shown

https://material.io/resources/icons/
Comment 1 Fujii Hironori 2019-08-27 22:08:20 PDT
Created attachment 377425 [details]
test case
Comment 2 Fujii Hironori 2019-08-27 22:31:42 PDT
Created attachment 377426 [details]
test case

It seems that ligature doesn't work.
Comment 3 Fujii Hironori 2019-08-27 23:21:37 PDT
complex text code path can show ligature glyphs properly.

And, DumpRenderTree.exe has --complex-text option.

.\WebKitBuild\Debug\bin64\DumpRenderTree.exe --show-webview --complex-text https://bug-201213-attachments.webkit.org/attachment.cgi?id=377426
Comment 4 Fujii Hironori 2019-08-27 23:40:15 PDT
Created attachment 377432 [details]
WIP patch
Comment 5 Fujii Hironori 2019-08-28 02:27:48 PDT
I found another issue of Windows port, and filed:
Bug 201214 – [Win][UniscribeController] Material icons containing underscore or numbers aren't shown because ScriptItemize splits them apart
Comment 6 Myles C. Maxfield 2019-08-28 10:39:32 PDT
This looks like a good start.
Comment 7 Don Olmstead 2019-08-28 21:39:35 PDT
Comment on attachment 377432 [details]
WIP patch

View in context: https://bugs.webkit.org/attachment.cgi?id=377432&action=review

> Source/WebCore/platform/graphics/FontCascade.h:281
> +#if PLATFORM(COCOA) || USE(FREETYPE) || PLATFORM(WIN)

With PLATFORM(WIN) in there that’s everyone so might as well just return true and drop this check.
Comment 8 Don Olmstead 2019-08-28 21:49:28 PDT
(In reply to Fujii Hironori from comment #3)
> complex text code path can show ligature glyphs properly.
> 
> And, DumpRenderTree.exe has --complex-text option.
> 
> .\WebKitBuild\Debug\bin64\DumpRenderTree.exe --show-webview --complex-text
> https://bug-201213-attachments.webkit.org/attachment.cgi?id=377426

I’m reminded of https://bugs.webkit.org/show_bug.cgi?id=179102 Myles
Comment 9 Myles C. Maxfield 2020-06-18 14:05:11 PDT
(In reply to Don Olmstead from comment #8)
> 
> I’m reminded of https://bugs.webkit.org/show_bug.cgi?id=179102 Myles

What I've got in mind is specific to CoreText, but probably wouldn't be too difficult to hook the architecture I've got in mind up to HarfBuzz. I don't know about DirectWrite, though. Possibly.
Comment 10 Fujii Hironori 2020-06-26 15:43:38 PDT
GTK port is always using complex text code path as default.

Bug 183285 – [GTK] Switch to use always complex text code path
Bug 194614 – [WPE][GTK] Clean up handling of WEBKIT_FORCE_COMPLEX_TEXT
Comment 11 Fujii Hironori 2020-06-27 15:17:17 PDT
I confirmed GTK port doen't show the Material icons if I set the env ver WEBKIT_FORCE_COMPLEX_TEXT=0.
Comment 12 Fujii Hironori 2020-06-27 18:21:37 PDT
Created attachment 402978 [details]
[screenshot] layout issues

I found layout issues for this patch.
https://b.hatena.ne.jp/hotentry/it

* unexpected word breaks
* narrow character spaces
Comment 13 Fujii Hironori 2020-06-27 21:22:27 PDT
(In reply to Fujii Hironori from comment #12)
> * unexpected word breaks

Filed: Bug 213691 – [WinCairo][Uniscribe] Katakana texts are unexpectedly wrapped because they don't fit into its own width
Comment 14 Fujii Hironori 2020-06-29 14:12:08 PDT
(In reply to Fujii Hironori from comment #12)
> * narrow character spaces
Filed: Bug 213754 – [WinCairo][Uniscribe] synthetic bold of embedded bitmap font glyphs are placed narrowly in complex text code path
Comment 15 Fujii Hironori 2020-06-29 18:10:24 PDT
Created attachment 403148 [details]
WIP patch
Comment 16 Fujii Hironori 2020-08-10 13:19:32 PDT
Myles is working on it in Bug 215318. Closed as duplicate.

*** This bug has been marked as a duplicate of bug 215318 ***