Commit Graph

68 Commits

Author SHA1 Message Date
Vitaliy Margolen 8dac79d38b dinput: Add few special cases for key mappings. 2009-03-03 12:35:14 +01:00
Vitaliy Margolen 74f2eccc90 dinput: Let each device decide which hook event to skip.
Some programs acquire mouse in exclusive and keyboard in non-exclusive mode.
2009-02-23 12:19:25 +01:00
Alexandre Julliard fffcd23cce dinput: Fix pointer cast warnings on 64-bit. 2009-01-05 12:39:44 +01:00
Michael Stefaniuc bb2d8577c3 dinput: Remove superfluous backslashes at end of lines. 2008-10-16 11:28:53 +02:00
Vitaliy Margolen d939367ac8 dinput: Implement DIPROP_KEYNAME property for keyboard device.
Based on patch from Sergey Khodych.
2008-09-15 13:23:13 +02:00
Aric Stewart 304ff3c728 dinput: The DIK_ keycode is not the same as the scancode.
It is mapped with the keyboard mapping to the resulting character so
the key 'A' is DIK_A nomatter what its scancode or vkey would be. This
is relevant to Japanese keymapping where the '@' key is in the '['
location the scancode for both is 0x22 but dinput generates DIK_AT in
japanese and DIK_LBRACKET in us_qwerty.
2008-08-20 13:58:25 +02:00
Vitaliy Margolen aa0188cd6f dinput: Zero the out buffer. 2008-07-28 12:16:34 +02:00
Vitaliy Margolen e850b4f13d dinput: Convert keyboard buffer from internal data format to user data format. 2008-05-28 19:31:59 +02:00
Vitaliy Margolen 4a2f7497ab dinput: Explicitly set extended key flag for Right Shift. 2008-04-28 13:27:51 +02:00
Austin English 06d429d6b6 Spelling fixes. 2008-03-27 20:48:19 +01:00
Rob Shearman fe75a8c616 dinput: Fix character count passed to GetKeyNameTextW in SysKeyboardWImpl_GetObjectInfo. 2008-02-25 13:31:34 +01:00
Vitaliy Margolen 8f28d4369e dinput: Rename set_dinput_hook and call it from the base class.
Since keyboard's acquire and unacquire don't do anything special just call
the base class.
2007-07-09 14:31:38 +02:00
Vitaliy Margolen deb74efc04 dinput: Handle multiple keyboard and mouse devices. 2007-07-09 14:27:25 +02:00
Vitaliy Margolen 6d6e4f4ea2 dinput: Export Mouse and Keyboard GUIDs. 2007-07-09 14:25:47 +02:00
Vitaliy Margolen b9e8284a7d dinput: Move key state array into object. 2007-06-29 12:31:45 +02:00
Vitaliy Margolen fb1082ae73 dinput: Combine all Release functionality into base class. 2007-06-28 12:16:11 +02:00
Vitaliy Margolen d2966c2dfb dinput: Move parent dinput reference into base class. 2007-06-28 12:16:11 +02:00
Vitaliy Margolen 6a8bf96d73 dinput: Make sure to unacquire device before freeing it. 2007-06-04 13:10:04 +02:00
Dmitry Timoshkov 3c9e7a7f33 wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility. 2007-05-25 20:37:56 +02:00
Jan Zerebecki 52a630a3a8 dinput: Add DebugInfo to critical sections. 2007-03-08 22:21:43 +01:00
Andrew Talbot e744c3a5b1 dinput: Constify some variables. 2007-02-13 12:08:26 +01:00
Vitaliy Margolen dbd2112eee dinput: Internal data format is not const anymore. 2007-01-11 11:49:12 +01:00
Vitaliy Margolen af71538d33 dinput: Remove duplicate Keyboard->Poll it is the same as base class. 2007-01-10 12:23:18 +01:00
Vitaliy Margolen 4b33fd691a dinput: Set event from queue_event, simplifying code a bit. 2007-01-08 21:13:40 +01:00
Vitaliy Margolen 8e8b4f03b0 dinput: Use proper offset when queuing keyboard events. 2007-01-08 21:13:35 +01:00
Vitaliy Margolen b223b021a5 dinput: Fix memory leak. 2007-01-06 11:40:46 +01:00
Vitaliy Margolen 20ba784aac dinput: Move keyboard to using new GetObjectInfo. 2007-01-04 09:57:11 +01:00
Andrew Talbot e946ce6b38 dinput: Declare some functions static. 2007-01-04 09:53:58 +01:00
Vitaliy Margolen 263d5ce171 dinput: Move keyboard to using new EnumObjects from base class. 2006-12-29 20:54:38 +01:00
Vitaliy Margolen b22ff8018a dinput: Remove MsgWaitForMultipleObjects calls. 2006-12-28 12:22:29 +01:00
Vitaliy Margolen ce5fb9bb29 dinput: AddRef and Release parent DirectInput class. 2006-12-24 13:07:15 +01:00
Vitaliy Margolen 1db55d2511 dinput: Don't return non existent keys. 2006-12-18 12:00:41 +01:00
Vitaliy Margolen 6246fa62f9 dinput: Remove redundant parameter. 2006-12-12 20:24:10 +01:00
Vitaliy Margolen d5b57f3904 dinput: Move mouse & keyboard user data format to base class. 2006-12-12 20:23:57 +01:00
Vitaliy Margolen 564ad7da8c dinput: Move keyboard event queue into base device class.
This removes [Get|Set]Property and GetDeviceData.
2006-12-05 11:32:38 +01:00
Vitaliy Margolen 429c8ac948 dinput: Implement Poll for keyboard. 2006-12-04 12:34:08 +01:00
Vitaliy Margolen 0da0486cc3 dinput: Move critical section to the base device class. 2006-12-04 12:33:47 +01:00
Vitaliy Margolen f7eacd64d1 dinput: Move acquired flag to the base device class. Add tests. 2006-12-04 12:33:35 +01:00
Vitaliy Margolen af34ef12ba dinput: Move SetEventNotification and associated event into base class. 2006-10-17 12:36:00 +02:00
Vitaliy Margolen 7d838d9e6f dinput: Use dinput device as a base class for keyboard, mouse and joystick. 2006-10-17 12:35:39 +02:00
Vitaliy Margolen 7123f3e80e dinput: Win64 printf format warning fixes. 2006-10-09 12:53:41 +02:00
Vitaliy Margolen 6bd7451ece dinput: Keyboard: Use the same event queue mechanism as mouse. 2006-07-28 12:32:08 +02:00
Vitaliy Margolen 83bda8e6d4 dinput: Unacquire correct device. 2006-07-17 13:51:31 +02:00
Vitaliy Margolen 13ce1a4543 dinput: Ignore repeated key events. 2006-07-17 13:51:20 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Vitaliy Margolen bc1440699c dinput: Keyboard should be acquired before calling GetDeviceState. 2006-04-03 11:39:28 +02:00
Vitaliy Margolen e66e34ef7b dinput: Create single thread for mouse and keyboard hook.
Put keyboard & mouse hook callbacks into separate thread.
Move few global variables into object. Delete no longer used crit section.
For hooks to work properly hook callback have to be in a thread
with message loop. Some games create separate threads just to handle
mouse and/or keyboard events that do not have message loop.
2006-03-21 11:27:49 +01:00
Alexandre Julliard f8ee161a1b Fixed some traces to use the right printf format and avoid typecasts. 2005-09-12 10:30:05 +00:00
Alexandre Julliard 20a1a203c6 Use a more portable scheme for storing the name of a critical
section.
2005-09-09 10:19:44 +00:00
Mike McCormack 50a6d970f5 gcc 4.0 warning fixes for Interlocked* functions. 2005-08-03 11:03:05 +00:00