mirror of
https://github.com/neon443/ShhShell.git
synced 2026-03-11 05:19:13 +00:00
FINALLYYYYY
fix wierd keyboard bug
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
// Created by neon443 on 06/06/2025.
|
||||
//
|
||||
|
||||
VERSION = 1.5.1
|
||||
VERSION = 1.5.3
|
||||
BUILD = 51
|
||||
|
||||
// Configuration settings file format documentation can be found at:
|
||||
|
||||
@@ -147,22 +147,19 @@ struct ShellTabView: View {
|
||||
.id(selectedID)
|
||||
.transition(.opacity)
|
||||
} else {
|
||||
Text("No Session")
|
||||
if let handler {
|
||||
ShellView(
|
||||
handler: handler,
|
||||
hostsManager: hostsManager
|
||||
)
|
||||
.onAppear {
|
||||
if selectedID == nil {
|
||||
guard let handler,
|
||||
let handlerID = handler.sessionID else { return }
|
||||
selectedID = handlerID
|
||||
container.sessions[handlerID] = TerminalContainer(
|
||||
handler: handler,
|
||||
terminalView: SSHTerminalDelegate(
|
||||
frame: CGRect(origin: CGPoint(x: 0, y: 0), size: .zero),
|
||||
handler: handler,
|
||||
hostsManager: hostsManager
|
||||
)
|
||||
)
|
||||
selectedID = handler.sessionID
|
||||
}
|
||||
}
|
||||
} else {
|
||||
Text("No Session")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,19 +15,12 @@ struct ShellView: View {
|
||||
|
||||
@Environment(\.dismiss) var dismiss
|
||||
|
||||
var body: some View {
|
||||
var body: some View {
|
||||
NavigationStack {
|
||||
ZStack {
|
||||
hostsManager.selectedTheme.background.suiColor
|
||||
.ignoresSafeArea(.all)
|
||||
TerminalController(handler: handler, hostsManager: hostsManager)
|
||||
// .onAppear {
|
||||
// if let sessionID = handler.sessionID {
|
||||
// Task {
|
||||
// await container.sessions[sessionID]?.terminalView.restoreScrollback()
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
Group {
|
||||
Color.gray.opacity(0.2)
|
||||
@@ -42,7 +35,7 @@ struct ShellView: View {
|
||||
handler.applySelectedTheme()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#Preview {
|
||||
|
||||
@@ -31,14 +31,14 @@ struct TerminalController: UIViewRepresentable {
|
||||
tv.translatesAutoresizingMaskIntoConstraints = false
|
||||
tv.autoresizingMask = [.flexibleWidth, .flexibleHeight]
|
||||
|
||||
// if let sessionID = handler.sessionID {
|
||||
// Task { @MainActor in
|
||||
// container.sessions[sessionID] = TerminalContainer(
|
||||
// handler: handler,
|
||||
// terminalView: tv
|
||||
// )
|
||||
// }
|
||||
// }
|
||||
if let sessionID = handler.sessionID {
|
||||
Task { @MainActor in
|
||||
container.sessions[sessionID] = TerminalContainer(
|
||||
handler: handler,
|
||||
terminalView: tv
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
return tv
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user