From 318701bb3d40908c1a4a096111c8a828c9eff0f8 Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Thu, 11 Sep 2025 16:06:08 -0500 Subject: [PATCH] Signed-off-by: Matt Bruce --- TheNoiseClock/Core/Utilities/FontFamily.swift | 9 +++++++++ TheNoiseClock/Core/Utilities/FontUtils.swift | 2 +- TheNoiseClock/Views/Clock/Components/DigitView.swift | 7 ++----- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/TheNoiseClock/Core/Utilities/FontFamily.swift b/TheNoiseClock/Core/Utilities/FontFamily.swift index 34d84c1..69e6e33 100644 --- a/TheNoiseClock/Core/Utilities/FontFamily.swift +++ b/TheNoiseClock/Core/Utilities/FontFamily.swift @@ -35,6 +35,15 @@ enum FontFamily: String, CaseIterable { } } + var percentageDownsize: CGFloat { + switch self { + case .system: + return 0.99 + case .georgia: + return 0.90 + default: return 1 + } + } var fontWeights: [Font.Weight] { guard let weightDict = Self.fontMapWeights[self.rawValue] else { return [] diff --git a/TheNoiseClock/Core/Utilities/FontUtils.swift b/TheNoiseClock/Core/Utilities/FontUtils.swift index 51f727c..bda749a 100644 --- a/TheNoiseClock/Core/Utilities/FontUtils.swift +++ b/TheNoiseClock/Core/Utilities/FontUtils.swift @@ -39,7 +39,7 @@ struct FontUtils { } } - return low + return low * fontName.percentageDownsize } static func createFont( diff --git a/TheNoiseClock/Views/Clock/Components/DigitView.swift b/TheNoiseClock/Views/Clock/Components/DigitView.swift index 62afa5c..af67864 100644 --- a/TheNoiseClock/Views/Clock/Components/DigitView.swift +++ b/TheNoiseClock/Views/Clock/Components/DigitView.swift @@ -127,12 +127,9 @@ struct DigitView: View { for: size) // Only update if the size is significantly different to prevent micro-adjustments - if abs(optimalSize - fontSize) > 0.1 { - fontSize = optimalSize - } - + fontSize = optimalSize lastCalculatedSize = size - + // Reset calculation flag after a brief delay to allow for frame completion DispatchQueue.main.asyncAfter(deadline: .now() + 0.016) { // ~60fps isCalculating = false