From 442ca036945d56bf57c242c01ad33ab8f970cd0c Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Thu, 10 Jul 2025 09:36:27 -0700 Subject: [PATCH] Automatically save posix timezone from your local phone timezone if it is empty, take the logic out of the view so users don't havve to manually save anymore --- Meshtastic/Persistence/UpdateCoreData.swift | 12 ++++++++++-- Meshtastic/Views/Settings/Config/DeviceConfig.swift | 6 ------ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/Meshtastic/Persistence/UpdateCoreData.swift b/Meshtastic/Persistence/UpdateCoreData.swift index bc0093a8..b70b3432 100644 --- a/Meshtastic/Persistence/UpdateCoreData.swift +++ b/Meshtastic/Persistence/UpdateCoreData.swift @@ -574,7 +574,11 @@ func upsertDeviceConfigPacket(config: Config.DeviceConfig, nodeNum: Int64, sessi newDeviceConfig.tripleClickAsAdHocPing = !config.disableTripleClick newDeviceConfig.ledHeartbeatEnabled = !config.ledHeartbeatDisabled newDeviceConfig.isManaged = config.isManaged - newDeviceConfig.tzdef = config.tzdef + if config.tzdef.isEmpty { + newDeviceConfig.tzdef = TimeZone.current.posixDescription + } else { + newDeviceConfig.tzdef = config.tzdef + } fetchedNode[0].deviceConfig = newDeviceConfig } else { fetchedNode[0].deviceConfig?.role = Int32(config.role.rawValue) @@ -586,7 +590,11 @@ func upsertDeviceConfigPacket(config: Config.DeviceConfig, nodeNum: Int64, sessi fetchedNode[0].deviceConfig?.tripleClickAsAdHocPing = !config.disableTripleClick fetchedNode[0].deviceConfig?.ledHeartbeatEnabled = !config.ledHeartbeatDisabled fetchedNode[0].deviceConfig?.isManaged = config.isManaged - fetchedNode[0].deviceConfig?.tzdef = config.tzdef + if config.tzdef.isEmpty { + fetchedNode[0].deviceConfig?.tzdef = TimeZone.current.posixDescription + } else { + fetchedNode[0].deviceConfig?.tzdef = config.tzdef + } } if sessionPasskey != nil { fetchedNode[0].sessionPasskey = sessionPasskey diff --git a/Meshtastic/Views/Settings/Config/DeviceConfig.swift b/Meshtastic/Views/Settings/Config/DeviceConfig.swift index 834dcc0f..3085192d 100644 --- a/Meshtastic/Views/Settings/Config/DeviceConfig.swift +++ b/Meshtastic/Views/Settings/Config/DeviceConfig.swift @@ -334,11 +334,5 @@ struct DeviceConfig: View { self.tripleClickAsAdHocPing = node?.deviceConfig?.tripleClickAsAdHocPing ?? false self.ledHeartbeatEnabled = node?.deviceConfig?.ledHeartbeatEnabled ?? true self.tzdef = node?.deviceConfig?.tzdef ?? "" - if self.tzdef.isEmpty { - self.tzdef = TimeZone.current.posixDescription - self.hasChanges = true - } else { - self.hasChanges = false - } } }