Unify keyboard subscriptions into listen
This commit is contained in:
parent
0df5765e2f
commit
7e5b6f6802
9 changed files with 77 additions and 96 deletions
|
|
@ -58,12 +58,20 @@ impl Layout {
|
|||
fn subscription(&self) -> Subscription<Message> {
|
||||
use keyboard::key;
|
||||
|
||||
keyboard::on_key_release(|key, _physical_key, _modifiers| match key {
|
||||
keyboard::Key::Named(key::Named::ArrowLeft) => {
|
||||
Some(Message::Previous)
|
||||
keyboard::listen().filter_map(|event| {
|
||||
let keyboard::Event::KeyPressed { modified_key, .. } = event else {
|
||||
return None;
|
||||
};
|
||||
|
||||
match modified_key {
|
||||
keyboard::Key::Named(key::Named::ArrowLeft) => {
|
||||
Some(Message::Previous)
|
||||
}
|
||||
keyboard::Key::Named(key::Named::ArrowRight) => {
|
||||
Some(Message::Next)
|
||||
}
|
||||
_ => None,
|
||||
}
|
||||
keyboard::Key::Named(key::Named::ArrowRight) => Some(Message::Next),
|
||||
_ => None,
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue