Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b66270ea authored by Victoria Lease's avatar Victoria Lease
Browse files

ask skia to use flat gamma when rendering fonts from hwui

Bug: 13748392
Change-Id: I6930629b8e900628f15354f663b86dfb29a4db78
parent c726f6b5
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -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;
+3 −0
Original line number Diff line number Diff line
@@ -19,6 +19,8 @@

#include <utils/KeyedVector.h>

#include <SkScalar.h>
#include <SkDeviceProperties.h>
#include <SkGlyphCache.h>
#include <SkScalerContext.h>
#include <SkPaint.h>
@@ -146,6 +148,7 @@ private:
    DefaultKeyedVector<glyph_t, CachedGlyphInfo*> mCachedGlyphs;

    bool mIdentityTransform;
    SkDeviceProperties mDeviceProperties;
};

inline int strictly_order_type(const Font::FontDescription& lhs,