diff options
author | Rui Matos <tiagomatos@gmail.com> | 2012-10-08 14:53:02 +0200 |
---|---|---|
committer | Rui Matos <tiagomatos@gmail.com> | 2012-10-08 17:32:05 +0200 |
commit | ca32b782eda8b636e604119edc49b7da785ca40d (patch) | |
tree | 92299b73111140acf8aec65b248941d65303d8b9 /plugins/keyboard/gsd-input-sources-switcher.c | |
parent | 5a9f9183a00fdd4d5c462fa6ef94b57969d0a258 (diff) | |
download | gnome-settings-daemon-ca32b782eda8b636e604119edc49b7da785ca40d.tar.gz |
keyboard: Add more modifiers only combinations
https://bugzilla.gnome.org/show_bug.cgi?id=685718
Diffstat (limited to 'plugins/keyboard/gsd-input-sources-switcher.c')
-rw-r--r-- | plugins/keyboard/gsd-input-sources-switcher.c | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/plugins/keyboard/gsd-input-sources-switcher.c b/plugins/keyboard/gsd-input-sources-switcher.c index 75b01110..fd891cc8 100644 --- a/plugins/keyboard/gsd-input-sources-switcher.c +++ b/plugins/keyboard/gsd-input-sources-switcher.c @@ -164,6 +164,94 @@ init_keys (void) the_keys[1].keysym = GDK_KEY_Control_R; the_keys[1].state = GDK_SHIFT_MASK; break; + + case GSD_INPUT_SOURCES_SWITCHER_SHIFT_L_SHIFT_R: + n_keys = 2; + the_keys = g_new0 (Key, n_keys); + + the_keys[0].keysym = GDK_KEY_Shift_L; + the_keys[0].state = GDK_SHIFT_MASK; + the_keys[1].keysym = GDK_KEY_Shift_R; + the_keys[1].state = GDK_SHIFT_MASK; + break; + + case GSD_INPUT_SOURCES_SWITCHER_ALT_L_ALT_R: + n_keys = 4; + the_keys = g_new0 (Key, n_keys); + + the_keys[0].keysym = GDK_KEY_Alt_L; + the_keys[0].state = GDK_MOD1_MASK; + the_keys[1].keysym = GDK_KEY_Alt_R; + the_keys[1].state = GDK_MOD1_MASK; + the_keys[2].keysym = GDK_KEY_Alt_L; + the_keys[2].state = GDK_MOD5_MASK; + the_keys[3].keysym = GDK_KEY_ISO_Level3_Shift; + the_keys[3].state = GDK_MOD1_MASK; + break; + + case GSD_INPUT_SOURCES_SWITCHER_CTRL_L_CTRL_R: + n_keys = 2; + the_keys = g_new0 (Key, n_keys); + + the_keys[0].keysym = GDK_KEY_Control_L; + the_keys[0].state = GDK_CONTROL_MASK; + the_keys[1].keysym = GDK_KEY_Control_R; + the_keys[1].state = GDK_CONTROL_MASK; + break; + + case GSD_INPUT_SOURCES_SWITCHER_ALT_SHIFT: + n_keys = 7; + the_keys = g_new0 (Key, n_keys); + + the_keys[0].keysym = GDK_KEY_Shift_L; + the_keys[0].state = GDK_MOD1_MASK; + the_keys[1].keysym = GDK_KEY_Shift_L; + the_keys[1].state = GDK_MOD5_MASK; + the_keys[2].keysym = GDK_KEY_Shift_R; + the_keys[2].state = GDK_MOD1_MASK; + the_keys[3].keysym = GDK_KEY_Shift_R; + the_keys[3].state = GDK_MOD5_MASK; + the_keys[4].keysym = GDK_KEY_Alt_L; + the_keys[4].state = GDK_SHIFT_MASK; + the_keys[5].keysym = GDK_KEY_Alt_R; + the_keys[5].state = GDK_SHIFT_MASK; + the_keys[6].keysym = GDK_KEY_ISO_Level3_Shift; + the_keys[6].state = GDK_SHIFT_MASK; + break; + + case GSD_INPUT_SOURCES_SWITCHER_CTRL_SHIFT: + n_keys = 4; + the_keys = g_new0 (Key, n_keys); + + the_keys[0].keysym = GDK_KEY_Shift_L; + the_keys[0].state = GDK_CONTROL_MASK; + the_keys[1].keysym = GDK_KEY_Shift_R; + the_keys[1].state = GDK_CONTROL_MASK; + the_keys[2].keysym = GDK_KEY_Control_L; + the_keys[2].state = GDK_SHIFT_MASK; + the_keys[3].keysym = GDK_KEY_Control_R; + the_keys[3].state = GDK_SHIFT_MASK; + break; + + case GSD_INPUT_SOURCES_SWITCHER_ALT_CTRL: + n_keys = 7; + the_keys = g_new0 (Key, n_keys); + + the_keys[0].keysym = GDK_KEY_Control_L; + the_keys[0].state = GDK_MOD1_MASK; + the_keys[1].keysym = GDK_KEY_Control_L; + the_keys[1].state = GDK_MOD5_MASK; + the_keys[2].keysym = GDK_KEY_Control_R; + the_keys[2].state = GDK_MOD1_MASK; + the_keys[3].keysym = GDK_KEY_Control_R; + the_keys[3].state = GDK_MOD5_MASK; + the_keys[4].keysym = GDK_KEY_Alt_L; + the_keys[4].state = GDK_CONTROL_MASK; + the_keys[5].keysym = GDK_KEY_Alt_R; + the_keys[5].state = GDK_CONTROL_MASK; + the_keys[6].keysym = GDK_KEY_ISO_Level3_Shift; + the_keys[6].state = GDK_CONTROL_MASK; + break; } g_object_unref (settings); |