another.im-ios/ConversationsClassic/Helpers/View+TappableArea.swift
fmodf b3b3b3aef7 mv-experiment (#1)
Reviewed-on: narayana/conversations-classic-ios#1
Co-authored-by: fmodf <fmodf.ios@gmail.com>
Co-committed-by: fmodf <fmodf.ios@gmail.com>
2024-09-03 15:13:58 +00:00

28 lines
670 B
Swift

import SwiftUI
extension View {
func tappablePadding(_ insets: EdgeInsets, onTap: @escaping () -> Void) -> some View {
modifier(TappablePadding(insets: insets, onTap: onTap))
}
}
struct TappablePadding: ViewModifier {
let insets: EdgeInsets
let onTap: () -> Void
public init(insets: EdgeInsets, onTap: @escaping () -> Void) {
self.insets = insets
self.onTap = onTap
}
public func body(content: Content) -> some View {
content
.padding(insets)
.contentShape(Rectangle())
.onTapGesture {
onTap()
}
.padding(insets.inverted)
}
}