thefiddler
4ede3ad2d0
[X11] Renamed XI2Mouse
...
This file now implements both mouse and keyboard input, so its name
has been updated to reflect that.
2014-05-15 10:24:03 +02:00
thefiddler
b4f4be7ece
[X11] Split X11 and XI2 input drivers
2014-05-15 10:22:01 +02:00
thefiddler
7d1bec58cc
[X11] Implemented XI2 keyboard input
2014-05-15 10:21:06 +02:00
thefiddler
2eb88d9788
[X11] Added XIDeviceType enumeration
2014-05-15 10:20:23 +02:00
thefiddler
692c4c64ff
[X11] Rebased on develop branch
2014-05-15 01:16:28 +02:00
thefiddler
7cce215a4b
[X11] Use XKB for layout-independent input
...
The code will fall back to core X11 if XKB is not available.
2014-05-15 01:13:12 +02:00
thefiddler
e8176ef7cf
[X11] Added XKB bindings
2014-05-15 01:12:06 +02:00
thefiddler
687fc90c95
Merge pull request #120 from thefiddler/xcursorfix
...
[X11] Improve mouse input
2014-05-15 00:43:38 +02:00
thefiddler
1419c1e3a0
[Mac] Explicitly retain/release CocoaWindowInfo instances
2014-05-14 18:01:08 +02:00
thefiddler
1690cf859e
[X11] Removed unused SetCursor() function
2014-05-14 00:42:05 +02:00
thefiddler
a062d4c0a7
[X11] Removed stale comment
2014-05-14 00:00:13 +02:00
thefiddler
30d7780f1e
[X11] Removed unused warp detection code
2014-05-13 23:51:55 +02:00
thefiddler
dd16142a3a
[X11] Fixed GetCursorState() after SetPosition()
...
The new position is now immediately reflected in GetCursorPos().
2014-05-13 23:50:39 +02:00
thefiddler
452d61bc60
[X11] Warn when XI2Mouse is not supported.
...
Without the XI2 extension, mouse support will suffer significantly.
More specifically, low-level mouse events will not be available.
2014-05-13 23:34:27 +02:00
thefiddler
3febb4dda0
[Input] Renamed MouseScrollWheel to MouseScroll
...
This better describes the functionality of this structure.
2014-05-13 23:25:56 +02:00
thefiddler
c6dafbccba
[X11] Implemented high-resolution scroll events
2014-05-13 23:23:51 +02:00
thefiddler
9255fdcdb4
[Platform] Fixed OnMouseDown/Up events for secondary buttons
2014-05-13 22:53:47 +02:00
thefiddler
a30af547f9
[X11] Improved CursorVisible = false behavior
...
We now use an XGrabPointer to confine the cursor to the window,
instead of the XWarpPointer hack. Fixes issue #28 and #36 .
2014-05-13 22:31:45 +02:00
thefiddler
7e3b99c636
[X11] Fixed cursor position when CursorVisible becomes true
2014-05-13 13:23:20 +02:00
thefiddler
fc718026fd
[X11] Fixed Cursor when CursorVisible = false
...
Setting Cursor will no longer override CursorVisible.
2014-05-13 09:27:21 +02:00
thefiddler
290cc91275
Merge branch 'nulldisplay' into develop
2014-05-12 17:01:01 +02:00
thefiddler
c2bd8624b5
Merge branch 'nvidiafix' into develop
2014-05-12 17:00:42 +02:00
thefiddler
50b611ec5f
Merge branch 'arrayfix' into develop
2014-05-12 17:00:16 +02:00
thefiddler
bb01f35de9
[Rewrite] Removed unused conditional.
2014-05-12 16:35:48 +02:00
thefiddler
c0b0990687
[OpenTK] Do not crash when no monitor connected
...
NativeWindow now checks for a non-null device before attempting to
access its properties. Affects
https://github.com/mono/MonoGame/issues/2416
2014-05-12 16:27:39 +02:00
thefiddler
4e8786f123
[X11] Correct Glx.*.SwapInterval definitions
...
Improved error checking means we are no longer crashing when
SwapInterval is not available.
2014-05-12 14:50:03 +02:00
thefiddler
88905cb6aa
[X11] Fixed GLX extension loading
...
GLX is now using the new extension loading mechanism,
and the entry point names now much the available slots.
2014-05-12 13:59:48 +02:00
thefiddler
3a94d8147f
[Rewrite] Fixed 2d/3d arrays on .Net
...
Mono can use ldlen and ldelema on both 1d arrays (vectors) and 2d/3d
arrays. However, .Net can only use these instructions on 1d arrays -
higher rank arrays must use get_Length and Address explicitly.
2014-05-12 13:03:27 +02:00
thefiddler
bd712e4775
[X11] Flush XSendEvent on exit
2014-05-12 02:20:53 +02:00
thefiddler
1cf7386748
[X11] Fixed XI2Mouse smooth scrolling
...
The scrolling valuator offsets are now calculated correctly, based on
the number of set bits in the valuator mask.
Additionally XI2Mouse now runs on a background thread, using blocking
XIfEvent. This should improve resonsiveness and reduce CPU usage, due
to reduced polling.
2014-05-12 02:20:53 +02:00
thefiddler
bba9c8c26f
[X11] Improved XI2Mouse implementation
...
Horizontal and vertical smooth scrolling is now supported.
Movement axes are now correctly identified. Device hotplugging
has been improved.
2014-05-12 02:20:53 +02:00
thefiddler
2b16a641f0
[Examples] Improved Mouse.GetState output
2014-05-12 02:20:53 +02:00
thefiddler
96aaef9b37
[Mac] Implemented Mouse.GetCursorState()
2014-05-12 02:20:53 +02:00
thefiddler
b89c920f32
[Examples] Test Mouse.SetPosition
2014-05-12 02:20:52 +02:00
thefiddler
7eefb3e3ff
[SDL] Use h-wheel events
2014-05-12 02:20:52 +02:00
thefiddler
bb8dfe4304
[Input] Improve SDL2 and Windows GetCursorState
2014-05-12 02:20:52 +02:00
thefiddler
f4a3cab0e0
[Input] Added Mouse.GetCursorPos() (WIP)
2014-05-12 02:20:52 +02:00
thefiddler
cd7342b688
Merge pull request #114 from thefiddler/nativewindow
...
INativeWindow cleanup and consolidation
2014-05-12 02:20:29 +02:00
thefiddler
0e48ad30d0
[Examples] Fixed Scroll.X/Y misreporting
...
Scroll.X and Y are no longer swapped.
2014-05-10 01:52:06 +02:00
thefiddler
d7e0373852
[Platform] Fixed keys getting stuck on focus loss
...
NativeWindowBase will now clear all keyboard keys when losing focus.
This prevents keys from getting stuck when refocusing the window.
[Win] Also fixed WindowState.Maximized when WindowBorder is Hidden and
the window is minimized.
2014-05-09 16:45:45 +02:00
thefiddler
4556e54405
[Win] Fixed infinite recursion
2014-05-09 16:14:13 +02:00
thefiddler
fb034de00d
[Graphics] Made entry points internal
...
Internal protected means internal *or* protected, not internal *and*
protected.
2014-05-09 15:24:12 +02:00
thefiddler
c98b4ea178
[Input] Do not hook FocusedChanged
...
This is handled by NativeWindowBase now.
2014-05-09 15:23:39 +02:00
thefiddler
8eae337d93
[Win] Cleaned up window size/pos properties
2014-05-09 15:22:33 +02:00
thefiddler
f0d0f6e53a
[X11] Fixed WindowBorder and WindowState setters
...
After many hours of fighting with xlib, the monster is slain and
WindowBorder/WindowState changes now take effect without messing
up the window size or position on the desktop.
Phew!
2014-05-09 13:10:23 +02:00
thefiddler
ab29797079
[Platform] Raise KeyUp events on focus lost
...
This ensures that no keys are stuck in pressed state when the user
switches away from the application window.
2014-05-09 01:50:48 +02:00
thefiddler
86146f54d5
[X11] Fixed key repeat
2014-05-09 00:26:51 +02:00
thefiddler
8195800ee7
[X11] Improved vsync support
...
OpenTK will now check for GLX_EXT_swap_control, GLX_MESA_swap_control
and GLX_SGI_swap_control. This allows us to control vsync on more
systems.
2014-05-09 00:13:23 +02:00
thefiddler
d430b462fe
[X11] Corrected size events
2014-05-08 20:58:11 +02:00
thefiddler
0c61bafbd0
Merge pull request #113 from danzel/develop
...
[Platform] Correct spelling in INativeWindow
2014-05-08 00:51:32 +02:00