Implement server running preference and cleanup on exit

- Added `setKeepServerRunning` function to manage server persistence on app close.
- Integrated server running preference in `ConnectionForm` and synced settings on app startup.
- Enhanced server management in `main.rs` to handle orphaned processes based on user preference.
- Improved cleanup logic to ensure proper termination of server processes when not set to keep running.
This commit is contained in:
Jamie Pine
2026-01-26 17:02:00 -08:00
parent b1cf7926c7
commit 88d41f342b
5 changed files with 222 additions and 8 deletions
+15
View File
@@ -54,6 +54,21 @@ export async function stopServer(): Promise<void> {
}
}
/**
* Set whether the server should keep running when the app closes (Tauri only)
*/
export async function setKeepServerRunning(keepRunning: boolean): Promise<void> {
if (!isTauri()) {
return;
}
try {
await invoke('set_keep_server_running', { keepRunning });
} catch (error) {
console.error('Failed to set keep server running setting:', error);
}
}
/**
* Setup window close handler to check setting and stop server if needed
*/