thefiddler
fd3ac1e4cc
Removed file committed by mistake
2014-05-19 12:34:09 +02:00
thefiddler
d483b01de0
[EGL] Fixed display connection
...
We now use the display connection specified in EglWindowInfo
throughout the EGL backend, instead of opening new connections
in EglGraphicsMode. This fixes EGL errors in
Egl.CreateWindowSurface.
As part of this fix, all instances of
IPlatformFactory.CreateGraphicsMode() have been removed. This
API is no longer used in OpenTK 1.1
2014-05-19 08:31:38 +02:00
thefiddler
97b211a101
[EGL] Egl.GetProcAddress only returns extensions
...
We have to load statically exported entry points using the regular OS
symbol loading facilities, and only use eglGetProcAddress for
extensions.
Fixes crash in https://github.com/mono/MonoGame/pull/2377
2014-05-18 22:04:52 +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
c6dafbccba
[X11] Implemented high-resolution scroll events
2014-05-13 23:23:51 +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
c2bd8624b5
Merge branch 'nvidiafix' into develop
2014-05-12 17:00:42 +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
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
f4a3cab0e0
[Input] Added Mouse.GetCursorPos() (WIP)
2014-05-12 02:20:52 +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
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
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
8b7d5bc7e4
[Input] Implement key repeat
2014-05-05 00:43:45 +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
e155d647de
[X11] Added X11KeyMap.TranslateButton()
...
This code was duplicated on four different places before.
2014-05-04 17:04:03 +02:00
thefiddler
ff46455e56
[X11] Removed legacy X11Input driver
...
Its functionality has been moved directly into X11GLNative and
X11KeyMap.
2014-05-04 08:32:08 +02:00
thefiddler
94fdf1881c
[Platform] Improved mouse interface
...
- The complete mouse state is now available in mouse events
- Horizontal wheels are now supported
- MouseState now takes up less memory and has a simpler internal
implementation.
2014-05-04 01:29:55 +02:00
thefiddler
3e33ac9280
[Platform] Refactored INativeWindow backends
...
All INativeWindow implementations are now derived from
NativeWindowBase. They no longer implement legacy IInputDriver
themselves, but rather rely on LegacyInputDriver provided by
NativeWindowBase for compatibility. They also implement the new Mouse*
events.
2014-05-02 16:52:11 +02:00
thefiddler
612652910f
[Platform] Inherit NativeWindowBase
2014-05-02 14:18:40 +02:00
thefiddler
c8c0d32fcc
[OpenTK] Rearranged MouseCursor parameters
...
MouseCursor and WindowIcon now match GL.TexImage2D in the way they
arrange their parameters. The expected values of each parameter are now
documented.
2014-04-30 20:04:31 +02:00
thefiddler
890805f2ae
[Platform] Renamed MouseCursor.Rgba to Argb
...
This matches the default format of System.Drawing.Bitmap.
2014-04-30 08:38:57 +02:00
thefiddler
3da459b316
[All] Fixed checks for EXT_swap_control_tear
...
EGL and NSOpenGL do not offer an EXT_swap_control_tear equivalent so
use regular vsync for now. The relevant extension string is now
correctly checked on WGL and GLX.
2014-04-29 08:10:18 +02:00
thefiddler
4f9a2f78d6
Merge branch 'cursor' of https://github.com/thefiddler/opentk into thefiddler-cursor
2014-04-28 07:07:47 +02:00
thefiddler
0f920fb205
[X11] Fixed SGI_swap_control query
...
GLX can return valid function pointer to unsupported functions.
We need to check for extension support in addition to the
function pointer.
Fixes crash on OpenSUSE 13.1 in VirtualBox.
2014-04-28 01:29:34 +02:00
thefiddler
96b7419d83
[X11] Fixed INativeWindow.Cursor getter
2014-04-27 22:28:10 +02:00
Fraser Waters
2207144aec
Fix a bug in X11 CursorVisble with custom cursors.
...
CursorVisible reset to the default cursor when showing the cursor, it
should instead show the custom cursor if it's defined (else the default
cursor).
2014-04-27 10:53:34 +02:00
Fraser Waters
9239fd08e3
Custom cursors on X11.
2014-04-27 10:53:33 +02:00
Fraser Waters
6e23a55f35
Add XcursorImageLoadCursor function.
2014-04-27 10:53:33 +02:00
Fraser Waters
4f2658ab79
Make xcursor fields public.
2014-04-27 10:53:33 +02:00
Fraser Waters
cb5f354ddc
Change xcursor library name.
2014-04-27 10:53:33 +02:00
Fraser Waters
cf43b6003c
Create and Destroy functions for XcursorImage.
2014-04-27 10:53:33 +02:00
Fraser Waters
52043d5f74
Xcursor types.
2014-04-27 10:53:33 +02:00
thefiddler
dd55cea489
[All] Initial implementation of INativeWindow.Cursor property
...
Affects issue #9
2014-04-27 10:52:53 +02:00
thefiddler
a79086bb20
[X11] Set WM_CLASS property
...
This allows Ubuntu Unity and Gnome Shell to detect and display
the correct application name.
2014-04-26 20:27:00 +02:00
thefiddler
95f73310d8
[X11] Implemented new-style bindings for GLX
...
Replaced delegates with call instructions and completely removed the
old extension loading code.
2014-04-26 18:24:13 +02:00
thefiddler
433fa35f7e
[Graphics] GetAddress(string) is no longer needed
2014-04-26 14:20:17 +02:00
thefiddler
9605940661
[X11] Optimized XKey translation
2014-04-25 21:55:00 +02:00
csantos
c48f6399e4
Centering the cursor at (width/2, height/2), effectively fixing
...
the issue described in https://github.com/mono/MonoGame/issues/2283
2014-03-18 01:44:52 -03:00