From a0d88e0774904168914d4e755499303ebf1fb818 Mon Sep 17 00:00:00 2001 From: Imbris Date: Mon, 13 Jul 2020 00:51:39 -0400 Subject: [PATCH] Fix mistake with event processing --- voxygen/src/ui/event.rs | 2 +- voxygen/src/window.rs | 14 ++++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/voxygen/src/ui/event.rs b/voxygen/src/ui/event.rs index f44cb6ed91..e5a30b62cf 100644 --- a/voxygen/src/ui/event.rs +++ b/voxygen/src/ui/event.rs @@ -1,7 +1,7 @@ use conrod_core::{event::Input, input::Button}; use vek::*; -#[derive(Clone)] +#[derive(Clone, Debug)] pub struct Event(pub Input); impl Event { pub fn try_from( diff --git a/voxygen/src/window.rs b/voxygen/src/window.rs index 45ff254bf9..b23efed7b5 100644 --- a/voxygen/src/window.rs +++ b/voxygen/src/window.rs @@ -241,7 +241,7 @@ pub enum AnalogGameInput { } /// Represents an incoming event from the window. -#[derive(Clone)] +#[derive(Clone, Debug)] pub enum Event { /// The window has been requested to close. Close, @@ -610,9 +610,7 @@ impl Window { #[allow(clippy::match_bool)] // TODO: Pending review in #587 pub fn fetch_events(&mut self) -> Vec { - let mut events = std::mem::take(&mut self.events); - - events.append(&mut self.supplement_events); + self.events.append(&mut self.supplement_events); // Refresh ui size (used when changing playstates) if self.needs_refresh_resize { @@ -622,9 +620,9 @@ impl Window { } // Receive any messages sent through the message channel - self.message_receiver - .try_iter() - .for_each(|message| events.push(Event::ScreenshotMessage(message))); + for message in self.message_receiver.try_iter() { + self.events.push(Event::ScreenshotMessage(message)) + } if let Some(gilrs) = &mut self.gilrs { while let Some(event) = gilrs.next_event() { @@ -779,7 +777,7 @@ impl Window { } } - let mut events = std::mem::replace(&mut self.events, Vec::new()); + let mut events = std::mem::take(&mut self.events); // Mouse emulation for the menus, to be removed when a proper menu navigation // system is available if !self.cursor_grabbed {