From 542f6c927136a12d753f0eb7d0f75c2feee61b75 Mon Sep 17 00:00:00 2001 From: "Goran M." Date: Sun, 4 Oct 2026 11:05:57 +0200 Subject: [PATCH] fix: clear screens of plugin-registered devices on exit (#454) Co-authored-by: nekename <63245705+nekename@users.noreply.github.com> --- src-tauri/src/main.rs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index 8d4ed29..87720dc 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -391,8 +391,18 @@ If you have already donated, thank you so much for your support!"#, app.run(|app, event| { if let tauri::RunEvent::Exit = event { + futures::executor::block_on(async { + let device_ids = shared::DEVICES.iter().filter(|entry| !entry.id.starts_with("sd-")).map(|entry| entry.id.clone()).collect::>(); + for id in device_ids { + let _ = events::outbound::devices::clear_screen(id).await; + } + }); + #[cfg(windows)] - futures::executor::block_on(plugins::deactivate_plugins()); + { + std::thread::sleep(std::time::Duration::from_millis(750)); + futures::executor::block_on(plugins::deactivate_plugins()); + } let flush_future = store::profiles::flush_stale_profiles(); match futures::executor::block_on(flush_future) {