I've isolated a new bug and here is a sample code to reproduce it.
This bug prevent the detection of LShift and RShift with the command IsKeyDown() after a FileRequester() has been called.
This bug is so nasty that I've called it "The Nice Bug"
here is the code:
Code: Select all
DebugPrint("== THE NICE BUG ==")
DebugPrint("Hit some keys with or without shift to view")
DebugPrint("the shift key state.")
DebugPrint("Hit 'l' to pop up a useless file requester")
DebugPrint("that will let the bug activate.")
DebugPrint("Close the requester selecting a file and try")
DebugPrint("again to hit some keys with and without shift.")
DebugPrint("Now l-shift and r-shift are no more detected!")
DebugPrint("-------------------------------")
DebugPrint("Activate the program window and start type something...")
Function checkKeys(msg)
DebugPrint("KEYBOARD HANDLER MESSAGE:")
ForEach(msg, DebugPrint)
DebugPrint("LEFT SHIFT STATE : ", IsKeyDown("LSHIFT"))
DebugPrint("RIGHT SHIFT STATE: ", IsKeyDown("RSHIFT"))
DebugPrint("-------------------------")
If msg.key = "l"
Local f = FileRequest("Select a file to read...", "*.*", #REQ_NORMAL)
EndIf
EndFunction
InstallEventHandler( { OnKeyUp = checkKeys })
Repeat
WaitEvent()
Forever