You've already forked AstralRinth
forked from didirus/AstralRinth
91 lines
3.3 KiB
Rust
91 lines
3.3 KiB
Rust
#![cfg_attr(
|
|
all(not(debug_assertions), target_os = "windows"),
|
|
windows_subsystem = "windows"
|
|
)]
|
|
|
|
use tauri::api::shell;
|
|
use tauri::{
|
|
CustomMenuItem, Manager, Menu, MenuEntry, MenuItem, Submenu, WindowBuilder, WindowUrl,
|
|
};
|
|
|
|
fn main() {
|
|
let ctx = tauri::generate_context!(); // Run `pnpm build:web` (builds the web app) to get rid of the error.
|
|
|
|
tauri::Builder::default()
|
|
.invoke_handler(tauri::generate_handler![])
|
|
.setup(|app| {
|
|
let _win = WindowBuilder::new(app, "main", WindowUrl::default())
|
|
.title("Modrinth")
|
|
.resizable(true)
|
|
.decorations(true)
|
|
.always_on_top(false)
|
|
.inner_size(800.0, 550.0)
|
|
.min_inner_size(400.0, 200.0)
|
|
.skip_taskbar(false)
|
|
.fullscreen(false)
|
|
.build()?;
|
|
Ok(())
|
|
})
|
|
.menu(Menu::with_items([
|
|
#[cfg(target_os = "macos")]
|
|
MenuEntry::Submenu(Submenu::new(
|
|
&ctx.package_info().name,
|
|
Menu::with_items([
|
|
// MenuItem::About(ctx.package_info().name.clone()).into(),
|
|
MenuItem::Separator.into(),
|
|
MenuItem::Services.into(),
|
|
MenuItem::Separator.into(),
|
|
MenuItem::Hide.into(),
|
|
MenuItem::HideOthers.into(),
|
|
MenuItem::ShowAll.into(),
|
|
MenuItem::Separator.into(),
|
|
MenuItem::Quit.into(),
|
|
]),
|
|
)),
|
|
MenuEntry::Submenu(Submenu::new(
|
|
"File",
|
|
Menu::with_items([MenuItem::CloseWindow.into()]),
|
|
)),
|
|
MenuEntry::Submenu(Submenu::new(
|
|
"Edit",
|
|
Menu::with_items([
|
|
MenuItem::Undo.into(),
|
|
MenuItem::Redo.into(),
|
|
MenuItem::Separator.into(),
|
|
MenuItem::Cut.into(),
|
|
MenuItem::Copy.into(),
|
|
MenuItem::Paste.into(),
|
|
#[cfg(not(target_os = "macos"))]
|
|
MenuItem::Separator.into(),
|
|
MenuItem::SelectAll.into(),
|
|
]),
|
|
)),
|
|
MenuEntry::Submenu(Submenu::new(
|
|
"View",
|
|
Menu::with_items([MenuItem::EnterFullScreen.into()]),
|
|
)),
|
|
MenuEntry::Submenu(Submenu::new(
|
|
"Window",
|
|
Menu::with_items([MenuItem::Minimize.into(), MenuItem::Zoom.into()]),
|
|
)),
|
|
// You should always have a Help menu on macOS because it will automatically
|
|
// show a menu search field
|
|
MenuEntry::Submenu(Submenu::new(
|
|
"Help",
|
|
Menu::with_items([CustomMenuItem::new("Learn More", "Learn More").into()]),
|
|
)),
|
|
]))
|
|
.on_menu_event(|event| {
|
|
let event_name = event.menu_item_id();
|
|
match event_name {
|
|
"Learn More" => {
|
|
let url = "https://github.com/probablykasper/tauri-template".to_string();
|
|
shell::open(&event.window().shell_scope(), url, None).unwrap();
|
|
}
|
|
_ => {}
|
|
}
|
|
})
|
|
.run(ctx)
|
|
.expect("error while running tauri application");
|
|
}
|