refactor(ios): minimal full-screen canvas

This commit is contained in:
Peter Steinberger
2025-12-13 00:50:20 +00:00
parent ca20a2dc06
commit 8cc2dc715c
4 changed files with 70 additions and 44 deletions

View File

@@ -5,31 +5,19 @@ struct ScreenTab: View {
@EnvironmentObject private var appModel: NodeAppModel
var body: some View {
NavigationStack {
VStack(spacing: 0) {
ScreenWebView(controller: self.appModel.screen)
.overlay(alignment: .top) {
if let errorText = self.appModel.screen.errorText {
Text(errorText)
.font(.footnote)
.padding(10)
.background(.thinMaterial)
.clipShape(RoundedRectangle(cornerRadius: 12, style: .continuous))
.padding()
}
ZStack(alignment: .top) {
ScreenWebView(controller: self.appModel.screen)
.ignoresSafeArea()
.overlay(alignment: .top) {
if let errorText = self.appModel.screen.errorText {
Text(errorText)
.font(.footnote)
.padding(10)
.background(.thinMaterial)
.clipShape(RoundedRectangle(cornerRadius: 12, style: .continuous))
.padding()
}
if self.appModel.isBackgrounded {
Divider()
Text("Screen commands unavailable while backgrounded.")
.font(.footnote)
.foregroundStyle(.secondary)
.frame(maxWidth: .infinity, alignment: .leading)
.padding()
}
}
.navigationTitle("Screen")
.navigationBarTitleDisplayMode(.inline)
}
}