From 0a157bea0468c7c1bb80857eb9b22af4d0c92cd2 Mon Sep 17 00:00:00 2001 From: Tlntin <371043382@qq.com> Date: Fri, 18 Nov 2022 16:28:54 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96windows=E4=B8=8B=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=EF=BC=8C=E6=8F=90=E9=AB=98=E5=85=BC=E5=AE=B9=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-tauri/src/main.rs | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index f96675b..b2e638d 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -20,11 +20,9 @@ use wry::{ #[cfg(target_os="windows")] use wry::{ application::{ - accelerator::{Accelerator, SysMods}, event::{Event, StartCause, WindowEvent}, event_loop::{ControlFlow, EventLoop}, - keyboard::KeyCode, - menu::{MenuBar as Menu, MenuItem, MenuItemAttributes, MenuType}, + menu::{MenuType}, window::{Fullscreen, Window, WindowBuilder, Icon}, }, webview::WebViewBuilder, @@ -36,7 +34,7 @@ use wry::{ application::{ event::{Event, StartCause, WindowEvent}, event_loop::{ControlFlow, EventLoop}, - menu::{MenuBar as Menu, MenuItem, MenuType}, + menu::{MenuType}, window::{Fullscreen, Window, WindowBuilder}, }, webview::WebViewBuilder, @@ -45,27 +43,31 @@ use wry::{ fn main() -> wry::Result<()> { + #[cfg(target_os = "macos")] let mut menu_bar_menu = Menu::new(); - let mut first_menu = Menu::new(); - - first_menu.add_native_item(MenuItem::Hide); - first_menu.add_native_item(MenuItem::EnterFullScreen); - first_menu.add_native_item(MenuItem::Minimize); - first_menu.add_native_item(MenuItem::Separator); - first_menu.add_native_item(MenuItem::Copy); - first_menu.add_native_item(MenuItem::Cut); - first_menu.add_native_item(MenuItem::Paste); - first_menu.add_native_item(MenuItem::Undo); - first_menu.add_native_item(MenuItem::Redo); - first_menu.add_native_item(MenuItem::SelectAll); - first_menu.add_native_item(MenuItem::Separator); + #[cfg(target_os = "macos")] + let mut first_menu = Menu::new() + .add_native_item(MenuItem::Hide) + .add_native_item(MenuItem::EnterFullScreen) + .add_native_item(MenuItem::Minimize) + .add_native_item(MenuItem::Separator) + .add_native_item(MenuItem::Copy) + .add_native_item(MenuItem::Cut) + .add_native_item(MenuItem::Paste) + .add_native_item(MenuItem::Undo) + .add_native_item(MenuItem::Redo) + .add_native_item(MenuItem::SelectAll) + .add_native_item(MenuItem::Separator); #[cfg(target_os = "macos")] let close_item = first_menu.add_item( MenuItemAttributes::new("CloseWindow") .with_accelerators(&Accelerator::new(SysMods::Cmd, KeyCode::KeyW)), ); + + #[cfg(target_os = "macos")] first_menu.add_native_item(MenuItem::Quit); + #[cfg(target_os = "macos")] menu_bar_menu.add_submenu("App", true, first_menu); let WindowConfig { @@ -131,13 +133,14 @@ fn main() -> wry::Result<()> { } }; #[cfg(target_os = "windows")] - let webview = WebViewBuilder::new(window)? + let webview = WebViewBuilder::new(window)? .with_url(&url.to_string())? .with_devtools(cfg!(feature = "devtools")) .with_initialization_script(include_str!("pake.js")) .with_ipc_handler(handler) .build()?; + #[cfg(target_os = "linux")] let webview = WebViewBuilder::new(window)? .with_url(&url.to_string())? @@ -177,6 +180,7 @@ fn main() -> wry::Result<()> { webview.window().set_minimized(true); } println!("Clicked on {:?}", menu_id); + println!("Clicked on {:?}", webview.window().is_visible()); } _ => (), }