good spot with footer stuff

This commit is contained in:
talksik
2021-12-30 04:46:36 -08:00
parent 5e60dd6005
commit 57c9b2dd46
6 changed files with 53 additions and 29 deletions
+4
View File
@@ -10,6 +10,7 @@
8904DEC8277055E90071E6CA /* OnboardingOneView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8904DEC7277055E90071E6CA /* OnboardingOneView.swift */; };
89091993277D958D0025F4BB /* ConvoViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89091992277D958D0025F4BB /* ConvoViewModel.swift */; };
89091995277DD9F80025F4BB /* ConvoFooterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89091994277DD9F80025F4BB /* ConvoFooterView.swift */; };
89091997277DDE030025F4BB /* ProfilePicturesOverlappedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89091996277DDE030025F4BB /* ProfilePicturesOverlappedView.swift */; };
890C245D277BF628009B4A30 /* AgoraRtcKit in Frameworks */ = {isa = PBXBuildFile; productRef = 890C245C277BF628009B4A30 /* AgoraRtcKit */; };
890C2460277BF896009B4A30 /* AgoraViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 890C245F277BF896009B4A30 /* AgoraViewController.swift */; };
890C2462277BF935009B4A30 /* CallView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 890C2461277BF935009B4A30 /* CallView.swift */; };
@@ -96,6 +97,7 @@
8904DEC7277055E90071E6CA /* OnboardingOneView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OnboardingOneView.swift; sourceTree = "<group>"; };
89091992277D958D0025F4BB /* ConvoViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConvoViewModel.swift; sourceTree = "<group>"; };
89091994277DD9F80025F4BB /* ConvoFooterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConvoFooterView.swift; sourceTree = "<group>"; };
89091996277DDE030025F4BB /* ProfilePicturesOverlappedView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProfilePicturesOverlappedView.swift; sourceTree = "<group>"; };
890C245F277BF896009B4A30 /* AgoraViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AgoraViewController.swift; sourceTree = "<group>"; };
890C2461277BF935009B4A30 /* CallView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CallView.swift; sourceTree = "<group>"; };
890C2463277BFA97009B4A30 /* AgroRep.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AgroRep.swift; sourceTree = "<group>"; };
@@ -379,6 +381,7 @@
89814682277D83F300DA46CD /* ConvosView.swift */,
89091992277D958D0025F4BB /* ConvoViewModel.swift */,
89091994277DD9F80025F4BB /* ConvoFooterView.swift */,
89091996277DDE030025F4BB /* ProfilePicturesOverlappedView.swift */,
);
path = Convos;
sourceTree = "<group>";
@@ -600,6 +603,7 @@
891060E4277359B900F14509 /* CloudStorageService.swift in Sources */,
896CE7002770847400DB474E /* CircleFooterView.swift in Sources */,
894E80BE276ED7A700624B72 /* avatars.swift in Sources */,
89091997277DDE030025F4BB /* ProfilePicturesOverlappedView.swift in Sources */,
890C2462277BF935009B4A30 /* CallView.swift in Sources */,
896CE7052770AE5D00DB474E /* InboxView.swift in Sources */,
891A160327656FC700B26659 /* HomeView.swift in Sources */,
@@ -18,7 +18,10 @@ struct ConvoFooterView: View {
Spacer()
HStack {
ProfilePictureOverlap()
ProfilePicturesOverlappedView(indvAvatarWidth: CGFloat(35))
.padding(.leading, 20)
.padding(.trailing, 10)
// meta data of convo
VStack (alignment: .leading) {
@@ -43,8 +46,8 @@ struct ConvoFooterView: View {
Label("attendees", systemImage: "person.2.circle.fill")
.labelStyle(.iconOnly)
.foregroundColor(NirvanaColor.teal)
.padding()
.font(.title2)
.padding(.trailing, 5)
}
// disconnect button
@@ -58,8 +61,8 @@ struct ConvoFooterView: View {
Label("Call", systemImage: "powerplug.fill")
.labelStyle(.iconOnly)
.foregroundColor(Color.orange)
.padding()
.font(.title2)
.padding(.trailing, 5)
}
}
+1 -23
View File
@@ -22,7 +22,7 @@ struct ConvosView: View {
ZStack {
Color.clear
ProfilePictureOverlap()
ProfilePicturesOverlappedView()
.shadow(radius: 10)
}
@@ -74,25 +74,3 @@ struct ConvosView: View {
// ConvosView()
// }
//}
struct ProfilePictureOverlap: View {
let numberAttendees:Int = 5
let offset:Int = 15
var body: some View {
ZStack {
ForEach(0..<numberAttendees, id: \.self) {attendeeIndex in
if attendeeIndex < 3 {
Image(Avatars.avatarSystemNames[attendeeIndex+1])
.resizable()
.scaledToFit()
.background(NirvanaColor.dimTeal)
.clipShape(Circle())
.offset(x: CGFloat((-15 * attendeeIndex)) + 15)
.frame(width: 50)
}
}
}
}
}
@@ -0,0 +1,38 @@
//
// ProfilePicturesOverlappedView.swift
// nirvana-ios
//
// Created by Arjun Patel on 12/30/21.
//
import SwiftUI
struct ProfilePicturesOverlappedView: View {
let numberAttendees:Int = 5
let offset:Int = 15
var indvAvatarWidth: CGFloat = 50
var body: some View {
ZStack {
ForEach(0..<numberAttendees, id: \.self) {attendeeIndex in
if attendeeIndex < 3 {
Image(Avatars.avatarSystemNames[attendeeIndex+1])
.resizable()
.scaledToFit()
.background(NirvanaColor.dimTeal)
.clipShape(Circle())
.offset(x: CGFloat((-15 * attendeeIndex)) + 15)
.frame(width: indvAvatarWidth)
}
}
}
}
}
struct ProfilePicturesOverlappedView_Previews: PreviewProvider {
static var previews: some View {
ProfilePicturesOverlappedView()
}
}
@@ -84,7 +84,7 @@ struct CircleGridView: View {
ZStack {
Color.clear
ProfilePictureOverlap()
ProfilePicturesOverlappedView()
.shadow(color: Color.black.opacity(0.2), radius: 10, x: 0, y: 20)
}
@@ -53,7 +53,6 @@ struct InnerCircleView: View {
.font(.caption)
.foregroundColor(NirvanaColor.teal)
.multilineTextAlignment(.center)
}
.padding()
} // add friend: stale state
@@ -90,7 +89,6 @@ struct InnerCircleView: View {
CircleGridView(selectedFriendIndex: self.$selectedFriendIndex)
.environmentObject(self.innerCircleVM)
.environmentObject(self.convoViewModel)
}
// header
@@ -104,6 +102,9 @@ struct InnerCircleView: View {
.environmentObject(self.innerCircleVM)
.environmentObject(self.convoViewModel)
ConvoFooterView()
.environmentObject(self.convoViewModel)
// helper for new users
// TODO: make it back to 1 instead of 10...testing
if self.authSessionStore.friendsArr.count == 1 && self.selectedFriendIndex == nil { // don't show if bottom metadata showing