Files
steipete--codexbar/Sources/CodexBar/StatusItemController+WidgetSnapshot.swift
T
2026-07-13 12:22:33 +08:00

17 lines
746 B
Swift

extension StatusItemController {
func widgetDisplaySettingsSignature() -> String {
[
"enabled=\(self.store.enabledProvidersForDisplay().map(\.rawValue).joined(separator: ","))",
"showUsed=\(self.settings.usageBarsShowUsed ? "1" : "0")",
"optional=\(self.settings.showOptionalCreditsAndExtraUsage ? "1" : "0")",
].joined(separator: "|")
}
func persistWidgetSnapshotIfWidgetDisplaySettingsChanged() {
let signature = self.widgetDisplaySettingsSignature()
guard signature != self.lastWidgetDisplaySettingsSignature else { return }
self.lastWidgetDisplaySettingsSignature = signature
self.store.persistWidgetSnapshot(reason: "settings-display")
}
}