feat(shortcuts): runtime configurable keyboard shortcuts

This commit is contained in:
Michael Aaron Murphy 2024-06-06 16:57:08 +02:00
parent 6f051b2456
commit cf322fdb5e
No known key found for this signature in database
GPG key ID: B2732D4240C9212C
47 changed files with 3305 additions and 416 deletions

View file

@ -43,6 +43,11 @@ pub trait Page<Message: 'static>: Downcast {
None
}
/// Set a custom page header
fn header(&self) -> Option<Element<'_, Message>> {
None
}
/// Display an inner app dialog for the page.
fn dialog(&self) -> Option<Element<'_, Message>> {
None
@ -116,6 +121,7 @@ impl Info {
#[macro_export]
macro_rules! update {
($binder:expr, $message:expr, $page:ty) => {{
#[allow(unused_must_use)]
if let Some(page) = $binder.page_mut::<$page>() {
page.update($message);
}