|
@@ -1,14 +1,17 @@
|
|
|
mod cmd;
|
|
|
+mod salt;
|
|
|
+#[allow(dead_code)]
|
|
|
+mod file_system;
|
|
|
|
|
|
#[cfg(not(any(feature = "dev-server", feature = "embedded-server")))]
|
|
|
use std::path::PathBuf;
|
|
|
use web_view::WebView;
|
|
|
|
|
|
#[allow(unused_variables)]
|
|
|
-pub(crate) fn handle<T: 'static>(webview: &mut WebView<'_, T>, arg: &str) -> crate::Result<bool> {
|
|
|
+pub(crate) fn handle<T: 'static>(webview: &mut WebView<'_, T>, arg: &str) -> crate::Result<()> {
|
|
|
use cmd::Cmd::*;
|
|
|
match serde_json::from_str(arg) {
|
|
|
- Err(_) => Ok(false),
|
|
|
+ Err(e) => Err(crate::Error::from(e.to_string())),
|
|
|
Ok(command) => {
|
|
|
match command {
|
|
|
Init {} => {
|
|
@@ -20,48 +23,41 @@ pub(crate) fn handle<T: 'static>(webview: &mut WebView<'_, T>, arg: &str) -> cra
|
|
|
event_init = event_init
|
|
|
))?;
|
|
|
}
|
|
|
- #[cfg(any(feature = "all-api", feature = "readTextFile"))]
|
|
|
+ #[cfg(any(feature = "all-api", feature = "read-text-file"))]
|
|
|
ReadTextFile {
|
|
|
path,
|
|
|
callback,
|
|
|
error,
|
|
|
} => {
|
|
|
- crate::file_system::read_text_file(webview, path, callback, error);
|
|
|
+ file_system::read_text_file(webview, path, callback, error);
|
|
|
}
|
|
|
- #[cfg(any(feature = "all-api", feature = "readBinaryFile"))]
|
|
|
+ #[cfg(any(feature = "all-api", feature = "read-binary-file"))]
|
|
|
ReadBinaryFile {
|
|
|
path,
|
|
|
callback,
|
|
|
error,
|
|
|
} => {
|
|
|
- crate::file_system::read_binary_file(webview, path, callback, error);
|
|
|
+ file_system::read_binary_file(webview, path, callback, error);
|
|
|
}
|
|
|
- #[cfg(any(feature = "all-api", feature = "writeFile"))]
|
|
|
+ #[cfg(any(feature = "all-api", feature = "write-file"))]
|
|
|
WriteFile {
|
|
|
file,
|
|
|
contents,
|
|
|
callback,
|
|
|
error,
|
|
|
} => {
|
|
|
- crate::file_system::write_file(webview, file, contents, callback, error);
|
|
|
+ file_system::write_file(webview, file, contents, callback, error);
|
|
|
}
|
|
|
- #[cfg(any(feature = "all-api", feature = "listDirs"))]
|
|
|
- ListDirs {
|
|
|
+ #[cfg(any(feature = "all-api", feature = "read-dir"))]
|
|
|
+ ReadDir {
|
|
|
path,
|
|
|
+ options,
|
|
|
callback,
|
|
|
error,
|
|
|
} => {
|
|
|
- crate::file_system::list_dirs(webview, path, callback, error);
|
|
|
+ file_system::read_dir(webview, path, options, callback, error);
|
|
|
}
|
|
|
- #[cfg(any(feature = "all-api", feature = "listFiles"))]
|
|
|
- ListFiles {
|
|
|
- path,
|
|
|
- callback,
|
|
|
- error,
|
|
|
- } => {
|
|
|
- crate::file_system::list(webview, path, callback, error);
|
|
|
- }
|
|
|
- #[cfg(any(feature = "all-api", feature = "setTitle"))]
|
|
|
+ #[cfg(any(feature = "all-api", feature = "set-title"))]
|
|
|
SetTitle { title } => {
|
|
|
webview.set_title(&title)?;
|
|
|
}
|
|
@@ -83,7 +79,7 @@ pub(crate) fn handle<T: 'static>(webview: &mut WebView<'_, T>, arg: &str) -> cra
|
|
|
callback,
|
|
|
error,
|
|
|
} => {
|
|
|
- crate::salt::validate(webview, salt, callback, error);
|
|
|
+ salt::validate(webview, salt, callback, error);
|
|
|
}
|
|
|
#[cfg(any(feature = "all-api", feature = "event"))]
|
|
|
Listen {
|
|
@@ -108,7 +104,7 @@ pub(crate) fn handle<T: 'static>(webview: &mut WebView<'_, T>, arg: &str) -> cra
|
|
|
load_asset(webview, asset, asset_type, callback, error)?;
|
|
|
}
|
|
|
}
|
|
|
- Ok(true)
|
|
|
+ Ok(())
|
|
|
}
|
|
|
}
|
|
|
}
|