Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(182)

Unified Diff: src/core/SkTypeface.cpp

Issue 1818043002: SkTypeface::MakeFromName to take SkFontStyle. (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: Decrease the change scope for changing the width to a generic one. Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/core/SkTypeface.cpp
diff --git a/src/core/SkTypeface.cpp b/src/core/SkTypeface.cpp
index 8d4233eac14d62921dba471c6a1a24e4ec0bb9ff..a87e8f567736302fec8f0e0a06a4598ab48a9015 100644
--- a/src/core/SkTypeface.cpp
+++ b/src/core/SkTypeface.cpp
@@ -27,7 +27,7 @@ extern void WhitelistSerializeTypeface(const SkTypeface*, SkWStream* );
#define SK_TYPEFACE_DELEGATE nullptr
#endif
-SkTypeface* (*gCreateTypefaceDelegate)(const char [], SkTypeface::Style ) = nullptr;
+SkTypeface* (*gCreateTypefaceDelegate)(const char [], SkFontStyle ) = nullptr;
void (*gSerializeTypefaceDelegate)(const SkTypeface*, SkWStream* ) = SK_TYPEFACE_DELEGATE;
SkTypeface* (*gDeserializeTypefaceDelegate)(SkStream* ) = nullptr;
@@ -108,20 +108,22 @@ bool SkTypeface::Equal(const SkTypeface* facea, const SkTypeface* faceb) {
///////////////////////////////////////////////////////////////////////////////
-SkTypeface* SkTypeface::CreateFromName(const char name[], Style style) {
- if (gCreateTypefaceDelegate) {
- SkTypeface* result = (*gCreateTypefaceDelegate)(name, style);
- if (result) {
- return result;
- }
- }
- if (nullptr == name) {
- return RefDefault(style);
- }
- SkAutoTUnref<SkFontMgr> fm(SkFontMgr::RefDefault());
- return fm->legacyCreateTypeface(name, style);
+SkTypeface* SkTypeface::CreateFromName(const char name[],
+ SkFontStyle fontStyle) {
+ if (gCreateTypefaceDelegate) {
+ SkTypeface* result = (*gCreateTypefaceDelegate)(name, fontStyle);
+ if (result) {
+ return result;
+ }
+ }
+ if (nullptr == name) {
+ return RefDefault();
+ }
+ SkAutoTUnref<SkFontMgr> fm(SkFontMgr::RefDefault());
+ return fm->matchFamilyStyle(name, fontStyle);
bungeman-skia 2016/03/22 20:16:43 I'm not sure we can make this change directly eith
Mikus 2016/03/23 10:47:17 What do you suggest, then? Should I restore the Cr
Mikus 2016/03/24 12:08:26 I suggest that we roll this and check the test res
}
+
SkTypeface* SkTypeface::CreateFromTypeface(const SkTypeface* family, Style s) {
if (!family) {
return SkTypeface::RefDefault(s);
@@ -193,7 +195,8 @@ SkTypeface* SkTypeface::Deserialize(SkStream* stream) {
return typeface;
}
}
- return SkTypeface::CreateFromName(desc.getFamilyName(), desc.getStyle());
+ return SkTypeface::CreateFromName(desc.getFamilyName(),
+ SkFontStyle(desc.getStyle()));
}
///////////////////////////////////////////////////////////////////////////////

Powered by Google App Engine
This is Rietveld 408576698