From 50d6dc6293856cf0c198a513065e3329a01d08d9 Mon Sep 17 00:00:00 2001 From: mslxl Date: Tue, 9 Apr 2024 19:45:40 +0800 Subject: [PATCH] refactor: redirect websocket connection outside webview --- src-tauri/src/main.rs | 4 ++-- src-tauri/src/util/fs.rs | 8 ++++++++ src-tauri/src/util/mod.rs | 1 + src/components/collab/connected.tsx | 2 +- src/lib/net/WebsocketTauriPolyfill.ts | 7 +++++-- src/store/source/provider.ts | 3 ++- 6 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 src-tauri/src/util/fs.rs diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index 482dbad..362f9bd 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -50,11 +50,11 @@ fn main() { .setup(|app| { // provlegisto state CONFIG_DIR - .set(dunce::canonicalize(app.path_resolver().app_config_dir().unwrap()).unwrap()) + .set(util::fs::canonicalize(app.path_resolver().app_config_dir().unwrap()).unwrap()) .unwrap(); RESOURCE_DIR .set( - dunce::canonicalize(app.path_resolver().app_local_data_dir().unwrap()).unwrap(), + util::fs::canonicalize(app.path_resolver().app_local_data_dir().unwrap()).unwrap(), ) .unwrap(); app.manage(LSPState::default()); diff --git a/src-tauri/src/util/fs.rs b/src-tauri/src/util/fs.rs new file mode 100644 index 0000000..a452aab --- /dev/null +++ b/src-tauri/src/util/fs.rs @@ -0,0 +1,8 @@ +use std::path::{Path, PathBuf}; + +pub fn canonicalize>(p: P)-> std::io::Result{ + if !p.as_ref().exists() { + std::fs::create_dir_all(&p)?; + } + dunce::canonicalize(p) +} \ No newline at end of file diff --git a/src-tauri/src/util/mod.rs b/src-tauri/src/util/mod.rs index 32b9a77..b51b831 100644 --- a/src-tauri/src/util/mod.rs +++ b/src-tauri/src/util/mod.rs @@ -1,6 +1,7 @@ pub mod console; pub mod error; pub mod keylock; +pub mod fs; pub fn append_env_var(name: &str, value: String) -> String { let origin = std::env::var(name); diff --git a/src/components/collab/connected.tsx b/src/components/collab/connected.tsx index 570fdc2..1ed8bd9 100644 --- a/src/components/collab/connected.tsx +++ b/src/components/collab/connected.tsx @@ -65,7 +65,7 @@ export default function Connected(props: ConnectedProps) { return (
- Online Users + ONLINE USERS