Author: bgbnbigben
Date: 2011-03-26 00:37:57 -0700 (Sat, 26 Mar 2011)
New Revision: 8535
Log:
Fixed #2527, regarding WIN32's lack of distinction between right and left shift 
keys

Modified:
   trunk/src/win32/run.cxx

Modified: trunk/src/win32/run.cxx
===================================================================
--- trunk/src/win32/run.cxx     2011-03-25 23:17:16 UTC (rev 8534)
+++ trunk/src/win32/run.cxx     2011-03-26 07:37:57 UTC (rev 8535)
@@ -1435,6 +1435,14 @@
     }
     for (i = 0; i < 256; i++) if (!extendedlut[i]) extendedlut[i] = vklut[i];
   }
+  static bool rShiftWasOn = false;
+  if (HIWORD(GetKeyState(VK_RSHIFT)) && !rShiftWasOn) {
+    rShiftWasOn = true;
+    lParam |= 1 << 24;
+  } else if (rShiftWasOn) {
+    rShiftWasOn = false;
+    lParam |= 1 << 24;
+  }
   if (lParam&(1<<24)) {
     if (!(lParam&(1<<31))) fl_last_was_extended = true;
     return extendedlut[vk];

_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit

Reply via email to