diff --git a/input-capture/src/libei.rs b/input-capture/src/libei.rs index d527c32..006a2cb 100644 --- a/input-capture/src/libei.rs +++ b/input-capture/src/libei.rs @@ -508,7 +508,7 @@ async fn handle_ei_event( } EiEvent::SeatRemoved(_) | /* EiEvent::DeviceAdded(_) | */ EiEvent::DeviceRemoved(_) => { log::debug!("releasing session: {ei_event:?}"); - release_session.notify_one(); + release_session.notify_waiters(); } EiEvent::DevicePaused(_) | EiEvent::DeviceResumed(_) => {} EiEvent::DeviceStartEmulating(_) => log::debug!("START EMULATING"), @@ -681,7 +681,7 @@ impl<'a> LanMouseInputCapture for LibeiInputCapture<'a> { } async fn release(&mut self) -> Result<(), CaptureError> { - self.notify_release.notify_one(); + self.notify_release.notify_waiters(); Ok(()) } diff --git a/src/server/capture_task.rs b/src/server/capture_task.rs index e0d0bc6..04802df 100644 --- a/src/server/capture_task.rs +++ b/src/server/capture_task.rs @@ -249,7 +249,7 @@ async fn handle_capture_event( }; if start_timer { - timer_notify.notify_one(); + timer_notify.notify_waiters(); } if enter { spawn_hook_command(server, handle); diff --git a/src/server/emulation_task.rs b/src/server/emulation_task.rs index 5a8d046..327852b 100644 --- a/src/server/emulation_task.rs +++ b/src/server/emulation_task.rs @@ -257,7 +257,7 @@ async fn handle_udp_rx( ); // restart timer if necessary if restart_timer { - timer_notify.notify_one(); + timer_notify.notify_waiters(); } ignore_event } else { diff --git a/src/server/frontend_task.rs b/src/server/frontend_task.rs index 9de93bc..99c0c82 100644 --- a/src/server/frontend_task.rs +++ b/src/server/frontend_task.rs @@ -127,11 +127,11 @@ async fn handle_frontend_event( log::debug!("frontend: {event:?}"); match event { FrontendRequest::EnableCapture => { - notify_capture.notify_one(); + notify_capture.notify_waiters(); } FrontendRequest::EnableEmulation => { log::info!("received emulation enable request"); - notify_emulation.notify_one(); + notify_emulation.notify_waiters(); } FrontendRequest::Create => { let handle = add_client(server, frontend).await;