29 lines
1.3 KiB
Diff
29 lines
1.3 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jeremy Apthorp <nornagon@nornagon.net>
|
|
Date: Thu, 20 Sep 2018 17:49:24 -0700
|
|
Subject: mas: avoid usage of CGDisplayUsesForceToGray
|
|
|
|
Removes usage of the CGDisplayUsesForceToGray private API.
|
|
|
|
diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm
|
|
index 4d4ed7e8e5f38b50945fbb58ab8b913f56582533..6201e341d3a16f1344ae8f7177c80c290691ccd8 100644
|
|
--- a/ui/display/mac/screen_mac.mm
|
|
+++ b/ui/display/mac/screen_mac.mm
|
|
@@ -133,7 +133,17 @@ Display BuildDisplayForScreen(NSScreen* screen) {
|
|
display.set_color_depth(Display::kDefaultBitsPerPixel);
|
|
display.set_depth_per_component(Display::kDefaultBitsPerComponent);
|
|
}
|
|
+#ifdef MAS_BUILD
|
|
+ // This is equivalent to the CGDisplayUsesForceToGray() API as at 2018-08-06,
|
|
+ // but avoids usage of the private API.
|
|
+ CFStringRef app = CFSTR("com.apple.CoreGraphics");
|
|
+ CFStringRef key = CFSTR("DisplayUseForcedGray");
|
|
+ Boolean key_valid = false;
|
|
+ display.set_is_monochrome(
|
|
+ CFPreferencesGetAppBooleanValue(key, app, &key_valid));
|
|
+#else
|
|
display.set_is_monochrome(CGDisplayUsesForceToGray());
|
|
+#endif
|
|
|
|
if (auto display_link = ui::DisplayLinkMac::GetForDisplay(display_id))
|
|
display.set_display_frequency(display_link->GetRefreshRate());
|