From fc261d40058a28428cb1f11bd8ca177266678c78 Mon Sep 17 00:00:00 2001 From: b3ni15 Date: Tue, 10 Mar 2026 07:20:01 +0100 Subject: [PATCH] Enhance countdown timer display in LockScreenLiveActivityView for improved readability and layout --- refilc/ios/livecard/livecard.swift | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/refilc/ios/livecard/livecard.swift b/refilc/ios/livecard/livecard.swift index 251073cb..7685e910 100644 --- a/refilc/ios/livecard/livecard.swift +++ b/refilc/ios/livecard/livecard.swift @@ -63,6 +63,12 @@ struct LockScreenLiveActivityView: View { return "\(context.state.nextSubject) - \(context.state.nextRoom)" } + private var countdownFont: Font { + // h:mm:ss needs more space than mm:ss + let remaining = max(0, context.state.endDate.timeIntervalSinceNow) + return remaining >= 3600 ? .title3 : .title2 + } + var body: some View { HStack(alignment: .center, spacing: 0) { // Ikon @@ -113,15 +119,19 @@ struct LockScreenLiveActivityView: View { } .padding(.horizontal, 12) .padding(.vertical, 14) + .layoutPriority(0) Spacer(minLength: 4) // Visszaszámláló Text(timerInterval: context.state.date, countsDown: true) .multilineTextAlignment(.trailing) - .frame(width: 75) - .font(.title2) + .frame(minWidth: 86, maxWidth: 100, alignment: .trailing) + .font(countdownFont) .monospacedDigit() + .lineLimit(1) + .minimumScaleFactor(0.75) + .layoutPriority(1) .padding(.trailing, 16) } // .activityBackgroundTint( @@ -242,14 +252,17 @@ struct LiveCardWidget: Widget { } /// Compact - } compactLeading: { + } compactLeading: { Image(systemName: context.state.icon) } compactTrailing: { Text(timerInterval: context.state.date, countsDown: true) .multilineTextAlignment(.center) - .frame(width: 40) + .frame(width: 52) .font(.caption2) + .monospacedDigit() + .lineLimit(1) + .minimumScaleFactor(0.7) /// Collapsed } minimal: {