diff options
author | Minh Nguyễn <mxn@1ec5.org> | 2018-03-06 13:07:43 -0800 |
---|---|---|
committer | Minh Nguyễn <mxn@1ec5.org> | 2018-03-06 13:07:43 -0800 |
commit | 8409db9602941d342c3cbc005a1f3715f8b1a521 (patch) | |
tree | e048954772c85e6b15cca963c221ab314215d8ed | |
parent | a680e75708231bc41b8cf97c6b29a35a72537b05 (diff) | |
download | qtlocation-mapboxgl-8409db9602941d342c3cbc005a1f3715f8b1a521.tar.gz |
Revert "[macos] Use device RGB, which is always sRGB"
This reverts commit a680e75708231bc41b8cf97c6b29a35a72537b05.
-rw-r--r-- | platform/darwin/src/MGLAttributionInfo.mm | 7 | ||||
-rw-r--r-- | platform/macos/src/NSColor+MGLAdditions.h | 2 | ||||
-rw-r--r-- | platform/macos/src/NSColor+MGLAdditions.mm | 14 |
3 files changed, 18 insertions, 5 deletions
diff --git a/platform/darwin/src/MGLAttributionInfo.mm b/platform/darwin/src/MGLAttributionInfo.mm index df20275e3f..f52d7590d8 100644 --- a/platform/darwin/src/MGLAttributionInfo.mm +++ b/platform/darwin/src/MGLAttributionInfo.mm @@ -4,6 +4,7 @@ #import <UIKit/UIKit.h> #else #import <Cocoa/Cocoa.h> + #import <Availability.h> #endif #import "MGLAccountManager.h" @@ -49,8 +50,12 @@ CGFloat blue; CGFloat alpha; #if !TARGET_OS_IPHONE +#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300 // CSS uses the sRGB color space. - linkColor = [linkColor colorUsingColorSpaceName:NSDeviceRGBColorSpace]; + linkColor = [linkColor colorUsingColorSpace:[NSColorSpace sRGBColorSpace]]; +#else + linkColor = [linkColor colorUsingColorSpaceName:NSCalibratedRGBColorSpace]; +#endif #endif [linkColor getRed:&red green:&green blue:&blue alpha:&alpha]; [css appendFormat: diff --git a/platform/macos/src/NSColor+MGLAdditions.h b/platform/macos/src/NSColor+MGLAdditions.h index af9b8b0255..8dd8c1c17c 100644 --- a/platform/macos/src/NSColor+MGLAdditions.h +++ b/platform/macos/src/NSColor+MGLAdditions.h @@ -6,7 +6,7 @@ @interface NSColor (MGLAdditions) /** - Converts the color into an mbgl::Color in sRGB space. + Converts the color into an mbgl::Color in calibrated RGB space. */ - (mbgl::Color)mgl_color; diff --git a/platform/macos/src/NSColor+MGLAdditions.mm b/platform/macos/src/NSColor+MGLAdditions.mm index 02f50783e8..878697c119 100644 --- a/platform/macos/src/NSColor+MGLAdditions.mm +++ b/platform/macos/src/NSColor+MGLAdditions.mm @@ -1,23 +1,31 @@ #import "NSColor+MGLAdditions.h" +#import <Availability.h> + @implementation NSColor (MGLAdditions) - (mbgl::Color)mgl_color { CGFloat r, g, b, a; +#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300 // The Mapbox Style Specification does not specify a color space, but it is // assumed to be sRGB for consistency with CSS. - // As of OS X 10.8 Mountin Lion, device RGB is equivalent to sRGB. - // https://download.developer.apple.com/wwdc_2012/wwdc_2012_session_pdfs/session_523__best_practices_for_color_management.pdf#page=137 - [[self colorUsingColorSpaceName:NSDeviceRGBColorSpace] getRed:&r green:&g blue:&b alpha:&a]; + [[self colorUsingColorSpace:[NSColorSpace sRGBColorSpace]] getRed:&r green:&g blue:&b alpha:&a]; +#else + [[self colorUsingColorSpaceName:NSCalibratedRGBColorSpace] getRed:&r green:&g blue:&b alpha:&a]; +#endif return { (float)r, (float)g, (float)b, (float)a }; } + (NSColor *)mgl_colorWithColor:(mbgl::Color)color { +#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300 return [NSColor colorWithRed:color.r green:color.g blue:color.b alpha:color.a]; +#else + return [NSColor colorWithCalibratedRed:color.r green:color.g blue:color.b alpha:color.a]; +#endif } - (mbgl::style::PropertyValue<mbgl::Color>)mgl_colorPropertyValue |