Loading libs/hwui/HardwareBitmapUploader.cpp +11 −4 Original line number Diff line number Diff line Loading @@ -378,10 +378,17 @@ static FormatInfo determineFormat(const SkBitmap& skBitmap, bool usingGL) { break; case kAlpha_8_SkColorType: formatInfo.isSupported = HardwareBitmapUploader::hasAlpha8Support(); if (formatInfo.isSupported) { formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8_UNORM; formatInfo.format = GL_RED; formatInfo.type = GL_UNSIGNED_BYTE; formatInfo.vkFormat = VK_FORMAT_R8_UNORM; } else { formatInfo.type = GL_UNSIGNED_BYTE; formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM; formatInfo.vkFormat = VK_FORMAT_R8G8B8A8_UNORM; formatInfo.format = GL_RGBA; } break; default: ALOGW("unable to create hardware bitmap of colortype: %d", skBitmap.info().colorType()); Loading libs/hwui/hwui/Bitmap.cpp +1 −5 Original line number Diff line number Diff line Loading @@ -148,10 +148,6 @@ sk_sp<Bitmap> Bitmap::allocateAshmemBitmap(size_t size, const SkImageInfo& info, sk_sp<Bitmap> Bitmap::allocateHardwareBitmap(const SkBitmap& bitmap) { #ifdef __ANDROID__ // Layoutlib does not support hardware acceleration if (bitmap.colorType() == kAlpha_8_SkColorType && !uirenderer::HardwareBitmapUploader::hasAlpha8Support()) { return nullptr; } return uirenderer::HardwareBitmapUploader::allocateHardwareBitmap(bitmap); #else return Bitmap::allocateHeapBitmap(bitmap.info()); Loading Loading
libs/hwui/HardwareBitmapUploader.cpp +11 −4 Original line number Diff line number Diff line Loading @@ -378,10 +378,17 @@ static FormatInfo determineFormat(const SkBitmap& skBitmap, bool usingGL) { break; case kAlpha_8_SkColorType: formatInfo.isSupported = HardwareBitmapUploader::hasAlpha8Support(); if (formatInfo.isSupported) { formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8_UNORM; formatInfo.format = GL_RED; formatInfo.type = GL_UNSIGNED_BYTE; formatInfo.vkFormat = VK_FORMAT_R8_UNORM; } else { formatInfo.type = GL_UNSIGNED_BYTE; formatInfo.bufferFormat = AHARDWAREBUFFER_FORMAT_R8G8B8A8_UNORM; formatInfo.vkFormat = VK_FORMAT_R8G8B8A8_UNORM; formatInfo.format = GL_RGBA; } break; default: ALOGW("unable to create hardware bitmap of colortype: %d", skBitmap.info().colorType()); Loading
libs/hwui/hwui/Bitmap.cpp +1 −5 Original line number Diff line number Diff line Loading @@ -148,10 +148,6 @@ sk_sp<Bitmap> Bitmap::allocateAshmemBitmap(size_t size, const SkImageInfo& info, sk_sp<Bitmap> Bitmap::allocateHardwareBitmap(const SkBitmap& bitmap) { #ifdef __ANDROID__ // Layoutlib does not support hardware acceleration if (bitmap.colorType() == kAlpha_8_SkColorType && !uirenderer::HardwareBitmapUploader::hasAlpha8Support()) { return nullptr; } return uirenderer::HardwareBitmapUploader::allocateHardwareBitmap(bitmap); #else return Bitmap::allocateHeapBitmap(bitmap.info()); Loading