Commit graph

597 commits

Author SHA1 Message Date
the_fiddler 0a9d0685a1 Removed events that are not part of the INativeWindow interface. 2010-10-28 09:34:13 +00:00
the_fiddler c227c36553 Added code to raise all available events. Removed unused events from old OpenTK versions. Fixed potential race condition when raising events (an event might become null between the null check and the actual raising). 2010-10-28 09:31:00 +00:00
the_fiddler c99dbc619c Removed unused field. 2010-10-28 09:01:54 +00:00
the_fiddler dc4a55baab Don't shadow class field. 2010-10-28 09:01:43 +00:00
the_fiddler 120e38f87a Suppressed unused field warnings. The fields are necessary for interop, even if not explicitly accessed. 2010-10-28 09:01:25 +00:00
the_fiddler 2c57e44ff4 Minor cosmetic change. 2010-10-28 08:43:36 +00:00
the_fiddler 505399ba9f Implemented WinRawKeyboard input driver. 2010-10-28 08:42:38 +00:00
the_fiddler 73326138ee Avoid numeric overflow when printing debug message. 2010-10-28 08:42:20 +00:00
the_fiddler 76db3e188f Minor fixes for code clarity. 2010-10-28 08:13:42 +00:00
the_fiddler 3c2c07361a 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 ef6c910d30 Initial implementation of raw mouse input on Windows. 2010-10-22 13:41:42 +00:00
the_fiddler 687594db4c Fixed CursorVisible getter.
If necessary, re-grab the cursor whenever the window changes position/size.
2010-10-22 13:36:05 +00:00
the_fiddler 38f54630cb Implemented PointToScreen and fixed mouse grab rectangle to match the client rectangle exactly. 2010-10-22 13:22:28 +00:00
the_fiddler 4d2759eb78 * XI2Mouse.cs:
* X11Factory.cs: Detect whether XInput2 is not supported without
  throwing an exception.
2010-10-22 07:41:56 +00:00
the_fiddler eeefbd1a9c * Input/Mouse.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/XI2Mouse.cs: Added internal list of mouse devices in
  preparation for multi-mouse support.
2010-10-21 14:53:10 +00:00
the_fiddler 80ee257777 * OpenTK.csproj:
* Input/MouseState.cs:
* Platform/X11/Structs.cs:
* Platform/X11/XI2Mouse.cs:
* Platform/X11/Functions.cs:
* Platform/X11/X11Factory.cs: Added XInput2 driver for mice.
  Multi-mouse support pending.

* Platform/X11/X11Mouse.cs: Log the driver type for debugging
  purposes.
2010-10-21 12:32:00 +00:00
the_fiddler 23ad81d12b * Platform/X11/X11Keyboard.cs: Added index bounds check for
GetState.
2010-10-21 07:56:48 +00:00
the_fiddler 1a8f589f5c * OpenTK.csproj:
* Input/MouseState.cs:
* Input/ButtonState.cs:
* Platform/X11/X11Mouse.cs:
* Platform/X11/X11Factory.cs: Added initial implementation of
  OpenTK.Input.Mouse for X11.
2010-10-21 07:56:37 +00:00
the_fiddler 3c238a01f6 * X11Keyboard.cs: Do not allocate an X11WindowInfo unnecessarily. 2010-10-20 15:16:55 +00:00
the_fiddler 85c37f0600 * Source/OpenTK/Input/Mouse.cs:
* Source/OpenTK/Platform/Factory.cs:
* Source/OpenTK/Input/InputDriver.cs:
* Source/OpenTK/Input/IMouseDriver.cs:
* Source/OpenTK/Platform/X11/X11Input.cs:
* Source/OpenTK/Platform/X11/X11Factory.cs:
* Source/OpenTK/Platform/Windows/WMInput.cs:
* Source/OpenTK/Platform/IPlatformFactory.cs:
* Source/OpenTK/Platform/MacOS/CarbonInput.cs:
* Source/OpenTK/Platform/Windows/WinFactory.cs:
* Source/OpenTK/Platform/MacOS/MacOSFactory.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/Windows/WinRawMouse.cs:
* Source/OpenTK/Platform/Windows/WinRawInput.cs: Added new MouseDriver
  interface and added stub internal implementations.
2010-10-20 14:58:38 +00:00
the_fiddler 7e3182b1fc * 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 33529aff63 * Source/OpenTK/Platform/X11/X11GLNative.cs: Confine pointer to
window when it becomes invisible.
2010-10-20 09:50:49 +00:00
the_fiddler 527cdf8622 * Source/OpenTK/Platform/X11/X11GLNative.cs: Refactored empty cursor
creation into its own function. Create one empty cursor for the
  lifetime of the window.
2010-10-20 09:19:34 +00:00
the_fiddler 63b35badee Take into account the fact that ShowCursor(true/false) calls are cumulative (we want boolean behavior instead). 2010-10-19 09:25:09 +00:00
the_fiddler f302a62fc1 Added initial code for mouse grabbing. Modified GameWindowStates to test this. 2010-10-19 09:20:59 +00:00
the_fiddler 9c524e0d52 * Source/OpenTK/Platform/MacOS/CarbonGLNative.cs: Removed unused
code.
2010-10-18 16:14:50 +00:00
the_fiddler 60a9af5939 * Source/OpenTK/Platform/Windows/API.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Implemented
  CursorVisible.
2010-10-18 16:14:38 +00:00
the_fiddler 1fc5e96a25 * Source/OpenTK/NativeWindow.cs:
* Source/OpenTK/INativeWindow.cs:
* Source/OpenTK/Platform/X11/API.cs:
* Source/OpenTK/Platform/X11/X11GLNative.cs:
* Source/OpenTK/Platform/Windows/WinGLNative.cs:
* Source/OpenTK/Platform/MacOS/CarbonGLNative.cs:
* Source/Examples/OpenTK/Test/GameWindowStates.cs: Initial
  implementation of CursorVisible API. See issue [#1560].
2010-10-18 15:25:25 +00:00
the_fiddler f2d418e3d1 Report Xinerama as not supported when it fails to detect any devices. Fixes issue on Nvidia drivers when Twinview is enabled. 2010-10-09 19:11:45 +00:00
the_fiddler dd41ed9610 Added XF86VM fallback when XRandR is missing (many thanks to jdomnitz!) 2010-10-09 19:10:39 +00:00
the_fiddler 88e6aceae0 Synced trunk with 1.0 branch. 2010-10-02 18:52:34 +00:00
the_fiddler bca3751e8b Synced with 1.0 branch. 2010-03-11 22:53:11 +00:00
the_fiddler 53b84d18d4 Backported bugfixes from 1.0 branch. 2010-02-03 19:04:42 +00:00
kanato 411f4bcc98 * Platform/MacOS/CarbonGLNative.cs: Fix width/height properties on Mac OS X. 2010-01-11 22:08:00 +00:00
the_fiddler 6471772777 Added support for fractional mouse wheel values. Fixes issue [#1279]: "Mouse wheel does not seem to work". 2009-11-16 12:15:35 +00:00
the_fiddler a8c0c7adf4 Preserve the sign of the mouse position. Fixes issue [#1376]: "mouse position". 2009-11-16 10:38:49 +00:00
kanato 1bc11bb807 MacOS: Fix crash in CheckEnterLeaveEvents if using WinForms too. 2009-11-15 22:00:14 +00:00
kanato 69c05cdb20 MacOS: Correct resizing behavior and correctly implement Bounds, ClientRectangle, and ClientSize getters and setters. 2009-11-15 19:31:23 +00:00
kanato d695bb599c MacOS: Add proper icon support for the dock. 2009-11-15 18:08:49 +00:00
kanato 63b314c4a8 MacOS: Implement Focused property and FocusChanged event. 2009-11-15 04:12:37 +00:00
kanato 103190ebf4 MacOS: Implement mouse enter / leave events. 2009-11-15 03:55:29 +00:00
kanato 52e89c13b1 MacOS: Clean up AglContext destruction code.
Implement INativeWindow.Close method.
2009-11-14 21:33:07 +00:00
kanato ed05d8e12c MacOS: Several minor fixes:
* Implement MouseWheel event
* Implement KeyPress event
* Fix generation of MouseMove events
* Fix right mouse button up event
2009-11-14 18:40:56 +00:00
kanato 6979e24254 MacOS: Fix bug where application started from the command line would not be in the foreground and not respond to keyboard events. 2009-11-14 00:30:57 +00:00
the_fiddler fe01e67d39 Do not hook ProcessExit event if an X server is not available. Should fix issue [#1364]: 1.0 beta-1 throws TypeInitializationException in OpenTK.Platform.X11.API when running on windows.
Cleaned up stale comments and code.
2009-11-12 15:41:41 +00:00
the_fiddler 2870532c78 Branched for 1.0 release. 2009-11-09 20:14:14 +00:00
kanato d7506f0a73 MacOS: Hack for AGL to have access to the display device specified when a NativeWindow is created. 2009-11-09 07:50:21 +00:00
kanato 049d339643 MacOS: Detect display boundaries so created windows are placed in the right spot. 2009-11-09 07:39:38 +00:00
kanato dad798d41d MacOS: Fix event from user clicking close box to properly report that window doesn't exist anymore. 2009-11-09 07:18:54 +00:00
the_fiddler c494250c3c Disabled OpenTK.Point, Size and Rectangle structures that were meant to replace their System.Drawing implementations until the correct course of action can be determined. This change is too disruptive to existing applications, especially if they are also using Windows.Forms (see discussion here: http://www.opentk.com/node/1348). 2009-11-08 23:02:53 +00:00