thing
This commit is contained in:
committed by
TIBERGHIEN corentin
parent
b61e1b1036
commit
003d55bd75
@@ -27,7 +27,7 @@ pub struct P2PClientApp {
|
||||
|
||||
// GUI State
|
||||
status_message: String,
|
||||
known_peers: Vec<String>,
|
||||
known_peers: Vec<(String, bool)>,
|
||||
connect_address_input: String,
|
||||
connected_address: String,
|
||||
connect_name_input: String,
|
||||
@@ -62,7 +62,7 @@ impl P2PClientApp {
|
||||
network_cmd_tx: cmd_tx,
|
||||
network_event_rx: event_rx,
|
||||
status_message: "Client Initialized. Awaiting network status...".to_string(),
|
||||
known_peers: vec!["bob".to_string()],
|
||||
known_peers: vec![("bob".to_string(), true)],
|
||||
connect_address_input: "https://jch.irif.fr:8443".to_string(),
|
||||
connected_address: "".to_string(),
|
||||
loaded_fs,
|
||||
@@ -111,8 +111,8 @@ impl eframe::App for P2PClientApp {
|
||||
todo!();
|
||||
|
||||
self.status_message = format!("✅ Peer connected: {}", addr);
|
||||
if !self.known_peers.contains(&addr) {
|
||||
self.known_peers.push(addr);
|
||||
if !self.known_peers.contains(&(addr, true)) {
|
||||
self.known_peers.push((addr, true));
|
||||
}
|
||||
}
|
||||
NetworkEvent::PeerListUpdated(peers) => {
|
||||
@@ -361,18 +361,18 @@ impl eframe::App for P2PClientApp {
|
||||
} else {
|
||||
for peer in &self.known_peers {
|
||||
let is_active =
|
||||
self.active_peer.as_ref().map_or(false, |id| id == peer); // if peer.id == self.active_peer_id
|
||||
self.active_peer.as_ref().map_or(false, |id| id == &peer.0); // if peer.id == self.active_peer_id
|
||||
|
||||
let selectable;
|
||||
if &self.active_server == peer {
|
||||
if &self.active_server == &peer.0 {
|
||||
selectable =
|
||||
ui.selectable_label(is_active, format!("{} 📡 🌀", peer))
|
||||
ui.selectable_label(is_active, format!("{} 📡 🌀", peer.0))
|
||||
} else {
|
||||
selectable = ui.selectable_label(is_active, format!("{}", peer));
|
||||
selectable = ui.selectable_label(is_active, format!("{}", peer.0));
|
||||
}
|
||||
if selectable.clicked() {
|
||||
// switch to displaying this peer's tree
|
||||
self.active_peer = Some(peer.clone());
|
||||
self.active_peer = Some(peer.0.clone());
|
||||
// Request root content if not loaded
|
||||
if !self
|
||||
.loaded_fs
|
||||
@@ -394,10 +394,10 @@ impl eframe::App for P2PClientApp {
|
||||
.button("Utiliser le peer en tant que serveur")
|
||||
.clicked()
|
||||
{
|
||||
self.active_server = peer.to_string();
|
||||
self.active_server = peer.0.to_string();
|
||||
let res = self.network_cmd_tx.send(
|
||||
NetworkCommand::ServerHandshake(
|
||||
peer.to_string(),
|
||||
peer.0.to_string(),
|
||||
self.connected_address.clone(),
|
||||
),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user