- fix Fans visibility on some macs (#135)

This commit is contained in:
Serhiy Mytrovtsiy
2020-11-02 16:08:21 +01:00
parent c246c9d5b8
commit 28b5d996d7
3 changed files with 11 additions and 21 deletions

View File

@@ -16,8 +16,8 @@ import ModuleKit
public struct Fan {
public let id: Int
public let name: String
public let minSpeed: Int
public let maxSpeed: Int
public let minSpeed: Double
public let maxSpeed: Double
public var value: Double?
var state: Bool {

View File

@@ -144,7 +144,7 @@ internal class FanView: NSView {
let row: NSView = NSView(frame: NSRect(x: 0, y: 0, width: self.mainView.frame.width, height: 14))
let value = (self.fan.value ?? 0)
let percentage = "\((100*Int(value)) / self.fan.maxSpeed)%"
let percentage = "\((100*Int(value)) / Int(self.fan.maxSpeed))%"
let percentageWidth: CGFloat = 40
let percentageField: NSTextField = TextView(frame: NSRect(
@@ -172,7 +172,7 @@ internal class FanView: NSView {
}
if let view = self.percentageField, let value = value.value {
view.stringValue = "\((100*Int(value)) / self.fan.maxSpeed)%"
view.stringValue = "\((100*Int(value)) / Int(self.fan.maxSpeed))%"
}
self.ready = true

View File

@@ -28,23 +28,13 @@ internal class FansReader: Reader<[Fan]> {
os_log(.debug, log: self.log, "Found %.0f fans", count)
for i in 0..<Int(count) {
guard let name = smc.pointee.getStringValue("F\(i)ID") else {
continue
}
guard let minSpeed = smc.pointee.getValue("F\(i)Mn") else {
continue
}
guard let maxSpeed = smc.pointee.getValue("F\(i)Mx") else {
continue
}
guard let value = smc.pointee.getValue("F\(i)Ac") else {
continue
}
self.list.append(Fan(id: i, name: name, minSpeed: Int(minSpeed), maxSpeed: Int(maxSpeed), value: value))
self.list.append(Fan(
id: i,
name: smc.pointee.getStringValue("F\(i)ID") ?? "Fan #\(i)",
minSpeed: smc.pointee.getValue("F\(i)Mn") ?? 0,
maxSpeed: smc.pointee.getValue("F\(i)Mx") ?? 0,
value: smc.pointee.getValue("F\(i)Ac")
))
}
}