aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/SkGr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/SkGr.cpp')
-rw-r--r--src/gpu/SkGr.cpp51
1 files changed, 8 insertions, 43 deletions
diff --git a/src/gpu/SkGr.cpp b/src/gpu/SkGr.cpp
index 27c9b39f5e..09155a05b3 100644
--- a/src/gpu/SkGr.cpp
+++ b/src/gpu/SkGr.cpp
@@ -264,7 +264,7 @@ GrPixelConfig SkImageInfo2GrPixelConfig(const SkColorType type, SkColorSpace* cs
// TODO: We're checking for srgbSupport, but we can then end up picking sBGRA as our pixel
// config (which may not be supported). We need a better test here.
case kRGB_888x_SkColorType:
- return kUnknown_GrPixelConfig;
+ return kRGB_888_GrPixelConfig;
case kBGRA_8888_SkColorType:
return (caps.srgbSupport() && cs && cs->gammaCloseToSRGB())
? kSBGRA_8888_GrPixelConfig : kBGRA_8888_GrPixelConfig;
@@ -286,49 +286,14 @@ GrPixelConfig SkImageInfo2GrPixelConfig(const SkImageInfo& info, const GrCaps& c
}
bool GrPixelConfigToColorType(GrPixelConfig config, SkColorType* ctOut) {
- SkColorType ct;
- switch (config) {
- case kAlpha_8_GrPixelConfig: // fall through
- case kAlpha_8_as_Alpha_GrPixelConfig: // fall through
- case kAlpha_8_as_Red_GrPixelConfig:
- ct = kAlpha_8_SkColorType;
- break;
- case kGray_8_GrPixelConfig: // fall through
- case kGray_8_as_Lum_GrPixelConfig: // fall through
- case kGray_8_as_Red_GrPixelConfig:
- ct = kGray_8_SkColorType;
- break;
- case kRGB_565_GrPixelConfig:
- ct = kRGB_565_SkColorType;
- break;
- case kRGBA_4444_GrPixelConfig:
- ct = kARGB_4444_SkColorType;
- break;
- case kRGBA_8888_GrPixelConfig:
- ct = kRGBA_8888_SkColorType;
- break;
- case kBGRA_8888_GrPixelConfig:
- ct = kBGRA_8888_SkColorType;
- break;
- case kSRGBA_8888_GrPixelConfig:
- ct = kRGBA_8888_SkColorType;
- break;
- case kSBGRA_8888_GrPixelConfig:
- ct = kBGRA_8888_SkColorType;
- break;
- case kRGBA_1010102_GrPixelConfig:
- ct = kRGBA_1010102_SkColorType;
- break;
- case kRGBA_half_GrPixelConfig:
- ct = kRGBA_F16_SkColorType;
- break;
- default:
- return false;
- }
- if (ctOut) {
- *ctOut = ct;
+ SkColorType ct = GrColorTypeToSkColorType(GrPixelConfigToColorType(config));
+ if (kUnknown_SkColorType != ct) {
+ if (ctOut) {
+ *ctOut = ct;
+ }
+ return true;
}
- return true;
+ return false;
}
GrPixelConfig GrRenderableConfigForColorSpace(const SkColorSpace* colorSpace) {