use super::binding::{KeyCode, Modifiers, MouseButton};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum ButtonState {
Pressed,
Released,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum ScrollUnits {
Lines,
Pixels,
}
#[derive(Debug, Clone)]
pub enum ViewportEvent {
PointerMoved {
position: glam::Vec2,
},
MouseButton {
button: MouseButton,
state: ButtonState,
},
Wheel {
delta: glam::Vec2,
units: ScrollUnits,
},
Key {
key: KeyCode,
state: ButtonState,
repeat: bool,
},
ModifiersChanged(Modifiers),
PointerLeft,
FocusLost,
}