From 3c05fefefba72fa9627655d862977c4924d63dae Mon Sep 17 00:00:00 2001 From: Hariharan Mudaliar Date: Sat, 15 Nov 2025 23:53:57 +0530 Subject: [PATCH] BugFix: Stop --- DynamicIsland/managers/SystemTimerBridge.swift | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/DynamicIsland/managers/SystemTimerBridge.swift b/DynamicIsland/managers/SystemTimerBridge.swift index f451fc1..99f8bb6 100644 --- a/DynamicIsland/managers/SystemTimerBridge.swift +++ b/DynamicIsland/managers/SystemTimerBridge.swift @@ -523,6 +523,10 @@ final class SystemTimerBridge { if message.contains("started timer:") { handleTimerStartedMessage(message) } + + if message.contains("Timer stopped") { + handleTimerStoppedMessage(message) + } } private func handleScheduledTimersMessage(_ message: String) { @@ -660,6 +664,16 @@ final class SystemTimerBridge { setLogIdentifier(identifier) } + private func handleTimerStoppedMessage(_ message: String) { + guard logIdentifier != nil else { + logDebug("Timer stopped event received without active identifier; ignoring") + return + } + + logDebug("Timer stopped event received; clearing external timer state") + clearLogState(triggerSmoothClose: true) + } + private func applyLogDrivenUpdate(remaining: TimeInterval, isPaused: Bool, nameOverride: String? = nil, durationOverride: TimeInterval? = nil) { guard Defaults[.mirrorSystemTimer] else { return } guard !TimerManager.shared.hasManualTimerRunning else { return }