<Primary>
é uma coisa gtk+
.
gtk+ 2.24.7
& gtk+ 3.2.1
introduziu o conceito de um modificador acelerador de agnóstico de plataforma, <Primary>
, que pode ser usado em vez de <Control>
:
a new facility is provided in Gtk+ (as of this writing it is in Git for Gtk+-2.24, and released in Gtk+-3.2.0) to use the
<Primary>
descriptor in place of<Control>
for accelerators and bindings. This will map the accelerator to Command on OSX and to Control for anything else.1
De acordo com este compromisso :
gtk: allow to specify accelerators in a platform-independent way. Introduce
<Primary>
in accelerator strings, which resolves to GDK_CONTROL_MASK on X11/Win23, and to GDK_META_MASK on quartz.
está definido (juntamente com outros aceleradores) em gtkaccelgroup.c
gtk_accelerator_name (guint accelerator_key,
GdkModifierType accelerator_mods)
{
static const gchar text_release[] = "<Release>";
static const gchar text_primary[] = "<Primary>";
static const gchar text_shift[] = "<Shift>";
static const gchar text_control[] = "<Control>";
static const gchar text_mod1[] = "<Alt>";
static const gchar text_mod2[] = "<Mod2>";
static const gchar text_mod3[] = "<Mod3>";
static const gchar text_mod4[] = "<Mod4>";
static const gchar text_mod5[] = "<Mod5>";
static const gchar text_meta[] = "<Meta>";
static const gchar text_super[] = "<Super>";
static const gchar text_hyper[] = "<Hyper>";
<Above_tab>
é uma coisa de gerenciador de janelas.
De acordo com este commit em metacity
:
We want switching between the windows of an application to be an easily accessible operation. The convenient and memorable keybinding is the key above the tab key - but the keysym for that key isn't consistent across different keyboard layouts. Add code that figures out the key from the XKB geometry and a magic keysym name "Above_Tab" that refers to this key and switch the default binding for cycle_group to Above_Tab
Veja também este commit em mutter
e arquivos de origem meta-accel-parse.c
e meta-accel-parse.h