RoomScreenViewModel is now TimelineViewModel (#3157)

Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
This commit is contained in:
Mauro
2024-08-13 13:36:40 +02:00
committed by GitHub
parent 4519275559
commit 1ad361a6e8
88 changed files with 2266 additions and 1973 deletions
@@ -18,7 +18,7 @@ import MatrixRustSDK
import SwiftUI
final class MessageTextView: UITextView, PillAttachmentViewProviderDelegate {
var roomContext: RoomScreenViewModel.Context?
var timelineContext: TimelineViewModel.Context?
var updateClosure: (() -> Void)?
private var pillViews = NSHashTable<UIView>.weakObjects()
@@ -54,7 +54,7 @@ final class MessageTextView: UITextView, PillAttachmentViewProviderDelegate {
struct MessageText: UIViewRepresentable {
@Environment(\.openURL) private var openURLAction
@Environment(\.roomContext) private var viewModel
@Environment(\.timelineContext) private var viewModel
@State private var computedSizes = [Double: CGSize]()
@State var attributedString: AttributedString {
@@ -66,7 +66,7 @@ struct MessageText: UIViewRepresentable {
func makeUIView(context: Context) -> MessageTextView {
// Need to use TextKit 1 for mentions
let textView = MessageTextView(usingTextLayoutManager: false)
textView.roomContext = viewModel
textView.timelineContext = viewModel
textView.updateClosure = { [weak textView] in
guard let textView else { return }
do {
@@ -197,7 +197,7 @@ struct MessageText_Previews: PreviewProvider, TestablePreview {
static var attachmentPreview: some View {
MessageText(attributedString: attributedStringWithAttachment)
.border(Color.purple)
.environmentObject(RoomScreenViewModel.mock.context)
.environmentObject(TimelineViewModel.mock.context)
}
static var previews: some View {