Update login and server selection screens (#651)

* Update login and server selection screens.

* Replace all NavigationViews with NavigationStacks
This commit is contained in:
Doug
2023-03-02 18:05:18 +00:00
committed by GitHub
parent e7a8dc8cc2
commit 1c09a7eace
84 changed files with 287 additions and 205 deletions
@@ -23,23 +23,25 @@ struct TimelineItemDebugView: View {
var content: String
}
@Environment(\.presentationMode) private var presentationMode
@Environment(\.dismiss) private var dismiss
let info: DebugInfo
var body: some View {
NavigationView {
NavigationStack {
ScrollView {
Text(info.content)
.padding()
.font(.element.footnote)
.foregroundColor(.element.primaryContent)
.frame(maxWidth: .infinity, alignment: .leading)
}
.navigationBarTitleDisplayMode(.inline)
.navigationTitle(info.title)
.toolbar {
ToolbarItem(placement: .cancellationAction) {
Button(ElementL10n.actionCancel) {
presentationMode.wrappedValue.dismiss()
dismiss()
}
}
ToolbarItem(placement: .secondaryAction) {
@@ -49,5 +51,27 @@ struct TimelineItemDebugView: View {
}
}
}
.tint(.element.accent)
}
}
struct TimelineItemDebugView_Previews: PreviewProvider {
static let smallContent = """
{
SomeItem(
event_id: "$1234546634535",
sender: "@user:server.com",
timestamp: 42354534534
content: Message(
Message {
…
}
)
)
}
"""
static var previews: some View {
TimelineItemDebugView(info: .init(title: "Timeline item", content: smallContent))
}
}