From f2f0f8ef3eefd9f32fafd945804de79bf9f2808f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Till=20Kru=CC=88ss?= Date: Sun, 8 Nov 2026 13:34:09 -0700 Subject: [PATCH] Fix a freeze when opening some movies and series on iPhone The details poster stores the measured scroll view width in state and sizes itself at 40% of it. Since the content margins moved onto the scroll view in 2.1.2, that width on a 393pt iPhone settles near 361pt and then alternates between 361.333 and 361.667. Each write moves the poster by a fraction of a point, which shifts a title or overview line break back and forth, so layout never converges and the main thread spins. Ignore width changes under one point. Duo fold changes are hundreds of points, so the poster still resizes there. --- CHANGELOG.md | 3 +++ Ruddarr/Models/Media.swift | 2 +- TestFlight/WhatToTest.en-US.txt | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a2b6209e..53c12747 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Improved x265, H.266, VC1 and VVC codec replacements - Open the exact movie on Letterboxd instead of a search +### Fixed +- Fixed a freeze when opening some movies and series on iPhone + ## 2.1.2 - 2026-11-02 ### Fixed - Hide Indexer and Quality filters until search finished diff --git a/Ruddarr/Models/Media.swift b/Ruddarr/Models/Media.swift index 8a1fb070..7a1225a8 100644 --- a/Ruddarr/Models/Media.swift +++ b/Ruddarr/Models/Media.swift @@ -231,7 +231,7 @@ struct MediaDetailsPosterModifier: ViewModifier { .onGeometryChange(for: CGFloat.self) { proxy in proxy.bounds(of: .scrollView)?.width ?? 0 } action: { width in - if width > 0 { + if width > 0, abs(width - scrollViewWidth) >= 1 { scrollViewWidth = width } } diff --git a/TestFlight/WhatToTest.en-US.txt b/TestFlight/WhatToTest.en-US.txt index ccca875f..662c96af 100644 --- a/TestFlight/WhatToTest.en-US.txt +++ b/TestFlight/WhatToTest.en-US.txt @@ -5,3 +5,6 @@ Added - Support Sonarr multi-season packs - Improved x265, H.266, VC1 and VVC codec replacements - Open the exact movie on Letterboxd instead of a search + +Fixed +- Fixed a freeze when opening some movies and series on iPhone