mirror of
https://github.com/morgan9e/macos-stats
synced 2026-04-14 00:04:15 +09:00
- fix Fans visibility on some macs (#135)
This commit is contained in:
@@ -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 {
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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")
|
||||
))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user