diff --git a/plugins/misc/Cargo.toml b/plugins/misc/Cargo.toml index 744b24bdc8..11435fa2a1 100644 --- a/plugins/misc/Cargo.toml +++ b/plugins/misc/Cargo.toml @@ -31,3 +31,5 @@ rodio = { workspace = true, features = ["wav"] } specta = { workspace = true } sysinfo = { workspace = true } thiserror = { workspace = true } + +tauri-plugin-path2 = { path = "../path2" } diff --git a/plugins/misc/src/commands.rs b/plugins/misc/src/commands.rs index 112960c39b..cac6bcb9ac 100644 --- a/plugins/misc/src/commands.rs +++ b/plugins/misc/src/commands.rs @@ -1,7 +1,8 @@ use std::path::PathBuf; -use tauri::{Manager, path::BaseDirectory}; +use tauri::Manager; use tauri_plugin_opener::OpenerExt; +use tauri_plugin_path2::Path2PluginExt; use crate::MiscPluginExt; use crate::audio::import_audio; @@ -36,11 +37,8 @@ pub async fn audio_exist( app: tauri::AppHandle, session_id: String, ) -> Result { - let data_dir = app - .path() - .resolve("hyprnote/sessions", BaseDirectory::Data) - .map_err(|e| e.to_string())?; - let session_dir = data_dir.join(session_id); + let base = app.path2().base().map_err(|e| e.to_string())?; + let session_dir = base.join("sessions").join(session_id); ["audio.wav", "audio.ogg"] .iter() @@ -58,11 +56,8 @@ pub async fn audio_delete( app: tauri::AppHandle, session_id: String, ) -> Result<(), String> { - let data_dir = app - .path() - .resolve("hyprnote/sessions", BaseDirectory::Data) - .map_err(|e| e.to_string())?; - let session_dir = data_dir.join(session_id); + let base = app.path2().base().map_err(|e| e.to_string())?; + let session_dir = base.join("sessions").join(session_id); ["audio.wav", "audio.ogg"] .iter() @@ -94,11 +89,11 @@ fn audio_import_internal( session_id: &str, source_path: &str, ) -> Result { - let data_dir = app - .path() - .resolve("hyprnote/sessions", BaseDirectory::Data) + let base = app + .path2() + .base() .map_err(|e| AudioImportError::PathResolver(e.to_string()))?; - let session_dir = data_dir.join(session_id); + let session_dir = base.join("sessions").join(session_id); std::fs::create_dir_all(&session_dir)?; @@ -127,11 +122,8 @@ pub async fn audio_path( app: tauri::AppHandle, session_id: String, ) -> Result { - let data_dir = app - .path() - .resolve("hyprnote/sessions", BaseDirectory::Data) - .map_err(|e| e.to_string())?; - let session_dir = data_dir.join(session_id); + let base = app.path2().base().map_err(|e| e.to_string())?; + let session_dir = base.join("sessions").join(session_id); let path = ["audio.ogg", "audio.wav"] .iter() @@ -148,11 +140,8 @@ pub async fn audio_open( app: tauri::AppHandle, session_id: String, ) -> Result<(), String> { - let data_dir = app - .path() - .resolve("hyprnote/sessions", BaseDirectory::Data) - .map_err(|e| e.to_string())?; - let session_dir = data_dir.join(session_id); + let base = app.path2().base().map_err(|e| e.to_string())?; + let session_dir = base.join("sessions").join(session_id); app.opener() .open_path(session_dir.to_string_lossy(), None::<&str>) @@ -167,11 +156,8 @@ pub async fn delete_session_folder( app: tauri::AppHandle, session_id: String, ) -> Result<(), String> { - let data_dir = app - .path() - .resolve("hyprnote/sessions", BaseDirectory::Data) - .map_err(|e| e.to_string())?; - let session_dir = data_dir.join(session_id); + let base = app.path2().base().map_err(|e| e.to_string())?; + let session_dir = base.join("sessions").join(session_id); if session_dir.exists() { std::fs::remove_dir_all(session_dir).map_err(|e| e.to_string())?;