thefiddler
3fee0bd8d0
[Win] Raw input parsing moved to input drivers
2014-09-11 12:51:48 +02:00
Stefanos A
cec48ab20a
[Win] Completed raw input IJoystickDriver2
...
For improved safety, we are now using managed memory buffers instead of
stack allocations and pointers.
2014-09-11 12:51:47 +02:00
Stefanos A
2c197f09e1
[Win] Cleanup Raw Input HID usage/pages
2014-09-11 12:51:46 +02:00
Stefanos A
18c02db7b0
[Win] Initial implementation of WinRawJoystick
2014-09-11 12:51:46 +02:00
thefiddler
d968281a1b
[OpenTK] Refactor keyboard and mouse handling
...
A lot of duplicated code is now moved to NativeWindowBase and
LegacyInputDriver.
2014-05-04 17:05:08 +02:00
thefiddler
58e41a2b97
[Win] Replaced KeyMap dictionary with switch
...
This reduces the amount of allocations on the startup path.
2014-04-25 14:13:55 +02:00
Stefanos A.
1b3b510376
[Win] Check registry keys before accessing
...
Fixes crashes when using OpenTK over the Remote Desktop Client for Mac
(version 2010).
2014-01-09 00:10:41 +01:00
Stefanos A
30e42bb6dd
[DllImport] registry methods when the Microsoft.Win32 namespace is not
...
available (untested).
2013-10-12 05:15:46 +02:00
Stefanos A.
b3a0b78454
Use locale-independent scancodes
...
This significantly improves the usability of keyboard input, by allowing
a common input scheme to be used on different keyboard layouts. Text
input will be facilitated through a new API.
2013-10-03 20:53:34 +02:00
Tom Edwards
6c35e8ef24
Merge remote-tracking branch 'origin/ScanCodeKeyboardBranch'
2013-02-17 14:58:16 +00:00
Jacob Hauberg Hansen
af74d97903
Fix NullPointerException on Windows 8.
2013-01-26 14:27:26 +01:00
Andy Korth
0f64af130a
Committing artfunkel patch for scan codes
2013-01-24 15:48:01 -06:00
Andy Korth
fa422dca2a
Fix Windows 8 Keyboard, OpenTK issue 3198
2013-01-14 13:09:55 -06:00
the_fiddler
26075f0243
Do not try to register device when device description is empty.
2010-12-03 12:29:01 +00:00
the_fiddler
e0736a69bc
Added workaround for zoom-in/zoom-out keys on Microsoft Digital 3000 keyboard. These keys report 0 as a device id, but no such device exists.
2010-11-09 15:19:58 +00:00
the_fiddler
c2d6f0c091
Refactored input drivers in terms of WinInputBase to reduce code duplication.
2010-11-08 21:43:29 +00:00
the_fiddler
2c5e7220c3
Implemented KeyboardState.IsConnected property.
...
Implemented WinRawKeyboard.RefreshDevices().
General code clean-up and beautification.
2010-10-29 11:46:57 +00:00
the_fiddler
2934c9d004
Decoupled new driver API from old public interface.
...
WinRawMouse can now detect mouse disconnection/connection events.
2010-10-29 11:27:40 +00:00
the_fiddler
c1043d1693
Do not modify device state during the GetState() call. Fixes intermittent crashes.
2010-10-28 13:00:21 +00:00
the_fiddler
0044e4442d
Modified GetState() to return the combined state for all mouse/keyboard devices.
2010-10-28 11:10:57 +00:00
the_fiddler
1bef154d36
Implemented WinRawKeyboard input driver.
2010-10-28 08:42:38 +00:00
the_fiddler
2430f82ff7
Implemented raw keyboard input for Windows. Improved the interface for receiving input. Moved raw input window to its own thread.
2010-10-22 14:57:06 +00:00
the_fiddler
e801660ff7
* Source/OpenTK/OpenTK.csproj:
...
* Source/OpenTK/Input/Keyboard.cs:
* Source/OpenTK/Input/InputDriver.cs:
* Source/OpenTK/Input/KeyboardState.cs:
* Source/OpenTK/Input/IKeyboardDriver.cs:
* Source/OpenTK/Platform/X11/X11Input.cs:
* Source/OpenTK/Platform/X11/Functions.cs:
* Source/OpenTK/Platform/X11/X11Factory.cs:
* Source/OpenTK/Platform/Windows/WMInput.cs:
* Source/OpenTK/Platform/X11/X11Keyboard.cs:
* Source/OpenTK/Platform/MacOS/CarbonInput.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/Windows/WinRawInput.cs:
* Source/OpenTK/Platform/Windows/WinRawKeyboard.cs: Added initial
OpenTK.Input.Keyboard implementation for X11.
2010-10-20 14:33:23 +00:00
the_fiddler
69b17fa43f
Normalize line endings and set the mime-type=text/plain and eol-style=native properties on all files.
2009-02-22 10:43:35 +00:00
the_fiddler
9a50727029
Moved KeyMap from WinRawKeyboard to its own class.
2008-01-06 02:27:03 +00:00
the_fiddler
8eb779558c
Disabled support for multiple devices to minimize memory and CPU usage.
2007-10-15 11:02:14 +00:00
the_fiddler
ae1c9d8642
Updated to reflect renames (Windows.API -> Windows.Functions, Keyboard/Mouse -> Keyboard-/MouseDevice)
2007-09-26 11:57:32 +00:00
the_fiddler
52a6690150
Removed Move event from IMouse (too inefficient). Polled input only.
...
S04 now polls for the mouse position.
Keyboard now handles events generated from code and not from physical devices.
2007-09-21 22:49:42 +00:00
the_fiddler
66b046a58c
Added KeyRepeat to IKeyboard.
...
Multiple keyboards correctly reported under Windows (Raw input driver).
Corrected some key maps in X11 and Windows Raw keyboards.
2007-09-21 20:03:53 +00:00
the_fiddler
b89d2231d4
Changed API.* to * in order to reflect changes in OpenTK.Platform.Windows.API.
...
Improved Disposable pattern implementation in most Windows classes.
2007-09-02 00:16:22 +00:00
the_fiddler
794ba2fa41
Corrected a couple of compiler warnings.
2007-08-31 16:10:38 +00:00
the_fiddler
6ae06d82bd
Added IDisposable to all input drivers.
...
Updated Cube.cs to use System.Drawing.Colors.
Improved DefRawInputProc in windows API.cs
2007-08-22 00:30:16 +00:00
the_fiddler
f30e7f6df8
Major updates to shutdown sequence (should correct bug where GameWindow hangs on exit). Enhanced the IGameWindow interface by adding the Keyboard and IsExiting properties.
...
Fully implemented keyboard on X11. Renamed some OpenTK keys.
2007-08-06 09:22:04 +00:00
the_fiddler
94e738bb9a
Enahnaced X11 keymap. Renamed some OpenTK keys.
2007-08-06 00:08:51 +00:00
the_fiddler
0531e20287
Added preliminary key handling to X11Keyboard.
...
Removed stupid hack in WinRawKeyboard.
2007-08-05 18:10:08 +00:00
the_fiddler
40add1aaef
Renamed OpenTK.Input.Keys to OpenTK.Input.Key.
...
Added keymap to X11/X11Keyboard.cs (not complete).
Added GetKeyboardMapping(), DisplayFlags() and XKey enum to OpenTK.Platform.X11.API.cs
2007-08-05 16:04:39 +00:00
the_fiddler
73e0509a06
Updated Windows.Api to be CLS-Compliant.
2007-08-05 00:09:42 +00:00
the_fiddler
6812739418
Renamed InputDevices.cs to InputDriver.cs.
...
Added IMouseDriver.cs and WinRawMouse.
2007-08-04 13:28:16 +00:00
the_fiddler
59b503b3c3
Bumped version numbers.
...
WinRawInput now correctly subclasses WinGLNative or WinGLControl. WinRawKeyboard now correctly responds to events.
Removed T10_GLSL_Cube.cs which was erroneously moved outside the Examples/Tutorial directory.
Updated INativeWindow, IGameWindow and IGLControl interfaces.
Updated examples to use the new GameWindow interface.
Added documentation to GameWindow.
Improved GameWindow error handling. More defensive programming.
2007-08-04 12:09:58 +00:00
the_fiddler
2f64fb372e
Major updates to keyboard input. The infrastructure (drivers etc) is ready. Windows raw input works (now implementing multiple devices). The examples need updating for the new input methods.
...
Updated the ExampleLauncher to not process exceptions. Updated the IExample interface to contain the Launch method. Updated examples and the ExampleLauncher according to the IExample interface.
Synced with gl3 branch.
2007-08-03 00:14:31 +00:00
the_fiddler
8f90c9d50f
Added Windows.API.VirtualKeys enum.
...
Started VirtualKeus --> OpenTK.Input.Keys keymap .
Removed Keyboard.Key set property.
2007-07-31 21:50:29 +00:00
the_fiddler
43a37e3ac2
Fixed Raw Input keyboard registration under windows.
...
Fixed marshalling in GetRawInputData.
2007-07-27 01:37:12 +00:00
the_fiddler
8f159aef72
IKeyboard is now public. Updated the GameWindow to not create the Keyboard itself (it is done further up).
...
Added all Raw Input structs, functions and enums in Windows.API.
WinRawKeyboard implements IKeyboard using Raw Input on Windows.
2007-07-27 01:20:55 +00:00