From ec38561254c22f18166558be9737e558ad5382a0 Mon Sep 17 00:00:00 2001 From: Shelley Vohr Date: Mon, 1 Oct 2018 07:52:04 -0700 Subject: [PATCH] chore: wrap new NSAppearance in correct check (#14873) * fix: wrap new NSAppearance in correct check * catch dark case on < 10.14 * fix @available conditional organization --- atom/browser/api/atom_api_system_preferences_mac.mm | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/atom/browser/api/atom_api_system_preferences_mac.mm b/atom/browser/api/atom_api_system_preferences_mac.mm index 814abe7875be..699f4c91faed 100644 --- a/atom/browser/api/atom_api_system_preferences_mac.mm +++ b/atom/browser/api/atom_api_system_preferences_mac.mm @@ -37,7 +37,11 @@ struct Converter { *out = [NSAppearance appearanceNamed:NSAppearanceNameAqua]; return true; } else if (name == "dark") { - *out = [NSAppearance appearanceNamed:NSAppearanceNameDarkAqua]; + if (@available(macOS 10.14, *)) { + *out = [NSAppearance appearanceNamed:NSAppearanceNameDarkAqua]; + } else { + *out = [NSAppearance appearanceNamed:NSAppearanceNameAqua]; + } return true; } @@ -48,11 +52,14 @@ struct Converter { if (val == nil) { return v8::Null(isolate); } + if (val.name == NSAppearanceNameAqua) { return mate::ConvertToV8(isolate, "light"); } - if (val.name == NSAppearanceNameDarkAqua) { - return mate::ConvertToV8(isolate, "dark"); + if (@available(macOS 10.14, *)) { + if (val.name == NSAppearanceNameDarkAqua) { + return mate::ConvertToV8(isolate, "dark"); + } } return mate::ConvertToV8(isolate, "unknown");