From 99a34a9449395305303525e03ba23732b01cfb86 Mon Sep 17 00:00:00 2001 From: Dongkyu Kim Date: Fri, 6 Nov 2026 09:25:22 +0900 Subject: [PATCH 1/2] Add regression test for text truncation after intrinsic measurement --- .../FlexLayoutTests/TextTruncationTests.swift | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Tests/FlexLayoutTests/TextTruncationTests.swift diff --git a/Tests/FlexLayoutTests/TextTruncationTests.swift b/Tests/FlexLayoutTests/TextTruncationTests.swift new file mode 100644 index 0000000..dc90cd8 --- /dev/null +++ b/Tests/FlexLayoutTests/TextTruncationTests.swift @@ -0,0 +1,27 @@ +import FlexLayout +import Testing +import UIKit + +@MainActor +struct TextTruncationTests { + @Test + func layoutPreservesLabelWidthAfterIntrinsicMeasurement() { + let container = UIView(frame: CGRect(x: 0, y: 0, width: 393, height: 44)) + let descriptionLabel = UILabel() + descriptionLabel.text = "Balance" + descriptionLabel.font = .systemFont(ofSize: 17) + let amountLabel = UILabel() + amountLabel.text = "$36.50" + amountLabel.font = .systemFont(ofSize: 17) + + container.flex.addItem().direction(.row).justifyContent(.spaceBetween).define { flex in + flex.addItem(descriptionLabel) + flex.addItem().addItem(amountLabel) + } + + _ = container.flex.intrinsicSize + container.flex.layout() + + #expect(amountLabel.frame.width >= amountLabel.intrinsicContentSize.width) + } +} From 9ec8799766ded1f09e72d098a051aa9098c9a1d1 Mon Sep 17 00:00:00 2001 From: Dongkyu Kim Date: Fri, 6 Nov 2026 09:25:22 +0900 Subject: [PATCH 2/2] Update Yoga to 3.2.2 to fix text truncation --- Package.resolved | 4 ++-- Package.swift | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Package.resolved b/Package.resolved index 4e09ffa..08167ef 100644 --- a/Package.resolved +++ b/Package.resolved @@ -6,8 +6,8 @@ "repositoryURL": "https://github.com/facebook/yoga.git", "state": { "branch": null, - "revision": "042f5013152eb81c1552dec945b88f7b95ca350f", - "version": "3.2.1" + "revision": "8e31207cf5d5e6bd9ec06b55a5a5b2d492dde2d9", + "version": "3.2.2" } } ] diff --git a/Package.swift b/Package.swift index 195db8d..f304d24 100644 --- a/Package.swift +++ b/Package.swift @@ -13,7 +13,7 @@ let package = Package( .library(name: "FlexLayout-Dynamic", type: .dynamic, targets: ["FlexLayout"]), ], dependencies: [ - .package(url: "https://github.com/facebook/yoga.git", .upToNextMinor(from: "3.2.1")), + .package(url: "https://github.com/facebook/yoga.git", .upToNextMinor(from: "3.2.2")), ], targets: [ .target(