RESOLVED FIXED 143583
[iOS] Delete hardcoded font fallback tables
https://bugs.webkit.org/show_bug.cgi?id=143583
Summary [iOS] Delete hardcoded font fallback tables
Myles C. Maxfield
Reported 2015-04-09 15:33:53 PDT
[iOS] Delete hardcoded font fallback tables
Attachments
Patch (5.33 KB, patch)
2015-04-09 15:35 PDT, Myles C. Maxfield
no flags
Patch (5.28 KB, patch)
2015-04-14 18:21 PDT, Myles C. Maxfield
darin: review+
Myles C. Maxfield
Comment 1 2015-04-09 15:35:08 PDT
Jon Lee
Comment 2 2015-04-09 16:11:01 PDT
Myles C. Maxfield
Comment 3 2015-04-14 18:17:45 PDT
Perf says we're good to go with this.
Myles C. Maxfield
Comment 4 2015-04-14 18:21:36 PDT
Darin Adler
Comment 5 2015-04-15 10:10:50 PDT
Comment on attachment 250770 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=250770&action=review What kind of testing did you do? > Source/WebCore/platform/graphics/ios/FontCacheIOS.mm:450 > + RetainPtr<CTFontDescriptorRef> fallbackFontDescriptor = adoptCF(CTFontCreatePhysicalFontDescriptorForCharactersWithLanguage(originalFontData->getCTFont(), characters, length, nullptr, nullptr)); > + if (RetainPtr<CFStringRef> foundFontName = adoptCF(static_cast<CFStringRef>(CTFontDescriptorCopyAttribute(fallbackFontDescriptor.get(), kCTFontNameAttribute)))) > + font = fontForFamily(description, foundFontName.get(), false); I think these would read better with auto instead of writing out the types. Seems a little strange that we don’t pass a language in, since webpages do, in fact, sometimes have language information, but I guess this is very low-level code.
Myles C. Maxfield
Comment 6 2015-04-15 11:12:59 PDT
Comment on attachment 250770 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=250770&action=review >> Source/WebCore/platform/graphics/ios/FontCacheIOS.mm:450 >> + font = fontForFamily(description, foundFontName.get(), false); > > I think these would read better with auto instead of writing out the types. Seems a little strange that we don’t pass a language in, since webpages do, in fact, sometimes have language information, but I guess this is very low-level code. I agree - it seems like something we should do. https://bugs.webkit.org/show_bug.cgi?id=143788
Myles C. Maxfield
Comment 7 2015-04-15 11:26:34 PDT
(In reply to comment #5) > Comment on attachment 250770 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=250770&action=review > > What kind of testing did you do? > > > Source/WebCore/platform/graphics/ios/FontCacheIOS.mm:450 > > + RetainPtr<CTFontDescriptorRef> fallbackFontDescriptor = adoptCF(CTFontCreatePhysicalFontDescriptorForCharactersWithLanguage(originalFontData->getCTFont(), characters, length, nullptr, nullptr)); > > + if (RetainPtr<CFStringRef> foundFontName = adoptCF(static_cast<CFStringRef>(CTFontDescriptorCopyAttribute(fallbackFontDescriptor.get(), kCTFontNameAttribute)))) > > + font = fontForFamily(description, foundFontName.get(), false); > > I think these would read better with auto instead of writing out the types. > Seems a little strange that we don’t pass a language in, since webpages do, > in fact, sometimes have language information, but I guess this is very > low-level code. I ran PLT with and without this patch, and it didn't report any difference. As for correctness, I have yet to run layout tests. Note that chosen fallback fonts will change with this patch, which is both expected and desirable. I am going to look at all the test output to make sure nothing is going awry, and if not, update expected results.
Myles C. Maxfield
Comment 8 2015-04-16 10:21:54 PDT
These are the tests which need to be rebaselined. I will do so when I commit this patch today. editing/selection/vertical-rl-rtl-extend-line-backward-br.html editing/selection/vertical-rl-rtl-extend-line-backward-p.html editing/selection/vertical-rl-rtl-extend-line-forward-br.html editing/selection/vertical-rl-rtl-extend-line-forward-p.html fast/text/international/danda-space.html fast/text/international/thai-baht-space.html
Myles C. Maxfield
Comment 9 2015-04-16 10:33:34 PDT
Note You need to log in before you can comment on or make changes to this bug.