diff --git a/Kit/Widgets/BarChart.swift b/Kit/Widgets/BarChart.swift index 0d3658a5..2d26c131 100644 --- a/Kit/Widgets/BarChart.swift +++ b/Kit/Widgets/BarChart.swift @@ -166,7 +166,7 @@ public class BarChart: WidgetWrapper { let partition = NSBezierPath(rect: NSRect(x: x, y: offset, width: partitionWidth, height: partitonHeight)) switch self.colorState { - case .systemAccent: NSColor.controlAccentColor.set() + case .systemAccent: controlAccentColor.set() case .utilization: partitionValue.usageColor(zones: self.colorZones).setFill() case .pressure: self.pressureLevel.pressureColor().setFill() case .monochrome: @@ -175,7 +175,7 @@ public class BarChart: WidgetWrapper { } else { (isDarkMode ? NSColor.white : NSColor.black).set() } - default: (self.colorState.additional as? NSColor ?? NSColor.controlAccentColor).set() + default: (self.colorState.additional as? NSColor ?? controlAccentColor).set() } partition.fill() diff --git a/Kit/Widgets/LineChart.swift b/Kit/Widgets/LineChart.swift index 40cb7220..6b5ac7dc 100644 --- a/Kit/Widgets/LineChart.swift +++ b/Kit/Widgets/LineChart.swift @@ -107,9 +107,9 @@ public class LineChart: WidgetWrapper { let offset = lineWidth / 2 var boxSize: CGSize = CGSize(width: self.width - (Constants.Widget.margin.x*2), height: self.frame.size.height) - var color: NSColor = NSColor.controlAccentColor + var color: NSColor = controlAccentColor switch self.colorState { - case .systemAccent: color = NSColor.controlAccentColor + case .systemAccent: color = controlAccentColor case .utilization: color = value.usageColor() case .pressure: color = self.pressureLevel.pressureColor() case .monochrome: @@ -118,7 +118,7 @@ public class LineChart: WidgetWrapper { } else { color = (isDarkMode ? NSColor.white : NSColor.black) } - default: color = self.colorState.additional as? NSColor ?? NSColor.controlAccentColor + default: color = self.colorState.additional as? NSColor ?? controlAccentColor } if self.labelState { diff --git a/Kit/Widgets/Mini.swift b/Kit/Widgets/Mini.swift index 5802ad89..bd570b14 100644 --- a/Kit/Widgets/Mini.swift +++ b/Kit/Widgets/Mini.swift @@ -118,13 +118,13 @@ public class Mini: WidgetWrapper { origin.y = 1 } - var color: NSColor = NSColor.controlAccentColor + var color: NSColor = controlAccentColor switch self.colorState { - case .systemAccent: color = NSColor.controlAccentColor + case .systemAccent: color = controlAccentColor case .utilization: color = value.usageColor() case .pressure: color = self.pressureLevel.pressureColor() case .monochrome: color = (isDarkMode ? NSColor.white : NSColor.black) - default: color = self.colorState.additional as? NSColor ?? NSColor.controlAccentColor + default: color = self.colorState.additional as? NSColor ?? controlAccentColor } let stringAttributes = [ diff --git a/Kit/extensions.swift b/Kit/extensions.swift index 33be806e..33e74691 100644 --- a/Kit/extensions.swift +++ b/Kit/extensions.swift @@ -102,7 +102,7 @@ public extension Int { case 3: return NSColor.systemRed default: - return NSColor.controlAccentColor + return controlAccentColor } } } diff --git a/Kit/module/popup.swift b/Kit/module/popup.swift index dad3b9b6..0c56f223 100644 --- a/Kit/module/popup.swift +++ b/Kit/module/popup.swift @@ -241,7 +241,9 @@ internal class HeaderView: NSStackView { activity.translatesAutoresizingMaskIntoConstraints = false activity.imageScaling = .scaleNone activity.image = Bundle(for: type(of: self)).image(forResource: "chart")! - activity.contentTintColor = .lightGray + if #available(OSX 10.14, *) { + activity.contentTintColor = .lightGray + } activity.isBordered = false activity.action = #selector(openActivityMonitor) activity.target = self @@ -269,7 +271,9 @@ internal class HeaderView: NSStackView { settings.translatesAutoresizingMaskIntoConstraints = false settings.imageScaling = .scaleNone settings.image = Bundle(for: type(of: self)).image(forResource: "settings")! - settings.contentTintColor = .lightGray + if #available(OSX 10.14, *) { + settings.contentTintColor = .lightGray + } settings.isBordered = false settings.action = #selector(openSettings) settings.target = self diff --git a/Kit/module/settings.swift b/Kit/module/settings.swift index 1ceccb54..fa530182 100644 --- a/Kit/module/settings.swift +++ b/Kit/module/settings.swift @@ -371,7 +371,9 @@ internal class WidgetPreview: NSStackView { button.image = image } button.imageScaling = .scaleProportionallyDown - button.contentTintColor = .lightGray + if #available(OSX 10.14, *) { + button.contentTintColor = .lightGray + } button.isBordered = false button.action = #selector(self.toggleSettings) button.target = self diff --git a/Kit/plugins/Charts.swift b/Kit/plugins/Charts.swift index 0155b1e5..1d3c4e5e 100644 --- a/Kit/plugins/Charts.swift +++ b/Kit/plugins/Charts.swift @@ -36,7 +36,7 @@ public class LineChartView: NSView { public var points: [Double] public var transparent: Bool = true - public var color: NSColor = NSColor.controlAccentColor + public var color: NSColor = controlAccentColor public init(frame: NSRect, num: Int) { self.points = Array(repeating: 0, count: num) diff --git a/Kit/types.swift b/Kit/types.swift index 1fd58000..5bba6d46 100644 --- a/Kit/types.swift +++ b/Kit/types.swift @@ -157,6 +157,16 @@ extension Color: CaseIterable { } } +public var controlAccentColor: NSColor { + get { + if #available(OSX 10.14, *) { + return NSColor.controlAccentColor + } else { + return NSColor.systemBlue + } + } +} + public typealias colorZones = (orange: Double, red: Double) public extension Notification.Name { diff --git a/Modules/Disk/popup.swift b/Modules/Disk/popup.swift index 11752a5c..4b2726f1 100644 --- a/Modules/Disk/popup.swift +++ b/Modules/Disk/popup.swift @@ -218,7 +218,7 @@ internal class DiskNameAndBarView: NSView { let width: CGFloat = (view.frame.width * (percentage < 0 ? 0 : percentage)) / 1 self.usedBarSpace = NSView(frame: NSRect(x: 0, y: 0, width: width, height: view.frame.height)) self.usedBarSpace?.wantsLayer = true - self.usedBarSpace?.layer?.backgroundColor = NSColor.controlAccentColor.cgColor + self.usedBarSpace?.layer?.backgroundColor = controlAccentColor.cgColor view.addSubview(self.usedBarSpace!) self.addSubview(view) diff --git a/Modules/Net/popup.swift b/Modules/Net/popup.swift index 1926b38e..5fbdb088 100644 --- a/Modules/Net/popup.swift +++ b/Modules/Net/popup.swift @@ -166,7 +166,9 @@ internal class Popup: NSStackView, Popup_p { button.bezelStyle = .regularSquare button.isBordered = false button.imageScaling = NSImageScaling.scaleAxesIndependently - button.contentTintColor = .lightGray + if #available(OSX 10.14, *) { + button.contentTintColor = .lightGray + } button.action = #selector(self.resetTotalNetworkUsage) button.target = self button.toolTip = localizedString("Reset") @@ -212,7 +214,9 @@ internal class Popup: NSStackView, Popup_p { button.bezelStyle = .regularSquare button.isBordered = false button.imageScaling = NSImageScaling.scaleAxesIndependently - button.contentTintColor = .lightGray + if #available(OSX 10.14, *) { + button.contentTintColor = .lightGray + } button.action = #selector(self.refreshPublicIP) button.target = self button.toolTip = localizedString("Refresh") diff --git a/Stats/Views/Settings.swift b/Stats/Views/Settings.swift index 9bc720fc..e7679382 100644 --- a/Stats/Views/Settings.swift +++ b/Stats/Views/Settings.swift @@ -32,7 +32,9 @@ class SettingsWindow: NSWindow, NSWindowDelegate { self.animationBehavior = .default self.collectionBehavior = .moveToActiveSpace self.titlebarAppearsTransparent = true - self.appearance = NSAppearance(named: .darkAqua) + if #available(OSX 10.14, *) { + self.appearance = NSAppearance(named: .darkAqua) + } self.center() self.setIsVisible(false) @@ -235,7 +237,9 @@ private class SettingsView: NSView { button.translatesAutoresizingMaskIntoConstraints = false button.imageScaling = .scaleNone button.image = Bundle(for: type(of: self)).image(forResource: image)! - button.contentTintColor = .lightGray + if #available(OSX 10.14, *) { + button.contentTintColor = .lightGray + } button.isBordered = false button.action = action button.target = self diff --git a/Stats/Views/Update.swift b/Stats/Views/Update.swift index e708a8a8..c95c15f9 100644 --- a/Stats/Views/Update.swift +++ b/Stats/Views/Update.swift @@ -34,7 +34,9 @@ class UpdateWindow: NSWindow, NSWindowDelegate { self.animationBehavior = .default self.collectionBehavior = .transient self.titlebarAppearsTransparent = true - self.appearance = NSAppearance(named: .darkAqua) + if #available(OSX 10.14, *) { + self.appearance = NSAppearance(named: .darkAqua) + } self.center() self.setIsVisible(false)