Revert "Revert "hide nested hinting enum""
This reverts commit 6bd19df9fa9d26d9de4de646b2cdf82ff5dca67c.
Restores original CL, but adds guards for flutter.
Bug: skia:
Change-Id: I380b4ea87d293355026d734249aa2b8c397da144
Reviewed-on: https://skia-review.googlesource.com/c/169345
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
diff --git a/src/core/SkFont.cpp b/src/core/SkFont.cpp
index c4a02e9..7216e51 100644
--- a/src/core/SkFont.cpp
+++ b/src/core/SkFont.cpp
@@ -13,7 +13,7 @@
#define kDefault_Size 12
#define kDefault_Flags 0
-#define kDefault_Hinting SkFont::kNormal_Hinting
+#define kDefault_Hinting kNormal_SkFontHinting
static inline SkScalar valid_size(SkScalar size) {
return SkTMax<SkScalar>(0, size);
@@ -26,7 +26,7 @@
, fScaleX(scaleX)
, fSkewX(skewX)
, fFlags(flags & kAllFlags)
- , fHinting(kDefault_Hinting)
+ , fHinting(static_cast<unsigned>(kDefault_Hinting))
{}
SkFont::SkFont() : SkFont(nullptr, kDefault_Size, 1, 0, kDefault_Flags)
@@ -167,7 +167,7 @@
paint->setAntiAlias(SkToBool(fFlags & kDEPRECATED_Antialias_Flag));
paint->setLCDRenderText(SkToBool(fFlags & kDEPRECATED_LCDRender_Flag));
- paint->setHinting((SkPaint::Hinting)this->getHinting());
+ paint->setHinting((SkFontHinting)this->getHinting());
}
SkFont SkFont::LEGACY_ExtractFromPaint(const SkPaint& paint) {
@@ -197,6 +197,6 @@
SkFont font(sk_ref_sp(paint.getTypeface()), paint.getTextSize(), paint.getTextScaleX(),
paint.getTextSkewX(), flags);
- font.setHinting((Hinting)paint.getHinting());
+ font.setHinting((SkFontHinting)paint.getHinting());
return font;
}
diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp
index 73c7013..e7ed230 100644
--- a/src/core/SkPaint.cpp
+++ b/src/core/SkPaint.cpp
@@ -59,7 +59,7 @@
fBitfields.fJoinType = kDefault_Join;
fBitfields.fStyle = kFill_Style;
fBitfields.fTextEncoding = kUTF8_TextEncoding;
- fBitfields.fHinting = SkPaintDefaults_Hinting;
+ fBitfields.fHinting = static_cast<unsigned>(SkPaintDefaults_Hinting);
}
SkPaint::SkPaint(const SkPaint& src)
@@ -394,7 +394,8 @@
return (1 << bits) - 1;
}
-static uint32_t pack_paint_flags(unsigned flags, unsigned hint, unsigned filter, unsigned flatFlags) {
+static uint32_t pack_paint_flags(unsigned flags, unsigned hint, unsigned filter,
+ unsigned flatFlags) {
ASSERT_FITS_IN(flags, kFlags_BPF);
ASSERT_FITS_IN(hint, kHint_BPF);
ASSERT_FITS_IN(filter, kFilter_BPF);
@@ -409,7 +410,7 @@
static FlatFlags unpack_paint_flags(SkPaint* paint, uint32_t packed) {
paint->setFlags(packed >> 16);
- paint->setHinting((SkPaint::Hinting)((packed >> 14) & BPF_Mask(kHint_BPF)));
+ paint->setHinting((SkFontHinting)((packed >> 14) & BPF_Mask(kHint_BPF)));
paint->setFilterQuality((SkFilterQuality)((packed >> 10) & BPF_Mask(kFilter_BPF)));
return (FlatFlags)(packed & kFlatFlagMask);
}
@@ -441,7 +442,7 @@
buffer.writeScalar(paint.getStrokeMiter());
buffer.writeColor4f(paint.getColor4f());
- buffer.writeUInt(pack_paint_flags(paint.getFlags(), paint.getHinting(),
+ buffer.writeUInt(pack_paint_flags(paint.getFlags(), static_cast<unsigned>(paint.getHinting()),
paint.getFilterQuality(), flatFlags));
buffer.writeUInt(pack_4(paint.getStrokeCap(), paint.getStrokeJoin(),
(paint.getStyle() << 4) | paint.getTextEncoding(),
diff --git a/src/core/SkPaintDefaults.h b/src/core/SkPaintDefaults.h
index 3ea1cd3..708365b 100644
--- a/src/core/SkPaintDefaults.h
+++ b/src/core/SkPaintDefaults.h
@@ -25,7 +25,7 @@
#endif
#ifndef SkPaintDefaults_Hinting
- #define SkPaintDefaults_Hinting SkPaint::kNormal_Hinting
+ #define SkPaintDefaults_Hinting kNormal_SkFontHinting
#endif
#ifndef SkPaintDefaults_MiterLimit
diff --git a/src/core/SkPaint_text.cpp b/src/core/SkPaint_text.cpp
index fcbc7d4..21a7c95 100644
--- a/src/core/SkPaint_text.cpp
+++ b/src/core/SkPaint_text.cpp
@@ -291,7 +291,7 @@
flags |= SkPaint::kSubpixelText_Flag;
this->setFlags(flags);
- this->setHinting(SkPaint::kNo_Hinting);
+ this->setHinting(kNo_SkFontHinting);
this->setStyle(SkPaint::kFill_Style);
this->setPathEffect(nullptr);
diff --git a/src/core/SkTextBlob.cpp b/src/core/SkTextBlob.cpp
index 4d1a664..627e2de 100644
--- a/src/core/SkTextBlob.cpp
+++ b/src/core/SkTextBlob.cpp
@@ -27,7 +27,7 @@
, fScaleX(paint.getTextScaleX())
, fTypeface(SkPaintPriv::RefTypefaceOrDefault(paint))
, fSkewX(paint.getTextSkewX())
- , fHinting(paint.getHinting())
+ , fHinting(static_cast<unsigned>(paint.getHinting()))
, fFlags(paint.getFlags() & kFlagsMask) { }
void SkRunFont::applyToPaint(SkPaint* paint) const {
@@ -36,7 +36,7 @@
paint->setTextSize(fSize);
paint->setTextScaleX(fScaleX);
paint->setTextSkewX(fSkewX);
- paint->setHinting(static_cast<SkPaint::Hinting>(fHinting));
+ paint->setHinting(static_cast<SkFontHinting>(fHinting));
paint->setFlags((paint->getFlags() & ~kFlagsMask) | fFlags);
}
diff --git a/src/core/SkTextBlobPriv.h b/src/core/SkTextBlobPriv.h
index 67c97e6..149e652 100644
--- a/src/core/SkTextBlobPriv.h
+++ b/src/core/SkTextBlobPriv.h
@@ -92,7 +92,7 @@
sk_sp<SkTypeface> fTypeface;
SkScalar fSkewX;
- static_assert(SkPaint::kFull_Hinting < 4, "insufficient_hinting_bits");
+ static_assert(static_cast<unsigned>(kFull_SkFontHinting) < 4, "insufficient_hinting_bits");
uint32_t fHinting : 2;
static_assert((kFlagsMask & 0xffff) == kFlagsMask, "insufficient_flags_bits");
uint32_t fFlags : 16;
diff --git a/src/gpu/text/GrTextContext.cpp b/src/gpu/text/GrTextContext.cpp
index 94ce203..ee8f1d00 100644
--- a/src/gpu/text/GrTextContext.cpp
+++ b/src/gpu/text/GrTextContext.cpp
@@ -188,7 +188,7 @@
skPaint->setAntiAlias(true);
skPaint->setLCDRenderText(false);
skPaint->setAutohinted(false);
- skPaint->setHinting(SkPaint::kNormal_Hinting);
+ skPaint->setHinting(kNormal_SkFontHinting);
skPaint->setSubpixelText(true);
skPaint->setMaskFilter(GrSDFMaskFilter::Make());
diff --git a/src/pdf/SkPDFDevice.cpp b/src/pdf/SkPDFDevice.cpp
index f0f9abc..490edfb 100644
--- a/src/pdf/SkPDFDevice.cpp
+++ b/src/pdf/SkPDFDevice.cpp
@@ -1103,7 +1103,7 @@
SkPaint paint(srcPaint);
remove_color_filter(&paint);
replace_srcmode_on_opaque_paint(&paint);
- paint.setHinting(SkPaint::kNo_Hinting);
+ paint.setHinting(kNo_SkFontHinting);
if (!paint.getTypeface()) {
paint.setTypeface(SkTypeface::MakeDefault());
}
diff --git a/src/pdf/SkPDFFont.cpp b/src/pdf/SkPDFFont.cpp
index d797338..8f31408 100644
--- a/src/pdf/SkPDFFont.cpp
+++ b/src/pdf/SkPDFFont.cpp
@@ -34,7 +34,7 @@
SkExclusiveStrikePtr SkPDFFont::MakeVectorCache(SkTypeface* face, int* size) {
SkPaint tmpPaint;
- tmpPaint.setHinting(SkPaint::kNo_Hinting);
+ tmpPaint.setHinting(kNo_SkFontHinting);
tmpPaint.setTypeface(sk_ref_sp(face));
int unitsPerEm = face->getUnitsPerEm();
if (unitsPerEm <= 0) {
@@ -154,7 +154,7 @@
if (0 == metrics->fStemV || 0 == metrics->fCapHeight) {
SkPaint tmpPaint;
- tmpPaint.setHinting(SkPaint::kNo_Hinting);
+ tmpPaint.setHinting(kNo_SkFontHinting);
tmpPaint.setTypeface(sk_ref_sp(typeface));
tmpPaint.setTextSize(1000); // glyph coordinate system
if (0 == metrics->fStemV) {
diff --git a/src/utils/SkLua.cpp b/src/utils/SkLua.cpp
index 495a4f6..561953e 100644
--- a/src/utils/SkLua.cpp
+++ b/src/utils/SkLua.cpp
@@ -818,7 +818,7 @@
}
static int lpaint_getHinting(lua_State* L) {
- SkLua(L).pushU32(get_obj<SkPaint>(L, 1)->getHinting());
+ SkLua(L).pushU32((unsigned)get_obj<SkPaint>(L, 1)->getHinting());
return 1;
}