fix: longer timeouts & cleanup

This commit is contained in:
Ashley Wulber 2023-01-10 13:29:52 -05:00
parent d35732d120
commit 4b5cc64e30
No known key found for this signature in database
GPG key ID: 5216D4F46A90A820
2 changed files with 4 additions and 9 deletions

View file

@ -208,8 +208,6 @@ impl Application for CosmicNetworkApplet {
| NetworkManagerRequest::SetWiFi(_) => {} | NetworkManagerRequest::SetWiFi(_) => {}
NetworkManagerRequest::SelectAccessPoint(_) NetworkManagerRequest::SelectAccessPoint(_)
| NetworkManagerRequest::Password(_, _) => { | NetworkManagerRequest::Password(_, _) => {
dbg!("success");
dbg!(&state);
self.new_connection.take(); self.new_connection.take();
self.show_visible_networks = false; self.show_visible_networks = false;
} }

View file

@ -170,7 +170,7 @@ async fn start_listening<I: Copy + Debug>(
let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap(); let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap();
let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default()); let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default());
let s = if let enums::ActiveConnectionState::Activating = state { let s = if let enums::ActiveConnectionState::Activating = state {
if let Ok(Some(s)) = timeout(Duration::from_secs(5), active.receive_state_changed().await.next()).await { if let Ok(Some(s)) = timeout(Duration::from_secs(10), active.receive_state_changed().await.next()).await {
s.get().await.unwrap_or_default().into() s.get().await.unwrap_or_default().into()
} else { } else {
state state
@ -215,7 +215,7 @@ async fn start_listening<I: Copy + Debug>(
let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap(); let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap();
let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default()); let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default());
let s = if let enums::ActiveConnectionState::Activating = state { let s = if let enums::ActiveConnectionState::Activating = state {
if let Ok(Some(s)) = timeout(Duration::from_secs(5), active.receive_state_changed().await.next()).await { if let Ok(Some(s)) = timeout(Duration::from_secs(10), active.receive_state_changed().await.next()).await {
s.get().await.unwrap_or_default().into() s.get().await.unwrap_or_default().into()
} else { } else {
state state
@ -281,7 +281,7 @@ async fn start_listening<I: Copy + Debug>(
let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap(); let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap();
let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default()); let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default());
let s = if let enums::ActiveConnectionState::Activating = state { let s = if let enums::ActiveConnectionState::Activating = state {
if let Ok(Some(s)) = timeout(Duration::from_secs(1), active.receive_state_changed().await.next()).await { if let Ok(Some(s)) = timeout(Duration::from_secs(10), active.receive_state_changed().await.next()).await {
s.get().await.unwrap_or_default().into() s.get().await.unwrap_or_default().into()
} else { } else {
state state
@ -293,7 +293,6 @@ async fn start_listening<I: Copy + Debug>(
} else { } else {
false false
}; };
// dbg!(&success);
status = (Some((id, NetworkManagerEvent::RequestResponse { status = (Some((id, NetworkManagerEvent::RequestResponse {
req: NetworkManagerRequest::SelectAccessPoint(ssid.clone()), req: NetworkManagerRequest::SelectAccessPoint(ssid.clone()),
success, success,
@ -302,7 +301,6 @@ async fn start_listening<I: Copy + Debug>(
break; break;
} }
// dbg!(&status);
let mut ap = None; let mut ap = None;
for d in &devices { for d in &devices {
@ -334,7 +332,7 @@ async fn start_listening<I: Copy + Debug>(
let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap(); let active = ActiveConnectionProxy::builder(&conn).path(path).unwrap().destination(dummy.destination()).unwrap().interface(dummy.interface()).unwrap().build().await.unwrap();
let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default()); let state = enums::ActiveConnectionState::from(active.state().await.unwrap_or_default());
let s = if let enums::ActiveConnectionState::Activating = state { let s = if let enums::ActiveConnectionState::Activating = state {
if let Ok(Some(s)) = timeout(Duration::from_secs(1), active.receive_state_changed().await.next()).await { if let Ok(Some(s)) = timeout(Duration::from_secs(10), active.receive_state_changed().await.next()).await {
s.get().await.unwrap_or_default().into() s.get().await.unwrap_or_default().into()
} else { } else {
state state
@ -356,7 +354,6 @@ async fn start_listening<I: Copy + Debug>(
} }
} }
} }
// dbg!(&status);
if status.0.is_none() { if status.0.is_none() {
status = (Some((id, NetworkManagerEvent::RequestResponse { status = (Some((id, NetworkManagerEvent::RequestResponse {