mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-21 09:02:44 +02:00
Fix info in UserSessionCardView
This commit is contained in:
@@ -30,9 +30,16 @@ struct UserSessionCardView: View {
|
||||
RoundedRectangle(cornerRadius: 8)
|
||||
}
|
||||
|
||||
enum DisplayMode {
|
||||
case compact
|
||||
case extended
|
||||
}
|
||||
|
||||
let showLocationInformations: Bool
|
||||
let displayMode: DisplayMode
|
||||
|
||||
private var showExtraInformations: Bool {
|
||||
viewData.isCurrentSessionDisplayMode == false && (viewData.lastActivityDateString.isEmptyOrNil == false || ipText.isEmptyOrNil == false)
|
||||
displayMode == .extended && (viewData.lastActivityDateString.isEmptyOrNil == false || ipText.isEmptyOrNil == false)
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
@@ -93,7 +100,7 @@ struct UserSessionCardView: View {
|
||||
.accessibilityIdentifier("userSessionCardVerifyButton")
|
||||
}
|
||||
|
||||
if viewData.isCurrentSessionDisplayMode {
|
||||
if viewData.isCurrentSessionDisplayMode && displayMode == .compact {
|
||||
Text(VectorL10n.userSessionViewDetails)
|
||||
.font(theme.fonts.body)
|
||||
.foregroundColor(theme.colors.accent)
|
||||
@@ -124,8 +131,9 @@ struct UserSessionCardViewPreview: View {
|
||||
@Environment(\.theme) var theme: ThemeSwiftUI
|
||||
|
||||
let viewData: UserSessionCardViewData
|
||||
let displayMode: UserSessionCardView.DisplayMode
|
||||
|
||||
init(isCurrent: Bool = false, verificationState: UserSessionInfo.VerificationState = .unverified) {
|
||||
init(isCurrent: Bool = false, verificationState: UserSessionInfo.VerificationState = .unverified, displayMode: UserSessionCardView.DisplayMode = .extended) {
|
||||
let sessionInfo = UserSessionInfo(id: "alice",
|
||||
name: "iOS",
|
||||
deviceType: .mobile,
|
||||
@@ -143,11 +151,12 @@ struct UserSessionCardViewPreview: View {
|
||||
isActive: true,
|
||||
isCurrent: isCurrent)
|
||||
viewData = UserSessionCardViewData(sessionInfo: sessionInfo)
|
||||
self.displayMode = displayMode
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
VStack {
|
||||
UserSessionCardView(viewData: viewData, showLocationInformations: true)
|
||||
UserSessionCardView(viewData: viewData, showLocationInformations: true, displayMode: displayMode)
|
||||
}
|
||||
.frame(maxWidth: .infinity)
|
||||
.background(theme.colors.system)
|
||||
@@ -158,7 +167,8 @@ struct UserSessionCardViewPreview: View {
|
||||
struct UserSessionCardView_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
Group {
|
||||
UserSessionCardViewPreview(isCurrent: true).theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview(isCurrent: true, displayMode: .compact).theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview(isCurrent: true, displayMode: .extended).theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview(isCurrent: true).theme(.dark).preferredColorScheme(.dark)
|
||||
UserSessionCardViewPreview().theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview().theme(.dark).preferredColorScheme(.dark)
|
||||
|
||||
Reference in New Issue
Block a user