Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(354)

Unified Diff: samplecode/SampleApp.cpp

Issue 2069173002: Lots of progress switching to SkColorSpace rather than SkColorProfileType (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Use new shared sRGB similarity function Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: samplecode/SampleApp.cpp
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 971044cf87250985055777b54ec993c546d3f28b..e639433421fc48c716b271bab3035eb922b072e0 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -48,17 +48,18 @@ class GrContext;
const struct {
SkColorType fColorType;
- SkColorProfileType fProfileType;
+ bool fSRGB;
Brian Osman 2016/06/16 15:15:06 Not using sk_sp<SkColorSpace> here to avoid static
msarett 2016/06/16 15:56:04 Acknowledged.
const char* fName;
} gConfig[] = {
- { kN32_SkColorType, kLinear_SkColorProfileType, "L32" },
- { kN32_SkColorType, kSRGB_SkColorProfileType, "S32" },
- { kRGBA_F16_SkColorType, kLinear_SkColorProfileType, "F16" },
+ { kN32_SkColorType, false, "L32" },
+ { kN32_SkColorType, true, "S32" },
+ { kRGBA_F16_SkColorType, false, "F16" },
};
static const char* find_config_name(const SkImageInfo& info) {
for (const auto& config : gConfig) {
- if (config.fColorType == info.colorType() && config.fProfileType == info.profileType()) {
+ if (config.fColorType == info.colorType() &&
+ config.fSRGB == (info.colorSpace() != nullptr)) {
return config.fName;
}
}
@@ -1635,7 +1636,9 @@ bool SampleWindow::onEvent(const SkEvent& evt) {
return true;
}
if (SkOSMenu::FindListIndex(evt, "ColorType", &selected)) {
- this->setDeviceColorType(gConfig[selected].fColorType, gConfig[selected].fProfileType);
+ auto srgbColorSpace = SkColorSpace::NewNamed(SkColorSpace::kSRGB_Named);
+ this->setDeviceColorType(gConfig[selected].fColorType,
+ gConfig[selected].fSRGB ? srgbColorSpace : nullptr);
return true;
}
if (SkOSMenu::FindSwitchState(evt, "Slide Show", nullptr)) {
@@ -1850,8 +1853,8 @@ void SampleWindow::setDeviceType(DeviceType type) {
this->inval(nullptr);
}
-void SampleWindow::setDeviceColorType(SkColorType ct, SkColorProfileType pt) {
- this->setColorType(ct, pt);
+void SampleWindow::setDeviceColorType(SkColorType ct, sk_sp<SkColorSpace> cs) {
+ this->setColorType(ct, std::move(cs));
fDevManager->tearDownBackend(this);
fDevManager->setUpBackend(this, fMSAASampleCount, fDeepColor);
« example/HelloWorld.cpp ('K') | « samplecode/SampleApp.h ('k') | src/core/SkBitmap.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698