Batch event processing in UserInterface::update

This commit is contained in:
Héctor Ramón Jiménez 2020-11-12 02:51:26 +01:00
parent 69c50c8511
commit bf2d2561b8
4 changed files with 95 additions and 87 deletions

View file

@ -122,17 +122,16 @@ where
debug.event_processing_started();
let mut messages = Vec::new();
for event in self.queued_events.drain(..) {
let _ = user_interface.update(
event,
cursor_position,
clipboard,
renderer,
&mut messages,
);
}
let _ = user_interface.update(
&self.queued_events,
cursor_position,
clipboard,
renderer,
&mut messages,
);
messages.extend(self.queued_messages.drain(..));
self.queued_events.clear();
debug.event_processing_finished();
if messages.is_empty() {