From 5d14ba9ea518ef4638cca81a0753a96d590c7973 Mon Sep 17 00:00:00 2001 From: tinder-emanharoutunian Date: Tue, 31 Oct 2023 14:59:19 -0700 Subject: [PATCH 1/4] Add toEdges(top: leading: bottom: trailing:) and test --- Sources/Layout/LayoutItem.swift | 23 ++++++++++++++++++ Tests/LayoutTests/LayoutItemTests.swift | 18 ++++++++++++++ ...ailingPriority.iPhone-13-mini-portrait.png | Bin 0 -> 89362 bytes ...ailingPriority.iPhone-13-mini-portrait.txt | 3 +++ ...tomTrailingPriority.iPhone-13-portrait.png | Bin 0 -> 93690 bytes ...tomTrailingPriority.iPhone-13-portrait.txt | 3 +++ ...ttomTrailingPriority.iPhone-8-portrait.png | Bin 0 -> 73135 bytes ...ttomTrailingPriority.iPhone-8-portrait.txt | 3 +++ ...tomTrailingPriority.iPhone-SE-portrait.png | Bin 0 -> 55093 bytes ...tomTrailingPriority.iPhone-SE-portrait.txt | 3 +++ ...ttomTrailingPriority.iPhone-X-portrait.png | Bin 0 -> 89362 bytes ...ttomTrailingPriority.iPhone-X-portrait.txt | 3 +++ 12 files changed, 56 insertions(+) create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.png create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.txt create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.png create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.txt create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.png create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.txt create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.png create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.txt create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.png create mode 100644 Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.txt diff --git a/Sources/Layout/LayoutItem.swift b/Sources/Layout/LayoutItem.swift index ea604674..b05aef2c 100644 --- a/Sources/Layout/LayoutItem.swift +++ b/Sources/Layout/LayoutItem.swift @@ -314,6 +314,29 @@ extension LayoutItem { } } + /// Constrains the view's directional edges to the superview's edges with insets. + /// + /// - Parameters: + /// - top: The top inset + /// - leading: The leading inset + /// - bottom: The bottom inset + /// - trailing: The trailing inset + /// - priority: The priority of constraints + /// + /// - Returns: The LayoutItem + public func toEdges( + top: CGFloat, + leading: CGFloat, + bottom: CGFloat, + trailing: CGFloat, + priority: UILayoutPriority = .required + ) -> LayoutItem { + toEdges( + insets: NSDirectionalEdgeInsets(top: top, leading: leading, bottom: bottom, trailing: trailing), + priority: priority + ) + } + /// Constrains the view's directional edges to the superview's edges with an inset. /// /// - Parameters: diff --git a/Tests/LayoutTests/LayoutItemTests.swift b/Tests/LayoutTests/LayoutItemTests.swift index 25910f04..571f9abd 100644 --- a/Tests/LayoutTests/LayoutItemTests.swift +++ b/Tests/LayoutTests/LayoutItemTests.swift @@ -452,6 +452,24 @@ final class LayoutItemTests: XCTestCase { } } + func testToEdgesWithTopLeadingBottomTrailingPriority() { + assertLayout { view in + view.layout { + + // To Edges with Top, Leading, Bottom, Trailing + + pinkView + .toEdges(top: 10, leading: 20, bottom: 10, trailing: 20) + + // To Edges with Top, Leading, Bottom, Trailing with Priority + + blueView + .toEdges(top: 30, leading: 30, bottom: 30, trailing: 30, priority: .low) + .toEdges(top: 50, leading: 50, bottom: 50, trailing: 50, priority: .high) + } + } + } + func testToEdgesWithDirectionalEdgesInsetPriority() { assertLayout { view in view.layout { diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.png b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..f9c9a8e2238275e8d9b5a97adce06aaa827e345e GIT binary patch literal 89362 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 E17D>Z`~Uy| literal 0 HcmV?d00001 diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.txt b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.txt new file mode 100644 index 00000000..43ba6010 --- /dev/null +++ b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-mini-portrait.txt @@ -0,0 +1,3 @@ + + | + | \ No newline at end of file diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.png b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..27455a75c48afff4d4b9c86756e6381d34956a13 GIT binary patch literal 93690 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 literal 0 HcmV?d00001 diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.txt b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.txt new file mode 100644 index 00000000..8a7d7d32 --- /dev/null +++ b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-13-portrait.txt @@ -0,0 +1,3 @@ + + | + | \ No newline at end of file diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.png b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..398df5f1d14649fd8654ce205c3b516dfae39dea GIT binary patch literal 73135 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 literal 0 HcmV?d00001 diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.txt b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.txt new file mode 100644 index 00000000..5eeff910 --- /dev/null +++ b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-8-portrait.txt @@ -0,0 +1,3 @@ + + | + | \ No newline at end of file diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.png b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..98f77e045556ea2adb2ff4ac2c164081db0db265 GIT binary patch literal 55093 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 literal 0 HcmV?d00001 diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.txt b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.txt new file mode 100644 index 00000000..1e9bf8b0 --- /dev/null +++ b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-SE-portrait.txt @@ -0,0 +1,3 @@ + + | + | \ No newline at end of file diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.png b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.png new file mode 100644 index 0000000000000000000000000000000000000000..f9c9a8e2238275e8d9b5a97adce06aaa827e345e GIT binary patch literal 89362 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 E17D>Z`~Uy| literal 0 HcmV?d00001 diff --git a/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.txt b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.txt new file mode 100644 index 00000000..43ba6010 --- /dev/null +++ b/Tests/LayoutTests/__Snapshots__/LayoutItemTests/testToEdgesWithTopLeadingBottomTrailingPriority.iPhone-X-portrait.txt @@ -0,0 +1,3 @@ + + | + | \ No newline at end of file From 12d891747890ba52e520d9f486970651d1936bb7 Mon Sep 17 00:00:00 2001 From: Eman Haroutunian <104394983+tinder-emanharoutunian@users.noreply.github.com> Date: Wed, 1 Nov 2023 12:32:36 -0700 Subject: [PATCH 2/4] Update Sources/Layout/LayoutItem.swift Co-authored-by: Christopher Fuller --- Sources/Layout/LayoutItem.swift | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/Sources/Layout/LayoutItem.swift b/Sources/Layout/LayoutItem.swift index b05aef2c..5707ab86 100644 --- a/Sources/Layout/LayoutItem.swift +++ b/Sources/Layout/LayoutItem.swift @@ -331,10 +331,8 @@ extension LayoutItem { trailing: CGFloat, priority: UILayoutPriority = .required ) -> LayoutItem { - toEdges( - insets: NSDirectionalEdgeInsets(top: top, leading: leading, bottom: bottom, trailing: trailing), - priority: priority - ) + toEdges(insets: NSDirectionalEdgeInsets(top: top, leading: leading, bottom: bottom, trailing: trailing), + priority: priority) } /// Constrains the view's directional edges to the superview's edges with an inset. From 3f5e88d7f9bfe72c0b989043d83229fb47572114 Mon Sep 17 00:00:00 2001 From: Eman Haroutunian <104394983+tinder-emanharoutunian@users.noreply.github.com> Date: Wed, 1 Nov 2023 12:32:42 -0700 Subject: [PATCH 3/4] Update Sources/Layout/LayoutItem.swift Co-authored-by: Christopher Fuller --- Sources/Layout/LayoutItem.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/Layout/LayoutItem.swift b/Sources/Layout/LayoutItem.swift index 5707ab86..f321da80 100644 --- a/Sources/Layout/LayoutItem.swift +++ b/Sources/Layout/LayoutItem.swift @@ -321,7 +321,7 @@ extension LayoutItem { /// - leading: The leading inset /// - bottom: The bottom inset /// - trailing: The trailing inset - /// - priority: The priority of constraints + /// - priority: The priority of the constraints /// /// - Returns: The LayoutItem public func toEdges( From f003039ceb0fb799ef7e9e821f33387e144a964b Mon Sep 17 00:00:00 2001 From: Eman Haroutunian <104394983+tinder-emanharoutunian@users.noreply.github.com> Date: Wed, 1 Nov 2023 12:32:56 -0700 Subject: [PATCH 4/4] Update Sources/Layout/LayoutItem.swift Co-authored-by: Christopher Fuller --- Sources/Layout/LayoutItem.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/Layout/LayoutItem.swift b/Sources/Layout/LayoutItem.swift index f321da80..d15ed0b8 100644 --- a/Sources/Layout/LayoutItem.swift +++ b/Sources/Layout/LayoutItem.swift @@ -323,7 +323,7 @@ extension LayoutItem { /// - trailing: The trailing inset /// - priority: The priority of the constraints /// - /// - Returns: The LayoutItem + /// - Returns: The LayoutItem instance public func toEdges( top: CGFloat, leading: CGFloat,