diff options
author | 2023-02-14 06:42:59 +0100 | |
---|---|---|
committer | 2023-02-14 06:42:59 +0100 | |
commit | 4e93ae8e32bef9d6d94fe68a0d425447768c21bc (patch) | |
tree | 01161dd2771031c61f83918b60cfe13a5e927913 /winit/src/application.rs | |
parent | efbf66b0a181e4567209e770b859da12ff1c05ad (diff) | |
parent | 9506fb1181e60e78d92b6f0712d385371966e07f (diff) | |
download | iced-4e93ae8e32bef9d6d94fe68a0d425447768c21bc.tar.gz iced-4e93ae8e32bef9d6d94fe68a0d425447768c21bc.tar.bz2 iced-4e93ae8e32bef9d6d94fe68a0d425447768c21bc.zip |
Merge pull request #1698 from iced-rs/hide-window-until-ready
Hide window until `Renderer` has been initialized
Diffstat (limited to 'winit/src/application.rs')
-rw-r--r-- | winit/src/application.rs | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/winit/src/application.rs b/winit/src/application.rs index c1836ed9..769fe9dd 100644 --- a/winit/src/application.rs +++ b/winit/src/application.rs @@ -147,11 +147,15 @@ where #[cfg(target_arch = "wasm32")] let target = settings.window.platform_specific.target.clone(); - let builder = settings.window.into_builder( - &application.title(), - event_loop.primary_monitor(), - settings.id, - ); + let should_be_visible = settings.window.visible; + let builder = settings + .window + .into_builder( + &application.title(), + event_loop.primary_monitor(), + settings.id, + ) + .with_visible(false); log::info!("Window builder: {:#?}", builder); @@ -202,6 +206,7 @@ where control_sender, init_command, window, + should_be_visible, settings.exit_on_close_request, ); @@ -268,6 +273,7 @@ async fn run_instance<A, E, C>( mut control_sender: mpsc::UnboundedSender<winit::event_loop::ControlFlow>, init_command: Command<A::Message>, window: winit::window::Window, + should_be_visible: bool, exit_on_close_request: bool, ) where A: Application + 'static, @@ -295,6 +301,10 @@ async fn run_instance<A, E, C>( physical_size.height, ); + if should_be_visible { + window.set_visible(true); + } + run_command( &application, &mut cache, |