summaryrefslogtreecommitdiffstats
path: root/winit
diff options
context:
space:
mode:
authorLibravatar Kai Mast <kaimast@cs.wisc.edu>2022-01-27 14:52:53 -0600
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-01-28 21:37:16 +0700
commitf39147d3822037955dc27c38cea873bb65c594e3 (patch)
treea1d3cd55110d710d4dbb9beebe74b461da252b91 /winit
parentf3fb00f838ff94c7dd38d6ffac1a159ba460398c (diff)
downloadiced-f39147d3822037955dc27c38cea873bb65c594e3.tar.gz
iced-f39147d3822037955dc27c38cea873bb65c594e3.tar.bz2
iced-f39147d3822037955dc27c38cea873bb65c594e3.zip
Always use event_loop.run
Diffstat (limited to 'winit')
-rw-r--r--winit/src/application.rs107
1 files changed, 30 insertions, 77 deletions
diff --git a/winit/src/application.rs b/winit/src/application.rs
index a3715b04..53b7a6c7 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -115,15 +115,10 @@ where
use futures::task;
use futures::Future;
use winit::event_loop::EventLoop;
- #[cfg(not(target_arch = "wasm32"))]
- use winit::platform::run_return::EventLoopExtRunReturn;
let mut debug = Debug::new();
debug.startup_started();
- #[cfg(not(target_arch = "wasm32"))]
- let mut event_loop = EventLoop::with_user_event();
- #[cfg(target_arch = "wasm32")]
let event_loop = EventLoop::with_user_event();
let mut proxy = event_loop.create_proxy();
@@ -183,81 +178,39 @@ where
let mut context = task::Context::from_waker(task::noop_waker_ref());
- #[cfg(not(target_arch = "wasm32"))]
- {
- event_loop.run_return(move |event, _, control_flow| {
- use winit::event_loop::ControlFlow;
+ event_loop.run(move |event, _, control_flow| {
+ use winit::event_loop::ControlFlow;
- if let ControlFlow::Exit = control_flow {
- return;
- }
-
- let event = match event {
- winit::event::Event::WindowEvent {
- event:
- winit::event::WindowEvent::ScaleFactorChanged {
- new_inner_size,
- ..
- },
- window_id,
- } => Some(winit::event::Event::WindowEvent {
- event: winit::event::WindowEvent::Resized(*new_inner_size),
- window_id,
- }),
- _ => event.to_static(),
- };
-
- if let Some(event) = event {
- sender.start_send(event).expect("Send event");
-
- let poll = instance.as_mut().poll(&mut context);
-
- *control_flow = match poll {
- task::Poll::Pending => ControlFlow::Wait,
- task::Poll::Ready(_) => ControlFlow::Exit,
- };
- }
- });
-
- Ok(())
- }
-
- #[cfg(target_arch = "wasm32")]
- {
- event_loop.run(move |event, _, control_flow| {
- use winit::event_loop::ControlFlow;
-
- if let ControlFlow::Exit = control_flow {
- return;
- }
+ if let ControlFlow::Exit = control_flow {
+ return;
+ }
- let event = match event {
- winit::event::Event::WindowEvent {
- event:
- winit::event::WindowEvent::ScaleFactorChanged {
- new_inner_size,
- ..
- },
- window_id,
- } => Some(winit::event::Event::WindowEvent {
- event: winit::event::WindowEvent::Resized(*new_inner_size),
- window_id,
- }),
- _ => event.to_static(),
+ let event = match event {
+ winit::event::Event::WindowEvent {
+ event:
+ winit::event::WindowEvent::ScaleFactorChanged {
+ new_inner_size,
+ ..
+ },
+ window_id,
+ } => Some(winit::event::Event::WindowEvent {
+ event: winit::event::WindowEvent::Resized(*new_inner_size),
+ window_id,
+ }),
+ _ => event.to_static(),
+ };
+
+ if let Some(event) = event {
+ sender.start_send(event).expect("Send event");
+
+ let poll = instance.as_mut().poll(&mut context);
+
+ *control_flow = match poll {
+ task::Poll::Pending => ControlFlow::Wait,
+ task::Poll::Ready(_) => ControlFlow::Exit,
};
-
- if let Some(event) = event {
- sender.start_send(event).expect("Send event");
-
- let poll = instance.as_mut().poll(&mut context);
-
- *control_flow = match poll {
- task::Poll::Pending => ControlFlow::Wait,
- task::Poll::Ready(_) => ControlFlow::Exit,
- };
- }
- });
- }
+ }
+ });
}
async fn run_instance<A, E, C>(