keymap: Preserve S- modifier when C- is present

Closes #12037
This commit is contained in:
James McCoy
2020-07-04 01:10:32 -04:00
parent e76f26d4e7
commit a88bc4d95e
2 changed files with 6 additions and 1 deletions

View File

@@ -712,7 +712,8 @@ static int extract_modifiers(int key, int *modp)
{
int modifiers = *modp;
if (!(modifiers & MOD_MASK_CMD)) { // Command-key is special
// Command-key and ctrl are special
if (!(modifiers & MOD_MASK_CMD) && !(modifiers & MOD_MASK_CTRL)) {
if ((modifiers & MOD_MASK_SHIFT) && ASCII_ISALPHA(key)) {
key = TOUPPER_ASC(key);
modifiers &= ~MOD_MASK_SHIFT;