case highContrastDark
}
-struct ColorName {
+extension AppearanceMode {
- let name: String
-
- init(name: String) {
+ static var current: AppearanceMode {
- self.name = name
+ if #available(macOS 10.14, *) {
+
+ return currentMode1014()
+ }
+
+ if NSWorkspace.shared.accessibilityDisplayShouldIncreaseContrast {
+
+ return .highContrast
+ }
+
+ return .normal
}
- init(_ name: String) {
+ @available(macOS 10.14, *)
+ private static func currentMode1014() -> AppearanceMode {
- self.name = name
+ switch NSAppearance.current.name {
+
+ case .aqua: return .normal
+
+ /// not available in macOS 10.13 SDK
+// case .accessibilityHighContrastAqua: return .highContrast
+//
+// case .darkAqua: return .dark
+//
+// case .accessibilityHighContrastDarkAqua: return .highContrastDark
+
+ default: return .normal
+ }
}
}
-extension ColorName: Equatable {
+struct ColorName: Equatable {
- static func == (lhs: ColorName, rhs: ColorName) -> Bool {
+ private let name: String
+
+ private init(_ name: String) {
- return lhs.name == rhs.name
+ self.name = name
}
}
static var current: ColorSet {
- switch currentMode() {
+ switch AppearanceMode.current {
case .normal: return BaseColorSet.shared
case .highContrastDark: return HighContrastDarkModeColorSet.shared
}
}
-
- private static func currentMode() -> AppearanceMode {
-
- if #available(macOS 10.14, *) {
-
- return currentMode1014()
- }
-
- if NSWorkspace.shared.accessibilityDisplayShouldIncreaseContrast {
-
- return .highContrast
- }
-
- return .normal
- }
-
- @available(macOS 10.14, *)
- private static func currentMode1014() -> AppearanceMode {
-
- switch NSAppearance.current.name {
-
- case .aqua: return .normal
-
- /// not available in macOS 10.13 SDK
-// case .accessibilityHighContrastAqua: return .highContrast
-//
-// case .darkAqua: return .dark
-//
-// case .accessibilityHighContrastDarkAqua: return .highContrastDark
-
- default: return .normal
- }
- }
}
private struct BaseColorSet: ColorSet {