Merge remote-tracking branch 'origin/v2' into feat/cef

This commit is contained in:
FabianLars
2026-03-09 12:31:03 +01:00
52 changed files with 1923 additions and 2351 deletions
@@ -8,7 +8,7 @@
"tauri": "tauri"
},
"devDependencies": {
"@tauri-apps/cli": "2.10.0",
"@tauri-apps/cli": "2.10.1",
"typescript": "^5.7.3",
"vite": "^7.3.1"
}
@@ -10,10 +10,8 @@ pub struct AppSettings {
pub theme: String,
}
impl AppSettings {
pub fn load_from_store<R: tauri::Runtime>(
store: &Store<R>,
) -> Result<Self, Box<dyn std::error::Error>> {
impl<R: tauri::Runtime> From<&Store<R>> for AppSettings {
fn from(store: &Store<R>) -> Self {
let launch_at_login = store
.get("appSettings.launchAtLogin")
.and_then(|v| v.as_bool())
@@ -24,9 +22,9 @@ impl AppSettings {
.and_then(|v| v.as_str().map(String::from))
.unwrap_or_else(|| "dark".to_owned());
Ok(AppSettings {
AppSettings {
launch_at_login,
theme,
})
}
}
}
@@ -18,28 +18,22 @@ fn main() {
.setup(|app| {
// Init store and load it from disk
let store = app.store("settings.json")?;
app.listen("store://change", |event| {
dbg!(event);
});
let app_settings = AppSettings::load_from_store(&store);
match app_settings {
Ok(app_settings) => {
let theme = app_settings.theme;
let launch_at_login = app_settings.launch_at_login;
println!("theme {theme}");
println!("launch_at_login {launch_at_login}");
store.set(
"appSettings",
json!({ "theme": theme, "launchAtLogin": launch_at_login }),
);
}
Err(err) => {
eprintln!("Error loading settings: {err}");
// Handle the error case if needed
return Err(err); // Convert the error to a Box<dyn Error> and return Err(err) here
}
}
let app_settings = AppSettings::from(store.as_ref());
let theme = app_settings.theme;
let launch_at_login = app_settings.launch_at_login;
println!("theme {theme}");
println!("launch_at_login {launch_at_login}");
store.set(
"appSettings",
json!({ "theme": theme, "launchAtLogin": launch_at_login }),
);
Ok(())
})
.run(tauri::generate_context!())