Skip to content

Commit 4d002bf

Browse files
committed
tauri: use idiomatic way to create app dir
1 parent 2fbfe5e commit 4d002bf

2 files changed

Lines changed: 15 additions & 15 deletions

File tree

src-tauri/Cargo.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src-tauri/src/lib.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::collections::HashSet;
44
use std::fs;
55
use std::path::{Path, PathBuf};
66
use std::sync::Mutex;
7-
use tauri::State;
7+
use tauri::{Manager, State};
88
use walkdir::WalkDir;
99

1010
#[derive(Debug, Clone, Serialize, Deserialize)]
@@ -57,12 +57,6 @@ struct AppState {
5757
data_dir: PathBuf,
5858
}
5959

60-
fn get_default_data_dir() -> PathBuf {
61-
dirs::data_dir()
62-
.unwrap_or_else(|| PathBuf::from("."))
63-
.join("bugscope")
64-
}
65-
6660
fn scan_for_databases(dir: &Path, base_dir: &Path) -> Vec<DatabaseInfo> {
6761
let mut databases = Vec::new();
6862
for entry in WalkDir::new(dir).into_iter().filter_map(|e| e.ok()) {
@@ -404,12 +398,18 @@ fn execute_query(state: State<AppState>, id: usize, query: String) -> Result<Gra
404398

405399
#[cfg_attr(mobile, tauri::mobile_entry_point)]
406400
pub fn run() {
407-
let data_dir = get_default_data_dir();
408-
409401
tauri::Builder::default()
410-
.manage(AppState {
411-
custom_databases: Mutex::new(Vec::new()),
412-
data_dir,
402+
.setup(|app| {
403+
let data_dir = app
404+
.path()
405+
.app_data_dir()
406+
.expect("Failed to get app data dir");
407+
std::fs::create_dir_all(&data_dir).ok();
408+
app.manage(AppState {
409+
custom_databases: Mutex::new(Vec::new()),
410+
data_dir,
411+
});
412+
Ok(())
413413
})
414414
.invoke_handler(tauri::generate_handler![
415415
get_databases,

0 commit comments

Comments
 (0)