simlplify read from channel loop

main thread ui updates in disconnect()
This commit is contained in:
neon443
2025-06-26 12:32:18 +01:00
parent 42883c4ac9
commit 319373682c
3 changed files with 10 additions and 11 deletions

View File

@@ -5,7 +5,7 @@
// Created by neon443 on 06/06/2025.
//
VERSION = 1.1
VERSION = 1.1.1
BUILD = 1
// Configuration settings file format documentation can be found at:

View File

@@ -127,8 +127,10 @@ class SSHHandler: @unchecked Sendable, ObservableObject {
}
func disconnect() {
DispatchQueue.main.async {
withAnimation { self.state = .idle }
withAnimation { self.testSuceeded = nil }
}
//send eof if open
if ssh_channel_is_open(channel) == 1 {

View File

@@ -31,15 +31,12 @@ final class SSHTerminalView: TerminalView, Sendable, @preconcurrency TerminalVie
while handler.connected {
if let read = handler.readFromChannel() {
Task { [weak self] in
guard let self else { return }
await MainActor.run {
CATransaction.begin()
CATransaction.setDisableActions(true)
feed(text: read)
CATransaction.commit()
}
// Task { [weak self] in
// guard let self else { return }
Task { @MainActor in
self.feed(text: read)
}
// }
} else {
try? await Task.sleep(nanoseconds: 10_000_000) //10ms
}