From c8fd3a382893ff0ca60f9f7ac7c05688638b2761 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Hromadn=C3=ADk?= Date: Fri, 6 Dec 2024 16:36:49 +0100 Subject: [PATCH 1/3] =?UTF-8?q?=E2=9C=A8=20Add=20View+FrameSize?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SwiftUIExtensions/View+FrameSize.swift | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift diff --git a/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift b/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift new file mode 100644 index 0000000..995edb1 --- /dev/null +++ b/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift @@ -0,0 +1,17 @@ +import SwiftUI + +@available(iOS 13, *) +extension View { + + public func frame(size: CGSize) -> some View { + assert(size.width.isFinite) + assert(size.width >= 0) + assert(size.height.isFinite) + assert(size.height >= 0) + return frame(width: size.width, height: size.height) + } + + public func frame(size: CGSize, alignment: Alignment) -> some View { + frame(width: size.width, height: size.height, alignment: alignment) + } +} From d737ada8a8a031f25b8fc9b14a8d9d1d5e350b18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Hromadn=C3=ADk?= Date: Fri, 6 Dec 2024 16:37:26 +0100 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=93=9D=20Update=20CHANGELOG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f70c0fe..eaa142c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ ## Next +- Add SwiftUI extension `View+FrameSize` ([#153](https://github.com/AckeeCZ/ACKategories/pull/153), kudos to @lukashromadnik) - Add `readSize` and `readFrame` to SwiftUI views ([#150](https://github.com/AckeeCZ/ACKategories/pull/150), kudos to @olejnjak) - Add `WithLayoutMargins` to SwiftUI extensions ([#150](https://github.com/AckeeCZ/ACKategories/pull/151), kudos to @komkovla) From 4bc8f89a9662b02be6bc0c5d7e209b2143593d66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luka=CC=81s=CC=8C=20Hromadni=CC=81k?= Date: Mon, 14 Apr 2025 07:57:02 +0200 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=8E=A8=20Fix=20method=20availability?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift b/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift index 995edb1..e1433aa 100644 --- a/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift +++ b/Sources/ACKategories/SwiftUIExtensions/View+FrameSize.swift @@ -1,6 +1,6 @@ import SwiftUI -@available(iOS 13, *) +@available(iOS 13, macOS 10.15, tvOS 13.0, watchOS 6.0, *) extension View { public func frame(size: CGSize) -> some View {