From b66270eac288de53207e55d10879b070a0ec8b6b Mon Sep 17 00:00:00 2001 From: Victoria Lease Date: Tue, 22 Apr 2014 15:00:31 -0700 Subject: ask skia to use flat gamma when rendering fonts from hwui Bug: 13748392 Change-Id: I6930629b8e900628f15354f663b86dfb29a4db78 --- libs/hwui/font/Font.cpp | 5 +++-- libs/hwui/font/Font.h | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/libs/hwui/font/Font.cpp b/libs/hwui/font/Font.cpp index 5187f8f..d22cb8a 100644 --- a/libs/hwui/font/Font.cpp +++ b/libs/hwui/font/Font.cpp @@ -42,6 +42,7 @@ namespace uirenderer { Font::Font(FontRenderer* state, const Font::FontDescription& desc) : mState(state), mDescription(desc) { + mDeviceProperties = SkDeviceProperties::Make(SkDeviceProperties::Geometry::MakeDefault(), 1.0f); } Font::FontDescription::FontDescription(const SkPaint* paint, const mat4& matrix) { @@ -272,7 +273,7 @@ CachedGlyphInfo* Font::getCachedGlyph(const SkPaint* paint, glyph_t textUnit, bo if (cachedGlyph) { // Is the glyph still in texture cache? if (!cachedGlyph->mIsValid) { - SkAutoGlyphCache autoCache(*paint, NULL, &mDescription.mLookupTransform); + SkAutoGlyphCache autoCache(*paint, &mDeviceProperties, &mDescription.mLookupTransform); const SkGlyph& skiaGlyph = GET_METRICS(autoCache.getCache(), textUnit); updateGlyphCache(paint, skiaGlyph, autoCache.getCache(), cachedGlyph, precaching); } @@ -464,7 +465,7 @@ CachedGlyphInfo* Font::cacheGlyph(const SkPaint* paint, glyph_t glyph, bool prec CachedGlyphInfo* newGlyph = new CachedGlyphInfo(); mCachedGlyphs.add(glyph, newGlyph); - SkAutoGlyphCache autoCache(*paint, NULL, &mDescription.mLookupTransform); + SkAutoGlyphCache autoCache(*paint, &mDeviceProperties, &mDescription.mLookupTransform); const SkGlyph& skiaGlyph = GET_METRICS(autoCache.getCache(), glyph); newGlyph->mIsValid = false; newGlyph->mGlyphIndex = skiaGlyph.fID; diff --git a/libs/hwui/font/Font.h b/libs/hwui/font/Font.h index 02197bc..6ddd4f2 100644 --- a/libs/hwui/font/Font.h +++ b/libs/hwui/font/Font.h @@ -19,6 +19,8 @@ #include +#include +#include #include #include #include @@ -146,6 +148,7 @@ private: DefaultKeyedVector mCachedGlyphs; bool mIdentityTransform; + SkDeviceProperties mDeviceProperties; }; inline int strictly_order_type(const Font::FontDescription& lhs, -- cgit v1.1