diff --git a/.changes/gtk-visiblity.md b/.changes/gtk-visiblity.md new file mode 100644 index 000000000..db92d967d --- /dev/null +++ b/.changes/gtk-visiblity.md @@ -0,0 +1,5 @@ +--- +"wry": patch +--- + +Correctly set visibilty when building `Window` on gtk-backend \ No newline at end of file diff --git a/src/application/event_loop.rs b/src/application/event_loop.rs index 28762f639..270c4829a 100644 --- a/src/application/event_loop.rs +++ b/src/application/event_loop.rs @@ -299,7 +299,7 @@ impl EventLoop { ), WindowRequest::Visible(visible) => { if visible { - window.show(); + window.show_all(); } else { window.hide(); } diff --git a/src/application/window.rs b/src/application/window.rs index ecfe6b6a9..87e8c76c3 100644 --- a/src/application/window.rs +++ b/src/application/window.rs @@ -446,7 +446,6 @@ impl Window { if attributes.maximized { window.maximize(); } - window.set_visible(attributes.visible); window.set_decorated(attributes.decorations); if !attributes.decorations && attributes.resizable { @@ -481,7 +480,11 @@ impl Window { window.set_icon(Some(&icon.into())); } - window.show_all(); + if attributes.visible { + window.show_all(); + } else { + window.hide(); + } let window_requests_tx = event_loop_window_target.window_requests_tx.clone();