summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui_w32.c7
-rw-r--r--src/version.c2
2 files changed, 9 insertions, 0 deletions
diff --git a/src/gui_w32.c b/src/gui_w32.c
index 5e8fbe2a80..2dc54bf5f8 100644
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -852,6 +852,13 @@ get_active_modifiers(void)
modifiers |= MOD_MASK_ALT;
if ((modifiers & MOD_MASK_CTRL) && (GetKeyState(VK_RMENU) & 0x8000))
modifiers &= ~MOD_MASK_CTRL;
+ // Add RightALT only if it is hold alone (without Ctrl), because if AltGr
+ // is pressed, Windows claims that Ctrl is hold as well. That way we can
+ // recognize Right-ALT alone and be sure that not AltGr is hold.
+ if (!(GetKeyState(VK_CONTROL) & 0x8000)
+ && (GetKeyState(VK_RMENU) & 0x8000)
+ && !(GetKeyState(VK_LMENU) & 0x8000)) // seems AltGr has both set
+ modifiers |= MOD_MASK_ALT;
return modifiers;
}
diff --git a/src/version.c b/src/version.c
index 391ae4defb..c6c01976c7 100644
--- a/src/version.c
+++ b/src/version.c
@@ -700,6 +700,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 686,
+/**/
685,
/**/
684,