commit a2cd51b6e7fbe9810261b6590e9781e58453a265
parent 46c208c9a567382aa4d47e67aca5673aa17e7983
Author: OlegAba <mail@olegaba.com>
Date: Sat, 8 Apr 2023 20:12:26 -0400
Fix tap area when mentioning users
Changelog-Fixed: Fix tap area when mentioning users
Closes: #895
Diffstat:
3 files changed, 26 insertions(+), 14 deletions(-)
diff --git a/damus/Components/UserView.swift b/damus/Components/UserView.swift
@@ -12,22 +12,24 @@ struct UserView: View {
let pubkey: String
var body: some View {
- NavigationLink(destination: ProfileView(damus_state: damus_state, pubkey: pubkey)) {
- ProfilePicView(pubkey: pubkey, size: PFP_SIZE, highlight: .none, profiles: damus_state.profiles)
-
- VStack(alignment: .leading) {
- let profile = damus_state.profiles.lookup(id: pubkey)
- ProfileName(pubkey: pubkey, profile: profile, damus: damus_state, show_friend_confirmed: false, show_nip5_domain: false)
- if let about = profile?.about {
- Text(about)
- .lineLimit(3)
- .font(.footnote)
+ VStack {
+ HStack {
+ ProfilePicView(pubkey: pubkey, size: PFP_SIZE, highlight: .none, profiles: damus_state.profiles)
+
+ VStack(alignment: .leading) {
+ let profile = damus_state.profiles.lookup(id: pubkey)
+ ProfileName(pubkey: pubkey, profile: profile, damus: damus_state, show_friend_confirmed: false, show_nip5_domain: false)
+ if let about = profile?.about {
+ Text(about)
+ .lineLimit(3)
+ .font(.footnote)
+ }
}
+
+ Spacer()
}
-
Spacer()
}
- .buttonStyle(PlainButtonStyle())
}
}
diff --git a/damus/Views/FollowingView.swift b/damus/Views/FollowingView.swift
@@ -12,10 +12,20 @@ struct FollowUserView: View {
let damus_state: DamusState
static let markdown = Markdown()
+ @State var navigating: Bool = false
var body: some View {
+ let dest = ProfileView(damus_state: damus_state, pubkey: target.pubkey)
+ NavigationLink(destination: dest, isActive: $navigating) {
+ EmptyView()
+ }
+
HStack {
UserView(damus_state: damus_state, pubkey: target.pubkey)
+ .contentShape(Rectangle())
+ .onTapGesture {
+ navigating = true
+ }
FollowButtonView(target: target, follows_you: false, follow_state: damus_state.contacts.follow_state(target.pubkey))
}
@@ -33,10 +43,9 @@ struct FollowersView: View {
LazyVStack(alignment: .leading) {
ForEach(followers.contacts ?? [], id: \.self) { pk in
FollowUserView(target: .pubkey(pk), damus_state: damus_state)
- Divider()
}
}
- .padding()
+ .padding(.horizontal)
}
.navigationBarTitle(NSLocalizedString("Followers", comment: "Navigation bar title for view that shows who is following a user."))
.onAppear {
diff --git a/damus/Views/Posting/UserSearch.swift b/damus/Views/Posting/UserSearch.swift
@@ -81,6 +81,7 @@ struct UserSearch: View {
} else {
ForEach(users) { user in
UserView(damus_state: damus_state, pubkey: user.pubkey)
+ .contentShape(Rectangle())
.onTapGesture {
on_user_tapped(user: user)
}