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

Commit 89ddb1f1 authored by Matt Sarett's avatar Matt Sarett
Browse files

Update framework to use new SkColorSpace API

Test: This compiles with SK_USE_LEGACY_NAMED_COLOR_SPACE
turned off.

Change-Id: Ie573f59e0aa475bab06b38589db3c6158ad82c5a
parent fd9d0ee9
Loading
Loading
Loading
Loading
+3 −3
Original line number Original line Diff line number Diff line
@@ -876,9 +876,9 @@ static jobject Bitmap_createFromParcel(JNIEnv* env, jobject, jobject parcel) {


    sk_sp<SkColorSpace> colorSpace;
    sk_sp<SkColorSpace> colorSpace;
    if (kRGBA_F16_SkColorType == colorType) {
    if (kRGBA_F16_SkColorType == colorType) {
        colorSpace = SkColorSpace::MakeNamed(SkColorSpace::kSRGBLinear_Named);
        colorSpace = SkColorSpace::MakeSRGBLinear();
    } else {
    } else {
        colorSpace = isSRGB ? SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named) : nullptr;
        colorSpace = isSRGB ? SkColorSpace::MakeSRGB() : nullptr;
    }
    }


    if (!bitmap->setInfo(SkImageInfo::Make(width, height, colorType, alphaType, colorSpace),
    if (!bitmap->setInfo(SkImageInfo::Make(width, height, colorType, alphaType, colorSpace),
@@ -997,7 +997,7 @@ static jboolean Bitmap_writeToParcel(JNIEnv* env, jobject,
    auto bitmapWrapper = reinterpret_cast<BitmapWrapper*>(bitmapHandle);
    auto bitmapWrapper = reinterpret_cast<BitmapWrapper*>(bitmapHandle);
    bitmapWrapper->getSkBitmap(&bitmap);
    bitmapWrapper->getSkBitmap(&bitmap);


    sk_sp<SkColorSpace> sRGB = SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named);
    sk_sp<SkColorSpace> sRGB = SkColorSpace::MakeSRGB();
    bool isSRGB = bitmap.colorSpace() == sRGB.get();
    bool isSRGB = bitmap.colorSpace() == sRGB.get();


    p->writeInt32(isMutable);
    p->writeInt32(isMutable);
+2 −2
Original line number Original line Diff line number Diff line
@@ -455,14 +455,14 @@ android::Bitmap* GraphicsJNI::mapAshmemBitmap(JNIEnv* env, SkBitmap* bitmap,


sk_sp<SkColorSpace> GraphicsJNI::defaultColorSpace() {
sk_sp<SkColorSpace> GraphicsJNI::defaultColorSpace() {
#ifdef ANDROID_ENABLE_LINEAR_BLENDING
#ifdef ANDROID_ENABLE_LINEAR_BLENDING
    return SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named);
    return SkColorSpace::MakeSRGB();
#else
#else
    return nullptr;
    return nullptr;
#endif
#endif
}
}


sk_sp<SkColorSpace> GraphicsJNI::linearColorSpace() {
sk_sp<SkColorSpace> GraphicsJNI::linearColorSpace() {
    return SkColorSpace::MakeNamed(SkColorSpace::kSRGBLinear_Named);
    return SkColorSpace::MakeSRGBLinear();
}
}


sk_sp<SkColorSpace> GraphicsJNI::colorSpaceForType(SkColorType type) {
sk_sp<SkColorSpace> GraphicsJNI::colorSpaceForType(SkColorType type) {
+1 −1
Original line number Original line Diff line number Diff line
@@ -282,7 +282,7 @@ void Texture::upload(Bitmap& bitmap) {
        setDefaultParams = true;
        setDefaultParams = true;
    }
    }


    sk_sp<SkColorSpace> sRGB = SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named);
    sk_sp<SkColorSpace> sRGB = SkColorSpace::MakeSRGB();
    bool needSRGB = bitmap.info().colorSpace() == sRGB.get();
    bool needSRGB = bitmap.info().colorSpace() == sRGB.get();


    GLint internalFormat, format, type;
    GLint internalFormat, format, type;
+1 −1
Original line number Original line Diff line number Diff line
@@ -564,7 +564,7 @@ bool Tree::allocateBitmapIfNeeded(Cache& cache, int width, int height) {
#ifndef ANDROID_ENABLE_LINEAR_BLENDING
#ifndef ANDROID_ENABLE_LINEAR_BLENDING
        sk_sp<SkColorSpace> colorSpace = nullptr;
        sk_sp<SkColorSpace> colorSpace = nullptr;
#else
#else
        sk_sp<SkColorSpace> colorSpace = SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named);
        sk_sp<SkColorSpace> colorSpace = SkColorSpace::MakeSRGB();
#endif
#endif
        SkImageInfo info = SkImageInfo::MakeN32(width, height, kPremul_SkAlphaType, colorSpace);
        SkImageInfo info = SkImageInfo::MakeN32(width, height, kPremul_SkAlphaType, colorSpace);
        cache.bitmap = Bitmap::allocateHeapBitmap(info);
        cache.bitmap = Bitmap::allocateHeapBitmap(info);
+2 −2
Original line number Original line Diff line number Diff line
@@ -232,7 +232,7 @@ sk_sp<Bitmap> Bitmap::allocateHardwareBitmap(uirenderer::renderthread::RenderThr
        return nullptr;
        return nullptr;
    }
    }


    sk_sp<SkColorSpace> sRGB = SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named);
    sk_sp<SkColorSpace> sRGB = SkColorSpace::MakeSRGB();
    bool needSRGB = skBitmap.info().colorSpace() == sRGB.get();
    bool needSRGB = skBitmap.info().colorSpace() == sRGB.get();
    bool hasSRGB = caches.extensions().hasSRGB();
    bool hasSRGB = caches.extensions().hasSRGB();
    GLint format, type, internalFormat;
    GLint format, type, internalFormat;
@@ -324,7 +324,7 @@ sk_sp<Bitmap> Bitmap::createFrom(sp<GraphicBuffer> graphicBuffer) {
    }
    }
    SkImageInfo info = SkImageInfo::Make(graphicBuffer->getWidth(), graphicBuffer->getHeight(),
    SkImageInfo info = SkImageInfo::Make(graphicBuffer->getWidth(), graphicBuffer->getHeight(),
            kRGBA_8888_SkColorType, kPremul_SkAlphaType,
            kRGBA_8888_SkColorType, kPremul_SkAlphaType,
            SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named));
            SkColorSpace::MakeSRGB());
    return sk_sp<Bitmap>(new Bitmap(graphicBuffer.get(), info));
    return sk_sp<Bitmap>(new Bitmap(graphicBuffer.get(), info));
}
}


Loading