diff --git a/owmods_gui/backend/src/commands.rs b/owmods_gui/backend/src/commands.rs index a49ce78c..68740773 100644 --- a/owmods_gui/backend/src/commands.rs +++ b/owmods_gui/backend/src/commands.rs @@ -22,7 +22,7 @@ use owmods_core::{ local::{LocalMod, UnsafeLocalMod}, remote::RemoteMod, }, - open::{open_github, open_readme, open_shortcut}, + open::{open_github, open_owml_logs, open_readme, open_shortcut}, owml::OWMLConfig, progress::bars::{ProgressBar, ProgressBars}, protocol::{ProtocolPayload, ProtocolVerb}, @@ -438,6 +438,14 @@ pub async fn open_mod_readme(unique_name: &str, state: tauri::State<'_, State>) Ok(()) } + +#[tauri::command] +pub async fn open_owml_logs_folder(state: tauri::State<'_, State>) -> Result { + let config = state.config.read().await; + open_owml_logs(&config).context("Failed to open OWML logs")?; + Ok(()) +} + #[tauri::command] pub async fn open_owml(state: tauri::State<'_, State>) -> Result { let config = state.config.read().await; diff --git a/owmods_gui/backend/src/main.rs b/owmods_gui/backend/src/main.rs index 4338cb9c..b6e7136e 100644 --- a/owmods_gui/backend/src/main.rs +++ b/owmods_gui/backend/src/main.rs @@ -313,7 +313,8 @@ fn main() -> Result<(), Box> { get_db_tags, open_mod_github, force_log_update, - show_log_folder + show_log_folder, + open_owml_logs_folder, ]) .run(tauri::generate_context!()); diff --git a/owmods_gui/frontend/src/assets/translations/english.json b/owmods_gui/frontend/src/assets/translations/english.json index 14791be3..76207c91 100644 --- a/owmods_gui/frontend/src/assets/translations/english.json +++ b/owmods_gui/frontend/src/assets/translations/english.json @@ -104,6 +104,7 @@ "OPEN_WEBSITE": "Browse Mods Website", "OUTDATED": "Outdated", "OWML_INSTALL_ERROR": "There was an error downloading OWML, please check your network connection and try again.", + "OWML_LOGS": "OWML Logs", "OWML_NO_PRERELEASE": "There is no prerelease for OWML available", "OWML_PATH": "OWML Path", "OWML_SETTINGS": "OWML Settings", diff --git a/owmods_gui/frontend/src/commands.ts b/owmods_gui/frontend/src/commands.ts index 72785301..898ffccd 100644 --- a/owmods_gui/frontend/src/commands.ts +++ b/owmods_gui/frontend/src/commands.ts @@ -94,7 +94,8 @@ const commandInfo = { getDbTags: $>("get_db_tags"), logError: $>("log_error"), forceLogUpdate: $>("force_log_update"), - showLogsFolder: $("show_log_folder") + showLogsFolder: $("show_log_folder"), + openOwmlLogsFolder: $("open_owml_logs_folder"), }; type Command = keyof typeof commandInfo; diff --git a/owmods_gui/frontend/src/components/main/top-bar/overflow/OverflowMenu.tsx b/owmods_gui/frontend/src/components/main/top-bar/overflow/OverflowMenu.tsx index d02db7ea..6a218ec1 100644 --- a/owmods_gui/frontend/src/components/main/top-bar/overflow/OverflowMenu.tsx +++ b/owmods_gui/frontend/src/components/main/top-bar/overflow/OverflowMenu.tsx @@ -6,6 +6,7 @@ import { BuildRounded, FavoriteRounded, FolderOpenRounded, + GamepadRounded, HelpRounded, MoreHorizRounded, ReceiptRounded @@ -47,6 +48,11 @@ const OverflowMenu = () => { onClose(); }, [onClose]); + const onOpenOwmlLogs = useCallback(() => { + commands.openOwmlLogsFolder(); + onClose(); + }, [onClose]); + const onLogs = useCallback(() => { commands.showLogsFolder(); onClose(); @@ -101,6 +107,12 @@ const OverflowMenu = () => { {getTranslation("EDIT_OWML")} + + + + + {getTranslation("OWML_LOGS")} +