summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--glutin/src/application.rs24
-rw-r--r--winit/src/application.rs23
-rw-r--r--winit/src/settings.rs3
3 files changed, 12 insertions, 38 deletions
diff --git a/glutin/src/application.rs b/glutin/src/application.rs
index 054cf839..c6bb3e48 100644
--- a/glutin/src/application.rs
+++ b/glutin/src/application.rs
@@ -54,17 +54,12 @@ where
runtime.enter(|| A::new(flags))
};
- let should_be_visible = settings.window.visible;
-
let context = {
- let builder = settings
- .window
- .into_builder(
- &application.title(),
- event_loop.primary_monitor(),
- settings.id,
- )
- .with_visible(false);
+ let builder = settings.window.into_builder(
+ &application.title(),
+ event_loop.primary_monitor(),
+ settings.id,
+ );
log::info!("Window builder: {:#?}", builder);
@@ -139,7 +134,6 @@ where
receiver,
context,
init_command,
- should_be_visible,
settings.exit_on_close_request,
));
@@ -192,7 +186,6 @@ async fn run_instance<A, E, C>(
mut receiver: mpsc::UnboundedReceiver<glutin::event::Event<'_, A::Message>>,
mut context: glutin::ContextWrapper<glutin::PossiblyCurrent, Window>,
init_command: Command<A::Message>,
- should_be_visible: bool,
exit_on_close_request: bool,
) where
A: Application + 'static,
@@ -206,7 +199,6 @@ async fn run_instance<A, E, C>(
let mut clipboard = Clipboard::connect(context.window());
let mut cache = user_interface::Cache::default();
let mut state = application::State::new(&application, context.window());
- let mut visible = false;
let mut viewport_version = state.viewport_version();
application::run_command(
@@ -406,12 +398,6 @@ async fn run_instance<A, E, C>(
debug.render_finished();
- if !visible && should_be_visible {
- context.window().set_visible(true);
-
- visible = true;
- }
-
// TODO: Handle animations!
// Maybe we can use `ControlFlow::WaitUntil` for this.
}
diff --git a/winit/src/application.rs b/winit/src/application.rs
index ecec6043..a576126e 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -137,15 +137,11 @@ where
runtime.enter(|| A::new(flags))
};
- let should_be_visible = settings.window.visible;
- let builder = settings
- .window
- .into_builder(
- &application.title(),
- event_loop.primary_monitor(),
- settings.id,
- )
- .with_visible(false);
+ let builder = settings.window.into_builder(
+ &application.title(),
+ event_loop.primary_monitor(),
+ settings.id,
+ );
log::info!("Window builder: {:#?}", builder);
@@ -182,7 +178,6 @@ where
receiver,
init_command,
window,
- should_be_visible,
settings.exit_on_close_request,
));
@@ -233,7 +228,6 @@ async fn run_instance<A, E, C>(
mut receiver: mpsc::UnboundedReceiver<winit::event::Event<'_, A::Message>>,
init_command: Command<A::Message>,
window: winit::window::Window,
- should_be_visible: bool,
exit_on_close_request: bool,
) where
A: Application + 'static,
@@ -247,7 +241,6 @@ async fn run_instance<A, E, C>(
let mut clipboard = Clipboard::connect(&window);
let mut cache = user_interface::Cache::default();
let mut surface = compositor.create_surface(&window);
- let mut visible = false;
let mut state = State::new(&application, &window);
let mut viewport_version = state.viewport_version();
@@ -447,12 +440,6 @@ async fn run_instance<A, E, C>(
Ok(()) => {
debug.render_finished();
- if !visible && should_be_visible {
- window.set_visible(true);
-
- visible = true;
- }
-
// TODO: Handle animations!
// Maybe we can use `ControlFlow::WaitUntil` for this.
}
diff --git a/winit/src/settings.rs b/winit/src/settings.rs
index 7175b9ed..a04ec863 100644
--- a/winit/src/settings.rs
+++ b/winit/src/settings.rs
@@ -106,7 +106,8 @@ impl Window {
.with_decorations(self.decorations)
.with_transparent(self.transparent)
.with_window_icon(self.icon)
- .with_always_on_top(self.always_on_top);
+ .with_always_on_top(self.always_on_top)
+ .with_visible(self.visible);
if let Some(position) = conversion::position(
primary_monitor.as_ref(),