rename enum and vec queue

macos-click-through
vzex 3 years ago committed by Keith Simmons
parent ccb28dda00
commit bf1ea9c6e2

@ -8,9 +8,9 @@ use crate::event_aggregator::EVENT_AGGREGATOR;
use crate::settings::SETTINGS;
use crate::window::KeyboardSettings;
enum KeyOrIme {
Key(KeyEvent),
Ime(String),
enum InputEvent {
KeyEvent(KeyEvent),
ImeInput(String),
}
pub struct KeyboardManager {
shift: bool,
@ -18,7 +18,7 @@ pub struct KeyboardManager {
alt: bool,
logo: bool,
ignore_input_this_frame: bool,
queued_key_or_ime_events: Vec<KeyOrIme>,
queued_input_events: Vec<InputEvent>,
}
impl KeyboardManager {
@ -29,7 +29,7 @@ impl KeyboardManager {
alt: false,
logo: false,
ignore_input_this_frame: false,
queued_key_or_ime_events: Vec::new(),
queued_input_events: Vec::new(),
}
}
@ -52,15 +52,15 @@ impl KeyboardManager {
} => {
// Store the event so that we can ignore it properly if the window was just
// focused.
self.queued_key_or_ime_events
.push(KeyOrIme::Key(key_event.clone()));
self.queued_input_events
.push(InputEvent::KeyEvent(key_event.clone()));
}
Event::WindowEvent {
event: WindowEvent::ReceivedImeText(string),
..
} => {
self.queued_key_or_ime_events
.push(KeyOrIme::Ime(string.to_string()));
self.queued_input_events
.push(InputEvent::ImeInput(string.to_string()));
}
Event::WindowEvent {
event: WindowEvent::ModifiersChanged(modifiers),
@ -79,9 +79,9 @@ impl KeyboardManager {
if !self.should_ignore_input(&settings) {
// If we have a keyboard event this frame
for key_or_ime_event in self.queued_key_or_ime_events.iter() {
for key_or_ime_event in self.queued_input_events.iter() {
match key_or_ime_event {
KeyOrIme::Key(key_event) => {
InputEvent::KeyEvent(key_event) => {
// And a key was pressed
if key_event.state == ElementState::Pressed {
if let Some(keybinding) = self.maybe_get_keybinding(key_event) {
@ -90,7 +90,7 @@ impl KeyboardManager {
}
}
}
KeyOrIme::Ime(raw_input) => {
InputEvent::ImeInput(raw_input) => {
EVENT_AGGREGATOR
.send(UiCommand::Serial(SerialCommand::Keyboard(raw_input.to_string())));
}
@ -101,7 +101,7 @@ impl KeyboardManager {
// Regardless of whether this was a valid keyboard input or not, rest ignoring and
// whatever event was queued.
self.ignore_input_this_frame = false;
self.queued_key_or_ime_events.clear();
self.queued_input_events.clear();
}
_ => {}
}

Loading…
Cancel
Save