diff options
Diffstat (limited to 'core/src/keyboard')
-rw-r--r-- | core/src/keyboard/event.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/core/src/keyboard/event.rs b/core/src/keyboard/event.rs new file mode 100644 index 00000000..bc8437a8 --- /dev/null +++ b/core/src/keyboard/event.rs @@ -0,0 +1,31 @@ +use super::{KeyCode, ModifiersState}; + +/// A keyboard event. +/// +/// _**Note:** This type is largely incomplete! If you need to track +/// additional events, feel free to [open an issue] and share your use case!_ +/// +/// [open an issue]: https://github.com/hecrj/iced/issues +#[derive(Debug, Clone, Copy, PartialEq)] +pub enum Event { + /// A keyboard key was pressed. + KeyPressed { + /// The key identifier + key_code: KeyCode, + + /// The state of the modifier keys + modifiers: ModifiersState, + }, + + /// A keyboard key was released. + KeyReleased { + /// The key identifier + key_code: KeyCode, + + /// The state of the modifier keys + modifiers: ModifiersState, + }, + + /// A unicode character was received. + CharacterReceived(char), +} |