From da60f083277b8896d79c5a72aec0839543c5652d 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:30:31 +0100 Subject: [PATCH 1/3] =?UTF-8?q?=E2=9C=A8=20View+endEditingOnTap?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../View+endEditingOnTap.swift | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift diff --git a/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift b/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift new file mode 100644 index 0000000..468e773 --- /dev/null +++ b/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift @@ -0,0 +1,20 @@ +import SwiftUI + +@available(iOS 13.0, *) +public extension View { + + @available(iOSApplicationExtension, unavailable) + func endEditingOnTap( + _ action: (() -> Void)? = nil + ) -> some View { + onTapGesture { + UIApplication.shared.sendAction( + #selector(UIResponder.resignFirstResponder), + to: nil, + from: nil, + for: nil + ) + action?() + } + } +} From 86524b507c3267e4aeee4b3e2d8aad6965e75167 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:33:36 +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..9808868 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ ## Next +- Add SwiftUI extension `View+endEditingOnTap` ([#152](https://github.com/AckeeCZ/ACKategories/pull/152), 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 4075901bb050ee12c20b196940d75c5d4f6cf562 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:54:11 +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 --- .../ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift b/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift index 468e773..b0684d3 100644 --- a/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift +++ b/Sources/ACKategories/SwiftUIExtensions/View+endEditingOnTap.swift @@ -1,3 +1,4 @@ +#if canImport(UIKit) && !os(watchOS) import SwiftUI @available(iOS 13.0, *) @@ -18,3 +19,4 @@ public extension View { } } } +#endif