fractal/utils/
key_bindings.rsuse gtk::{gdk, subclass::prelude::*};
const ACTIVATE_KEYS: &[gdk::Key] = &[
gdk::Key::space,
gdk::Key::KP_Space,
gdk::Key::Return,
gdk::Key::ISO_Enter,
gdk::Key::KP_Enter,
];
pub(crate) fn add_activate_bindings<T: WidgetClassExt>(klass: &mut T, action: &str) {
for key in ACTIVATE_KEYS {
klass.add_binding_action(*key, gdk::ModifierType::empty(), action);
}
}
const CONTEXT_MENU_BINDINGS: &[(gdk::Key, gdk::ModifierType)] = &[
(gdk::Key::F10, gdk::ModifierType::SHIFT_MASK),
(gdk::Key::Menu, gdk::ModifierType::empty()),
];
pub(crate) fn add_context_menu_bindings<T: WidgetClassExt>(klass: &mut T, action: &str) {
for (key, modifier) in CONTEXT_MENU_BINDINGS {
klass.add_binding_action(*key, *modifier, action);
}
}