feat(app): configure background tray behavior

This commit is contained in:
t8y2 committed 2026-05-22 02:24:16 +08:00
1 parent cf520a7ee1
commit bc41936e48
12 files changed
+282 -35

No files matched your search

+25
View File
@@ -0,0 +1,25 @@
use std::sync::Arc;
use dbx_core::storage::DesktopSettings;
use tauri::{AppHandle, Manager, State};
use super::connection::AppState;
use crate::{apply_desktop_tray_preference, WindowBehaviorState};
#[tauri::command]
pub async fn load_desktop_settings(state: State<'_, Arc<AppState>>) -> Result<DesktopSettings, String> {
state.storage.load_desktop_settings().await
}
#[tauri::command]
pub async fn save_desktop_settings(
app: AppHandle,
state: State<'_, Arc<AppState>>,
settings: DesktopSettings,
) -> Result<(), String> {
state.storage.save_desktop_settings(&settings).await?;
if let Some(window_behavior) = app.try_state::<WindowBehaviorState>() {
window_behavior.set_run_in_background(settings.run_in_background);
}
apply_desktop_tray_preference(&app, settings.run_in_background).map_err(|err| err.to_string())
}
+1
View File
@@ -1,5 +1,6 @@
pub mod agents;
pub mod ai;
pub mod app_settings;
pub mod connection;
#[allow(dead_code, unused_imports)]
mod connection_secrets;