Unify keyboard subscriptions into listen
This commit is contained in:
parent
0df5765e2f
commit
7e5b6f6802
9 changed files with 77 additions and 96 deletions
|
|
@ -65,14 +65,14 @@ impl Stopwatch {
|
|||
}
|
||||
};
|
||||
|
||||
fn handle_hotkey(
|
||||
key: keyboard::Key,
|
||||
_physical_key: keyboard::key::Physical,
|
||||
_modifiers: keyboard::Modifiers,
|
||||
) -> Option<Message> {
|
||||
fn handle_hotkey(event: keyboard::Event) -> Option<Message> {
|
||||
use keyboard::key;
|
||||
|
||||
match key.as_ref() {
|
||||
let keyboard::Event::KeyPressed { modified_key, .. } = event else {
|
||||
return None;
|
||||
};
|
||||
|
||||
match modified_key.as_ref() {
|
||||
keyboard::Key::Named(key::Named::Space) => {
|
||||
Some(Message::Toggle)
|
||||
}
|
||||
|
|
@ -81,7 +81,10 @@ impl Stopwatch {
|
|||
}
|
||||
}
|
||||
|
||||
Subscription::batch(vec![tick, keyboard::on_key_press(handle_hotkey)])
|
||||
Subscription::batch(vec![
|
||||
tick,
|
||||
keyboard::listen().filter_map(handle_hotkey),
|
||||
])
|
||||
}
|
||||
|
||||
fn view(&self) -> Element<'_, Message> {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue