mirror of
git://jb55.com/damus
synced 2024-09-29 16:30:44 +00:00
Added ability to zoom profile pic
Closes: #149 Changelog-Added: Added the ability to zoom profile pic on profile page
This commit is contained in:
parent
86be185d2f
commit
95555a8011
@ -34,16 +34,16 @@ func pfp_line_width(_ h: Highlight) -> CGFloat {
|
||||
|
||||
struct InnerProfilePicView: View {
|
||||
@Environment(\.redactionReasons) private var reasons
|
||||
|
||||
|
||||
let url: URL?
|
||||
let pubkey: String
|
||||
let size: CGFloat
|
||||
let highlight: Highlight
|
||||
|
||||
|
||||
var PlaceholderColor: Color {
|
||||
return id_to_color(pubkey)
|
||||
}
|
||||
|
||||
|
||||
var Placeholder: some View {
|
||||
PlaceholderColor
|
||||
.frame(width: size, height: size)
|
||||
@ -51,7 +51,7 @@ struct InnerProfilePicView: View {
|
||||
.overlay(Circle().stroke(highlight_color(highlight), lineWidth: pfp_line_width(highlight)))
|
||||
.padding(2)
|
||||
}
|
||||
|
||||
|
||||
var body: some View {
|
||||
Group {
|
||||
if reasons.isEmpty {
|
||||
@ -74,7 +74,6 @@ struct InnerProfilePicView: View {
|
||||
.clipShape(Circle())
|
||||
.overlay(Circle().stroke(highlight_color(highlight), lineWidth: pfp_line_width(highlight)))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
struct ProfilePicView: View {
|
||||
|
@ -113,11 +113,13 @@ struct EditButton: View {
|
||||
|
||||
struct ProfileView: View {
|
||||
let damus_state: DamusState
|
||||
let zoom_size: CGFloat = 350
|
||||
|
||||
@State private var selected_tab: ProfileTab = .posts
|
||||
@StateObject var profile: ProfileModel
|
||||
@StateObject var followers: FollowersModel
|
||||
@State private var showingEditProfile = false
|
||||
@State var is_zoomed: Bool = false
|
||||
|
||||
@Environment(\.dismiss) var dismiss
|
||||
@Environment(\.colorScheme) var colorScheme
|
||||
@ -160,6 +162,12 @@ struct ProfileView: View {
|
||||
|
||||
HStack(alignment: .center) {
|
||||
ProfilePicView(pubkey: profile.pubkey, size: PFP_SIZE, highlight: .custom(Color.black, 2), profiles: damus_state.profiles)
|
||||
.onTapGesture {
|
||||
is_zoomed.toggle()
|
||||
}
|
||||
.sheet(isPresented: $is_zoomed) {
|
||||
ProfilePicView(pubkey: profile.pubkey, size: zoom_size, highlight: .custom(Color.black, 2), profiles: damus_state.profiles)
|
||||
}
|
||||
|
||||
Spacer()
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user