diff --git a/src/core/prefs.c b/src/core/prefs.c index 82bf58d8c..25a1524af 100644 --- a/src/core/prefs.c +++ b/src/core/prefs.c @@ -2186,6 +2186,22 @@ meta_prefs_get_keybinding_action (const char *name) : META_KEYBINDING_ACTION_NONE; } +/** + * meta_prefs_get_keybinding_label: + * Returns: (transfer full) (nullable) + */ +char * +meta_prefs_get_keybinding_label (const char *name) +{ + MetaKeyPref *pref = g_hash_table_lookup (key_bindings, name); + MetaKeyCombo *combo = NULL; + + if (pref && pref->combos) + combo = pref->combos->data; + + return combo ? meta_accelerator_name (combo->modifiers, combo->keysym) : NULL; +} + gint meta_prefs_get_mouse_button_resize (void) { diff --git a/src/meta/prefs.h b/src/meta/prefs.h index f1c9e5805..d6dd93d74 100644 --- a/src/meta/prefs.h +++ b/src/meta/prefs.h @@ -468,6 +468,9 @@ GType meta_key_binding_get_type (void); META_EXPORT MetaKeyBindingAction meta_prefs_get_keybinding_action (const char *name); +META_EXPORT +char * meta_prefs_get_keybinding_label (const char *name); + META_EXPORT gboolean meta_prefs_get_visual_bell (void);