From 161a63708efb4a9ddc8aa880e27ca7a9cdb07ea0 Mon Sep 17 00:00:00 2001 From: Bryan Lee <38807139+liby@users.noreply.github.com> Date: Tue, 25 Oct 2022 21:29:06 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E6=94=AF=E6=8C=81=E4=BB=8E=20*tau?= =?UTF-8?q?ri.config.json*=20=E4=B8=AD=E8=AF=BB=E5=8F=96=20`fullscreen`=20?= =?UTF-8?q?=E6=9D=A5=E5=81=9A=E7=AA=97=E5=8F=A3=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-tauri/src/main.rs | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index d83af69..8b2e2bb 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -10,7 +10,7 @@ fn main() -> wry::Result<()> { keyboard::KeyCode, menu::{MenuBar as Menu, MenuItem, MenuItemAttributes, MenuType}, platform::macos::WindowBuilderExtMacOS, - window::{Window, WindowBuilder, Fullscreen}, + window::{Fullscreen, Window, WindowBuilder}, }, webview::WebViewBuilder, }; @@ -37,38 +37,41 @@ fn main() -> wry::Result<()> { menu_bar_menu.add_submenu("App", true, first_menu); - let config_file = File::open("./tauri.conf.json").unwrap(); - let config: Config = serde_json::from_reader(config_file).unwrap(); let WindowConfig { url, width, height, resizable, transparent, + fullscreen, .. - } = &config.tauri.windows[0]; - + } = get_windows_config(); let event_loop = EventLoop::new(); let window = WindowBuilder::new() - .with_resizable(*resizable) - .with_titlebar_transparent(*transparent) + .with_resizable(resizable) + .with_titlebar_transparent(transparent) + .with_fullscreen(if fullscreen { + Some(Fullscreen::Borderless(None)) + } else { + None + }) .with_fullsize_content_view(true) .with_titlebar_buttons_hidden(false) .with_title_hidden(true) .with_menu(menu_bar_menu) - .with_inner_size(wry::application::dpi::LogicalSize::new(*width, *height)) + .with_inner_size(wry::application::dpi::LogicalSize::new(width, height)) .build(&event_loop) .unwrap(); let handler = move |window: &Window, req: String| { if req == "drag_window" { - let _ = window.drag_window(); + let _ = window.drag_window(); } else if req == "fullscreen" { - if window.fullscreen().is_some() { - window.set_fullscreen(None); - }else{ - window.set_fullscreen(Some(Fullscreen::Borderless(None))); - } + if window.fullscreen().is_some() { + window.set_fullscreen(None); + } else { + window.set_fullscreen(Some(Fullscreen::Borderless(None))); + } } }; @@ -103,3 +106,10 @@ fn main() -> wry::Result<()> { } }); } + +fn get_windows_config() -> WindowConfig { + let config_file = File::open("./tauri.conf.json").unwrap(); + let config: Config = serde_json::from_reader(config_file).unwrap(); + + config.tauri.windows[0].clone() +}