Activities list: UI improvements

This commit is contained in:
Thomas Ricouard 2023-01-17 07:54:59 +01:00
parent dd6483dd37
commit 0c071e7ad5
5 changed files with 15 additions and 5 deletions

View File

@ -82,8 +82,12 @@ struct NotificationRowView: View {
private func makeContent(type: Models.Notification.NotificationType) -> some View { private func makeContent(type: Models.Notification.NotificationType) -> some View {
if let status = notification.status { if let status = notification.status {
HStack { HStack {
StatusRowView(viewModel: .init(status: status, isCompact: true)) if type == .mention {
.foregroundColor(type == .mention ? theme.labelColor : .gray) StatusRowView(viewModel: .init(status: status, isCompact: true, showActions: true))
} else {
StatusRowView(viewModel: .init(status: status, isCompact: true, showActions: false))
.foregroundColor(.gray)
}
Spacer() Spacer()
} }
} else { } else {

View File

@ -17,7 +17,7 @@ public struct StatusEmbededView: View {
HStack { HStack {
VStack(alignment: .leading) { VStack(alignment: .leading) {
makeAccountView(account: status.reblog?.account ?? status.account) makeAccountView(account: status.reblog?.account ?? status.account)
StatusRowView(viewModel: .init(status: status, isCompact: true)) StatusRowView(viewModel: .init(status: status, isCompact: true, showActions: false))
} }
Spacer() Spacer()
} }

View File

@ -22,6 +22,9 @@ public struct StatusMediaPreviewView: View {
private var imageMaxHeight: CGFloat { private var imageMaxHeight: CGFloat {
if isNotifications { if isNotifications {
if UIDevice.current.userInterfaceIdiom == .pad {
return 150
}
return 50 return 50
} }
if theme.statusDisplayStyle == .compact { if theme.statusDisplayStyle == .compact {

View File

@ -44,7 +44,7 @@ public struct StatusRowView: View {
replyView replyView
} }
statusView statusView
if !viewModel.isCompact && !viewModel.isRemote, theme.statusActionsDisplay != .none { if viewModel.showActions && !viewModel.isRemote, theme.statusActionsDisplay != .none {
StatusActionsView(viewModel: viewModel) StatusActionsView(viewModel: viewModel)
.padding(.top, 8) .padding(.top, 8)
.tint(viewModel.isFocused ? theme.tintColor : .gray) .tint(viewModel.isFocused ? theme.tintColor : .gray)

View File

@ -9,6 +9,7 @@ public class StatusRowViewModel: ObservableObject {
let isCompact: Bool let isCompact: Bool
let isFocused: Bool let isFocused: Bool
let isRemote: Bool let isRemote: Bool
let showActions: Bool
@Published var favouritesCount: Int @Published var favouritesCount: Int
@Published var isFavourited: Bool @Published var isFavourited: Bool
@ -31,11 +32,13 @@ public class StatusRowViewModel: ObservableObject {
public init(status: Status, public init(status: Status,
isCompact: Bool = false, isCompact: Bool = false,
isFocused: Bool = false, isFocused: Bool = false,
isRemote: Bool = false) { isRemote: Bool = false,
showActions: Bool = true) {
self.status = status self.status = status
self.isCompact = isCompact self.isCompact = isCompact
self.isFocused = isFocused self.isFocused = isFocused
self.isRemote = isRemote self.isRemote = isRemote
self.showActions = showActions
if let reblog = status.reblog { if let reblog = status.reblog {
self.isFavourited = reblog.favourited == true self.isFavourited = reblog.favourited == true
self.isReblogged = reblog.reblogged == true self.isReblogged = reblog.reblogged == true