cleanup server code + fix a lost update case (#191)

This commit is contained in:
Ferdinand Schober
2024-09-05 02:31:10 +02:00
committed by GitHub
parent 6cd190191e
commit 39fed0344c
5 changed files with 75 additions and 80 deletions

View File

@@ -6,7 +6,7 @@ use std::{env, process, str};
use window::Window;
use lan_mouse_ipc::FrontendEvent;
use lan_mouse_ipc::{FrontendEvent, FrontendRequest};
use adw::Application;
use gtk::{
@@ -92,6 +92,9 @@ fn build_ui(app: &Application) {
loop {
let notify = receiver.recv().await.unwrap_or_else(|_| process::exit(1));
match notify {
FrontendEvent::Changed(handle) => {
window.request(FrontendRequest::GetState(handle));
}
FrontendEvent::Created(handle, client, state) => {
window.new_client(handle, client, state);
}

View File

@@ -247,7 +247,11 @@ impl Window {
}
pub fn request_client_state(&self, client: &ClientObject) {
self.request(FrontendRequest::GetState(client.handle()));
self.request_client_state_for(client.handle());
}
pub fn request_client_state_for(&self, handle: ClientHandle) {
self.request(FrontendRequest::GetState(handle));
}
pub fn request_client_create(&self) {