Re: [AD] Problem with key_shifts on Windows.

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


i know its a bit annoying, but can you modify /examples/exkeys.c to GFX_AUTODETECT_WINDOWED and try the tests again, also GFX_AUTODETECT (fullscreen) and do the tests again..

see if there are differences,  please list all the following:

- OS
- allegro version
- fullscreen or windowed and the driver (as listed on the top of exkeys when you run it) - keyb driver.. in device manager, under Keyboards.. mine says "Standard 101/102-Key or MS Natural PS/2 Keyb" - in accessability options (control panel), keyb tab.. are any of those ticked ?



control-esc and alt-esc are trapped by win32, i dont know you can do much about that.




Andrei Ellman wrote:
aj wrote:
> can these problems be demonstrated/or not in the /examples/exkeys.exe ?

I just tried exkeys.exe (only under Windows 2000) and at first, the problem does not appear. However, on closer inspection of the code, the bit where it tests the key_shifts variable is immediately preceded by a ureadkey(NULL); I tried adding readkey(NULL) to my example program, and although it now stops and waits for a regular key (letter, number, etc) to be pressed before reading key_shifts, when I press a regular key, the key_shifts variable is updated with the correct state of the shift-keys. From this, I conclude that the windows version only updates key_shifts when a regular key is pressed, but the DOS version keeps key_shifts in sync with the state of the keyboard. If exkeys.exe had a portion where it just displayed the key_shifts variable without waiting for readkey(), then the problem will be demonstrated.

A manifestation of the problem where ESC does not work when the CTRL/ALT keys are 'stuck' in exkeys.exe is where I cannot press ESC to continue unless I press some other key first.

Also, in exkeys, when I press ALT-GR, in the table of keys on the right of the screen, it says I've pressed both ALT-GR and CTRL when I've not pressed CTRL. If CTRL is held down, the values for both ALT-GR and CTRL are correct. However, if I hold down RCONTROL when I'm holding down ALT-GR, then the indicator for CTRL becomes un-set, although if I'm holding down all 3 keys at once, the indicators are at their correct values. None of this happens with the regular ALT key.

I have a UK keyboard. According to the Windows Input-locales section of the regional options applet, the input-language is "English (United Kingdom)", and the Keyboard layout / IME is "United Kingdom".

BTW. I added the following lines inside the main loop of my test program

    if(keyboard_needs_poll())
    {
        poll_keyboard();
    }

and the results are still the same - even if I get rid of the if and just call poll_keyboard()


AE.



-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/