diff --git a/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx index 48b74f0d7..e59027c77 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx +++ b/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx @@ -334,7 +334,8 @@ int Fl_WinAPI_Screen_Driver::compose(int &del) { unsigned char ascii = (unsigned char)Fl::e_text[0]; /* WARNING: The [AltGr] key on international keyboards falsely set FL_CTRL! */ /* More investigation needed. */ - int condition = (Fl::e_state & (FL_ALT | FL_META /* | FL_CTRL */ )) && !(ascii & 128) ; + int condition = (Fl::e_state & (FL_ALT | FL_META | FL_CTRL)) && + !(GetAsyncKeyState(VK_MENU) >> 15) && !(ascii & 128); if (condition) { // this stuff is to be treated as a function key del = 0; return 0;