mirror of
https://github.com/neon443/ShhShell.git
synced 2026-03-11 05:19:13 +00:00
fix closing a session crash
remove theme preview thingy cos it doesnt work 😭
padding on aboutview
This commit is contained in:
@@ -55,6 +55,7 @@ struct AboutView: View {
|
||||
} label: {
|
||||
Text("Show Welcome")
|
||||
}
|
||||
.padding()
|
||||
|
||||
NavigationLink {
|
||||
ShaderTestingView()
|
||||
|
||||
@@ -159,7 +159,11 @@ Hostkey fingerprint is \(handler.getHostkey() ?? "nil")
|
||||
}
|
||||
}
|
||||
.fullScreenCover(isPresented: $showTerminal) {
|
||||
ShellTabView(handler: handler, hostsManager: hostsManager)
|
||||
ShellTabView(
|
||||
handler: handler,
|
||||
hostsManager: hostsManager,
|
||||
keyManager: keyManager
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,6 +38,7 @@ struct SessionView: View {
|
||||
ShellTabView(
|
||||
handler: nil,
|
||||
hostsManager: hostsManager,
|
||||
keyManager: keyManager,
|
||||
selectedID: key
|
||||
)
|
||||
}
|
||||
|
||||
@@ -11,12 +11,13 @@ import SwiftTerm
|
||||
struct ShellTabView: View {
|
||||
@State var handler: SSHHandler?
|
||||
@ObservedObject var hostsManager: HostsManager
|
||||
@ObservedObject var keyManager: KeyManager
|
||||
|
||||
@ObservedObject var container = TerminalViewContainer.shared
|
||||
@State var selectedID: UUID?
|
||||
var selectedHandler: SSHHandler {
|
||||
guard let selectedID, let contained = container.sessions[selectedID] else {
|
||||
guard let handler else { fatalError("no handler in shelltabview") }
|
||||
guard let handler else { return SSHHandler(host: Host.blank, keyManager: nil) }
|
||||
return handler
|
||||
}
|
||||
return contained.handler
|
||||
@@ -206,6 +207,7 @@ struct ShellTabView: View {
|
||||
#Preview {
|
||||
ShellTabView(
|
||||
handler: SSHHandler(host: Host.blank, keyManager: nil),
|
||||
hostsManager: HostsManager()
|
||||
hostsManager: HostsManager(),
|
||||
keyManager: KeyManager()
|
||||
)
|
||||
}
|
||||
|
||||
@@ -20,33 +20,33 @@ struct ThemeEditorView: View {
|
||||
hostsManager.selectedTheme.background.suiColor.opacity(0.5)
|
||||
.ignoresSafeArea(.all)
|
||||
NavigationStack {
|
||||
ZStack {
|
||||
RoundedRectangle(cornerRadius: 20)
|
||||
.foregroundStyle(theme.background.suiColor)
|
||||
VStack {
|
||||
Text(theme.name)
|
||||
.foregroundStyle(theme.foreground.suiColor)
|
||||
.font(.headline)
|
||||
.lineLimit(1)
|
||||
Spacer()
|
||||
VStack(spacing: 0) {
|
||||
ForEach(0...1, id: \.self) { row in
|
||||
HStack(spacing: 0) {
|
||||
let range = row == 0 ? 0..<8 : 8..<16
|
||||
ForEach(range, id: \.self) { col in
|
||||
Rectangle()
|
||||
.aspectRatio(1, contentMode: .fit)
|
||||
.foregroundStyle(theme.ansi[col].suiColor)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.clipShape(RoundedRectangle(cornerRadius: 10))
|
||||
}
|
||||
.padding(10)
|
||||
}
|
||||
.fixedSize(horizontal: false, vertical: true)
|
||||
.padding(.horizontal)
|
||||
// ZStack {
|
||||
// RoundedRectangle(cornerRadius: 20)
|
||||
// .foregroundStyle(theme.background.suiColor)
|
||||
// VStack {
|
||||
// Text(theme.name)
|
||||
// .foregroundStyle(theme.foreground.suiColor)
|
||||
// .font(.headline)
|
||||
// .lineLimit(1)
|
||||
// Spacer()
|
||||
// VStack(spacing: 0) {
|
||||
// ForEach(0...1, id: \.self) { row in
|
||||
// HStack(spacing: 0) {
|
||||
// let range = row == 0 ? 0..<8 : 8..<16
|
||||
// ForEach(range, id: \.self) { col in
|
||||
// Rectangle()
|
||||
// .aspectRatio(1, contentMode: .fit)
|
||||
// .foregroundStyle(theme.ansi[col].suiColor)
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// .clipShape(RoundedRectangle(cornerRadius: 10))
|
||||
// }
|
||||
// .padding(10)
|
||||
// }
|
||||
// .fixedSize(horizontal: false, vertical: true)
|
||||
// .padding(.horizontal)
|
||||
|
||||
List {
|
||||
Section("Main Colors") {
|
||||
|
||||
Reference in New Issue
Block a user