Make ModTap into a tuple struct

This commit is contained in:
2023-03-27 18:35:07 +02:00
parent eb18dc9590
commit 643f75cf0a

View File

@ -26,7 +26,7 @@ impl From<Modifier> for u8 {
pub enum Button {
Mod(Modifier),
Key(Key),
ModTap { keycode: Key, modifier: Modifier },
ModTap(Key, Modifier),
NextLayer,
PrevLayer,
None,
@ -36,11 +36,28 @@ impl Display for Button {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
Button::Mod(modifier) => Debug::fmt(&modifier, f),
Button::Key(keycode) => write!(f, "{keycode:?}"),
Button::ModTap { keycode, modifier } => write!(f, "{keycode:?}/{modifier:?}"),
Button::Key(key) => write!(f, "{key:?}"),
Button::ModTap(key, modifier) => write!(f, "{key:?}/{modifier}"),
Button::NextLayer => write!(f, ""),
Button::PrevLayer => write!(f, ""),
Button::None => write!(f, "Ø"),
}
}
}
impl Display for Modifier {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
let s = match self {
Modifier::LCtrl => "",
Modifier::LShift => "",
Modifier::LAlt => "",
Modifier::LMod => "",
Modifier::RCtrl => "",
Modifier::RShift => "",
Modifier::RAlt => "",
Modifier::RMod => "",
};
write!(f, "{s}")
}
}