From 423abba4c3e3aa10f8da867b1035c44efcaae3d2 Mon Sep 17 00:00:00 2001 From: Sofia Date: Thu, 16 Jul 2026 02:58:16 +0300 Subject: [PATCH] Handle separate Closed-message --- rust/src/network_manager.rs | 8 ++++++++ rust/src/ui/cli.rs | 2 +- teanet-rust | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/rust/src/network_manager.rs b/rust/src/network_manager.rs index ad13b70..f96facb 100644 --- a/rust/src/network_manager.rs +++ b/rust/src/network_manager.rs @@ -64,6 +64,9 @@ impl INode for NetworkManager { CliColor::Error, ); } + peer.close(); + } + teanet::PeerMessage::Closed => { self.peer = None; } } @@ -96,6 +99,11 @@ impl INode for NetworkManager { ); } } + teanet::PeerMessage::Closed => { + cli.bind_mut() + .publish_message(format!("Server closed"), CliColor::Info); + self.peer = None; + } } } } diff --git a/rust/src/ui/cli.rs b/rust/src/ui/cli.rs index 147d88f..b05e4fe 100644 --- a/rust/src/ui/cli.rs +++ b/rust/src/ui/cli.rs @@ -101,7 +101,6 @@ impl CommandLinePanel { input.clear(); } self.handle_command(&command); - self.scroll_next_update = true; } pub fn publish_message(&mut self, message: String, color: CliColor) { @@ -112,6 +111,7 @@ impl CommandLinePanel { field.append_text(&format!("[color={}]", color.as_str())); field.append_text(&message); field.append_text("[/color]"); + self.scroll_next_update = true; } } diff --git a/teanet-rust b/teanet-rust index f3429ff..b9e40ce 160000 --- a/teanet-rust +++ b/teanet-rust @@ -1 +1 @@ -Subproject commit f3429ff4e86bb68b1fe42f908aaf561b3a9f3976 +Subproject commit b9e40ceede958b8f79cbb5bff3d1b0fe16454321