platform/core/csapi/opentk.git
10 years ago[Graphics] Improved support for external OpenGL contexts
thefiddler [Sat, 28 Dec 2013 00:14:59 +0000 (01:14 +0100)]
[Graphics] Improved support for external OpenGL contexts

When combining OpenTK with a third-party OpenGL toolkit, it is now
possible to implement a suitable GetAddress() and GetCurrentContext()
implementation in terms of the third-party toolkit. If no
implementation is specified, then OpenTK will try to guess the most
suitable implementation within its own platform backends.

If no custom implementation is defined, and if no suitable
implementation can be found, then OpenTK will throw a
PlatformNotSupportedException. If a suitable implementation is found or
defined, then OpenTK will attempt to load OpenGL entry points using
that implementation.

In this case third-party toolkit remains solely responsible for
managing its context via its MakeCurrent(), SwapBuffers(), etc
implementations.

10 years ago[Dummy] Improved thread-safety; added entry-point loader
thefiddler [Sat, 28 Dec 2013 00:09:59 +0000 (01:09 +0100)]
[Dummy] Improved thread-safety; added entry-point loader

DummyGLContext will now attempt to load OpenGL and OpenGL ES entry
points when a suitable OpenGL context is current on the calling thread.
This allows OpenTK to be used on contexts created through third-party
toolkits.

10 years ago[Platform] Added internal CreateGetAddress() function
thefiddler [Sat, 28 Dec 2013 00:08:24 +0000 (01:08 +0100)]
[Platform] Added internal CreateGetAddress() function

CreateGetAddress() constructs a GraphicsContext.GetAddressDelegate that
is suitable for the current platform. This can be used when combining
OpenTK with an OpenGL context created through a third-party toolkit.

10 years ago[Mac] Moved GetAddress implementation to its own class
thefiddler [Sat, 28 Dec 2013 00:06:33 +0000 (01:06 +0100)]
[Mac] Moved GetAddress implementation to its own class

The functions defined in libdl.dylib are useful in more places than
just AglContext. Moving them to their own class ensures we can access
these from wherever we might need them.

10 years ago[SDL2] Added missing [SuppressUnamangedCodeSecurity] attribute
thefiddler [Sat, 28 Dec 2013 00:04:46 +0000 (01:04 +0100)]
[SDL2] Added missing [SuppressUnamangedCodeSecurity] attribute

10 years ago[Mac] Use Cgl.GetCurrentContext instead of Agl
thefiddler [Sat, 28 Dec 2013 00:04:22 +0000 (01:04 +0100)]
[Mac] Use Cgl.GetCurrentContext instead of Agl

CGL appears to work with both AGL and NSOpenGL contexts, whereas AGL is
limited to AGL contexts. This allows us to be more flexible in terms of
implementation (i.e. we can use Cgl.GetCurrentContext to retrieve a
handle to a context created through SDL, which uses NSOpenGL
internally.)

10 years ago[X11] Improve GraphicsMode fallback (fixes issue #23)
thefiddler [Fri, 27 Dec 2013 12:01:21 +0000 (14:01 +0200)]
[X11] Improve GraphicsMode fallback (fixes issue #23)

When the user requests a GraphicsMode that is not directly supported
by the GPU/drivers, we should relax the requested parameters until
we find a supported mode. An exception should only be thrown when
there is no usable mode.

This makes the X11 backend match the behavior of Windows. The SDL/X11
backend works a little bit differently, in that it falls back to the
a default mode directly if the requested mode is not available. There
is nothing we can do about that.

10 years ago[X11] Fixed border size on Gnome 3
thefiddler [Fri, 27 Dec 2013 11:31:51 +0000 (13:31 +0200)]
[X11] Fixed border size on Gnome 3

The _NET_FRAME_EXTENTS atom is implemented differently by
different window managers, when window decorations are hidden
with Motif. Unity returns a 0 size, while Gnome 3 returns the
previous size.

This patch removes that ambiguity: when decorations are hidden,
border size becomes zero. This should work everywhere, unless
some window manager decides to troll us by decorating the window
when we explicitly request no decorations. Sigh...

10 years ago[Input] Do not crash with scancodes > 255
thefiddler [Fri, 27 Dec 2013 10:10:41 +0000 (11:10 +0100)]
[Input] Do not crash with scancodes > 255

10 years ago[X11] Allow resizing with fixed borders
thefiddler [Fri, 27 Dec 2013 10:07:38 +0000 (11:07 +0100)]
[X11] Allow resizing with fixed borders

Windows can now be resized programmatically, even when they have
WindowBorder.Fixed. All resizing logic is now consolidated in the
Bounds property, and ConfigureNotify messages are now handled
correctly depending on their source (StructureNotify or
SubStructureNotify.)

10 years agoImplemented X11 KeyDown/KeyUp events and reduced code duplication
thefiddler [Wed, 25 Dec 2013 10:46:02 +0000 (11:46 +0100)]
Implemented X11 KeyDown/KeyUp events and reduced code duplication

10 years agoDo not raise KeyPress for control characters
thefiddler [Wed, 25 Dec 2013 10:14:30 +0000 (11:14 +0100)]
Do not raise KeyPress for control characters

10 years agoIgnore *.pidb files from MonoDevelop 2.x
parallels [Wed, 25 Dec 2013 10:11:29 +0000 (11:11 +0100)]
Ignore *.pidb files from MonoDevelop 2.x

10 years agoRemoved unused constructors
thefiddler [Mon, 23 Dec 2013 20:43:17 +0000 (21:43 +0100)]
Removed unused constructors

10 years agoAdded Compositing and FrameworkScaled flags
thefiddler [Mon, 23 Dec 2013 20:42:16 +0000 (21:42 +0100)]
Added Compositing and FrameworkScaled flags

10 years agoFixed OpenTK/Carbon key repeat behavior to match the other backends
thefiddler [Mon, 23 Dec 2013 19:40:27 +0000 (20:40 +0100)]
Fixed OpenTK/Carbon key repeat behavior to match the other backends

10 years agoFixed GameWindow.{Bounds, Location, Size, X, Y} setters on OpenTK/Carbon
thefiddler [Mon, 23 Dec 2013 19:21:02 +0000 (20:21 +0100)]
Fixed GameWindow.{Bounds, Location, Size, X, Y} setters on OpenTK/Carbon

10 years agoImplemented KeyDown & KeyUp events on OpenTK/Carbon
thefiddler [Mon, 23 Dec 2013 18:32:16 +0000 (19:32 +0100)]
Implemented KeyDown & KeyUp events on OpenTK/Carbon

10 years agoRemove bogus GraphicsMode.Index check. Fixes #22
Stefanos A. [Sun, 22 Dec 2013 14:40:01 +0000 (15:40 +0100)]
Remove bogus GraphicsMode.Index check. Fixes #22

GraphicsMode.Index is set by the platform-specific context constructor,
which is invoked after the X11GLControl constructor. It does not make
sense to check GraphicsMode.Index in the X11GLControl constructor, as it
is never set at that point.

10 years agoMerge branch 'wgl_issue21'. Fixes issue #21
Stefanos A [Sun, 22 Dec 2013 10:16:10 +0000 (11:16 +0100)]
Merge branch 'wgl_issue21'. Fixes issue #21

10 years agoFixed crash in MakeCurrent(null)
Stefanos A. [Sun, 22 Dec 2013 10:10:05 +0000 (11:10 +0100)]
Fixed crash in MakeCurrent(null)

MakeCurrent(null) should set the bound device context to zero.

10 years agoAdded WGL_DRAW_TO_WINDOW_ARB flag
Stefanos A. [Sun, 22 Dec 2013 09:35:05 +0000 (10:35 +0100)]
Added WGL_DRAW_TO_WINDOW_ARB flag

Without this flag, OpenGL rendering does not work as expected.

Additionally, all WGL_ARB_pixel_format attributes are expected to be
specified in key-value pairs. Fixed double-buffering and stereoscoping
rendering attributes.

10 years agoImproved WGL mode selection
Stefanos A. [Sun, 22 Dec 2013 08:20:40 +0000 (09:20 +0100)]
Improved WGL mode selection

Fixed WGL_ARB_pixel_format attribute selection for doublebuffering,
stereoscopic rendering and hardware acceleration. Implemented
minimization strategy to select the optimal PixelFormatDescriptor in the
fallback path.

10 years agoFixed DescribePixelFormatPFD
Stefanos A. [Sat, 21 Dec 2013 22:35:55 +0000 (23:35 +0100)]
Fixed DescribePixelFormatPFD

When using the PFD codepath, we now call DescribePixelFormat to retrieve
an exact interpretation of the pixel format selected by the driver.

10 years agoPrioritize accelerated formats first
Stefanos A. [Sat, 21 Dec 2013 21:43:35 +0000 (22:43 +0100)]
Prioritize accelerated formats first

Instead of creating a list of all available formats and iterating
through that, we let the driver decide which is the best accelerated
format to use for the user parameters. If no such format exists, we fall
back to generic acceleration or software acceleration, in turn.

This affects issue #21

10 years agoTurn 1-element array to ref/out param
Stefanos A. [Sat, 21 Dec 2013 21:41:35 +0000 (22:41 +0100)]
Turn 1-element array to ref/out param

10 years agoDisplay renderer information
Stefanos A. [Sat, 21 Dec 2013 21:41:10 +0000 (22:41 +0100)]
Display renderer information

10 years agoImplemented KeyDown and KeyUp messages
Stefanos A. [Fri, 20 Dec 2013 23:50:25 +0000 (00:50 +0100)]
Implemented KeyDown and KeyUp messages

10 years agoClean fix issue #19
Stefanos A. [Fri, 20 Dec 2013 23:43:05 +0000 (00:43 +0100)]
Clean fix issue #19

Isolate and commit fix for issue #19 without potential for regressions.

10 years agoRevert "Fix issue #19"
Stefanos A [Fri, 20 Dec 2013 23:41:55 +0000 (00:41 +0100)]
Revert "Fix issue #19"

This reverts commit 2c14ec5f800b8ef6527f05ba26d6c6cca4b417d8.

10 years agoFix issue #19
Stefanos A. [Fri, 20 Dec 2013 22:31:42 +0000 (23:31 +0100)]
Fix issue #19

Don't filter window messages passed to our window (see
http://blogs.msdn.com/b/oldnewthing/archive/2005/02/09/369804.aspx).
Additionally, return the correct values for all messages we are actually
handling and clean up unmanaged memory after we are done with the
window.

10 years agoExplicitly set WindowProcedure calling convention
Stefanos A. [Fri, 20 Dec 2013 22:29:47 +0000 (23:29 +0100)]
Explicitly set WindowProcedure calling convention

10 years agoSimplify ProcessEvents implementation
Stefanos A. [Fri, 20 Dec 2013 07:42:36 +0000 (08:42 +0100)]
Simplify ProcessEvents implementation

Instead of combining PeekMessage+GetMessage, we can simply call
PeekMessage(Remove) to achieve the same effect. This also allows us to
remove the IsIdle property, which is no longer used anywhere.

10 years agoThreads with message pump require STA comparment
Stefanos A. [Thu, 19 Dec 2013 09:39:36 +0000 (10:39 +0100)]
Threads with message pump require STA comparment

May affect issue #19

10 years agoReplace Wgl.GetCurrentDC with cached dc
Stefanos A. [Wed, 18 Dec 2013 13:51:00 +0000 (14:51 +0100)]
Replace Wgl.GetCurrentDC with cached dc
 with

10 years agoNo point in using 16bpp color
Stefanos A. [Wed, 18 Dec 2013 13:29:18 +0000 (14:29 +0100)]
No point in using 16bpp color

10 years agoCleaned up temporary context construction
Stefanos A. [Wed, 18 Dec 2013 13:29:06 +0000 (14:29 +0100)]
Cleaned up temporary context construction

The temporary context is now retained until the actual context has been
constructed. If we don't do this, then WGL_ARB_create_context may fail
to work correctly on specific GPUs (e.g. Intel). This may affect issue
#19.

10 years agoFixed GetModesARB implementation
Stefanos A. [Wed, 18 Dec 2013 13:16:49 +0000 (14:16 +0100)]
Fixed GetModesARB implementation

The correct way to query number of available pixel formats is to use
Wgl.Arb.GetPixelFormatAttrib(NumberPixelFormatsArb), not
Wgl.Arb.ChoosePixelFormats. This fixes an issue where Intel drivers
would fail to report any pixel formats in GetModesARB, even when
WGL_ARB_pixel_format is supported.

10 years agoMinor code cleanup
Stefanos A. [Tue, 17 Dec 2013 22:31:04 +0000 (23:31 +0100)]
Minor code cleanup

10 years agoUse gdi32 implementations of functions
Stefanos A. [Tue, 17 Dec 2013 21:35:30 +0000 (22:35 +0100)]
Use gdi32 implementations of functions

Several functions are defined in both gdi32 and opengl32. Using the
opengl32/wgl versions did not appear to help with issue #19. Let's use
the gdi32 version instead, as suggested here:
https://www.opengl.org/wiki/Platform_specifics:_Windows#The_WGL_functions

10 years agoLoad opengl32.dll before gdi32.dll
Stefanos A. [Tue, 17 Dec 2013 20:24:25 +0000 (21:24 +0100)]
Load opengl32.dll before gdi32.dll

According to
http://stackoverflow.com/questions/199016/wglcreatecontext-in-c-sharp-failing-but-not-in-managed-c,
opengl32.dll must be loaded before gdi32.dll. Affect issue #19.

10 years agoMinor code cleanup
Stefanos A. [Tue, 17 Dec 2013 15:40:15 +0000 (16:40 +0100)]
Minor code cleanup

No need to wrap Wgl.DescribePixelFormat, just call it directly.

10 years agoUse opengl32 instead of gdi32 throughout
Stefanos A. [Tue, 17 Dec 2013 15:39:45 +0000 (16:39 +0100)]
Use opengl32 instead of gdi32 throughout

Since we are dynamically loading opengl32.dll, we are supposed to use
the wgl version of functions that exist in both opengl32 and gdi32 dlls.

10 years agoCorrected the entrypoint for wglChoosePixelFormat
Stefanos A. [Tue, 17 Dec 2013 15:38:56 +0000 (16:38 +0100)]
Corrected the entrypoint for wglChoosePixelFormat

10 years agoClean up shader error detection
Stefanos A. [Tue, 17 Dec 2013 11:09:00 +0000 (12:09 +0100)]
Clean up shader error detection

10 years agoUpdated author information (2/2)
Stefanos A. [Mon, 16 Dec 2013 11:43:11 +0000 (12:43 +0100)]
Updated author information (2/2)

10 years agoUpdated author information
Stefanos A. [Mon, 16 Dec 2013 10:07:05 +0000 (11:07 +0100)]
Updated author information

10 years agoUse 16bit depth in GraphicsMode.Default
Stefanos A. [Mon, 16 Dec 2013 09:44:37 +0000 (10:44 +0100)]
Use 16bit depth in GraphicsMode.Default

16bits appear to be better supported than 24bits on virtual machines.

10 years agoGraphicsContext cannot be released by finalizer
Stefanos A. [Mon, 16 Dec 2013 09:43:56 +0000 (10:43 +0100)]
GraphicsContext cannot be released by finalizer

On many/most platforms, GraphicsContexts can only be released by the
thread where they are current. This means that the user must call
GraphicsContext.Dispose() or risk a resource leak.

Since we cannot release contexts on the finalizer thread, we should keep
strong references, instead of weak references, until the user explicitly
calls Dispose().

This patch fixes issues with SDL2 crashing when running the MonoGame
WindowsGL test suite.

10 years agoImproved diagnostics
Stefanos A. [Mon, 16 Dec 2013 09:39:54 +0000 (10:39 +0100)]
Improved diagnostics

This helps when tracking down GraphicsContext-related issues in SDL2.

10 years agoAdded hack for MonoGame compatibility
Stefanos A. [Mon, 16 Dec 2013 09:39:11 +0000 (10:39 +0100)]
Added hack for MonoGame compatibility

MonoGame uses reflection to access internal APIs. We need to keep these
available until this is fixed downstream.

10 years agoProtect against recursion in Closing event
Stefanos A. [Mon, 16 Dec 2013 09:37:59 +0000 (10:37 +0100)]
Protect against recursion in Closing event

Misbehaving clients that shall not be named here may call
GameWindow.Close() inside the GameWindow.Closing event. This causes
recursion in SDL2, crashing the application.

This patch adds a guard to protect against recursion when calling
GameWindow.Close().

10 years agoAdded overloads for compatibility with svn r3127
Stefanos A [Mon, 16 Dec 2013 00:55:05 +0000 (01:55 +0100)]
Added overloads for compatibility with svn r3127

Several projects are still using the last svn revision from the
sourceforge repository (r3127). These overloads provide an upgrade path
from r3127 to OpenTK 1.1.

10 years agoNormalized xml doc file paths 1.1-b3
Stefanos A [Sun, 15 Dec 2013 22:18:33 +0000 (23:18 +0100)]
Normalized xml doc file paths

10 years agoRemoved lib/ and *.nupkg from zip archive
Stefanos A [Sun, 15 Dec 2013 22:08:53 +0000 (23:08 +0100)]
Removed lib/ and *.nupkg from zip archive

10 years agoFixed build order in Nsis configuration
Stefanos A [Sun, 15 Dec 2013 22:08:19 +0000 (23:08 +0100)]
Fixed build order in Nsis configuration

10 years agoAdded Dependencies folder to Nsis installer
Stefanos A [Sun, 15 Dec 2013 22:07:56 +0000 (23:07 +0100)]
Added Dependencies folder to Nsis installer

10 years agoFixed build in Nsis configuration
Stefanos A [Sun, 15 Dec 2013 21:33:28 +0000 (22:33 +0100)]
Fixed build in Nsis configuration

10 years agoUpdated OpenGL documentation to Khronos r24522
Stefanos A [Sun, 15 Dec 2013 21:32:32 +0000 (22:32 +0100)]
Updated OpenGL documentation to Khronos r24522

10 years agoFixed deprecation warning
Stefanos A [Sun, 15 Dec 2013 21:02:32 +0000 (22:02 +0100)]
Fixed deprecation warning

10 years agoEliminated cls-compliance warnings in BlittableValueType
Stefanos A [Sun, 15 Dec 2013 21:02:21 +0000 (22:02 +0100)]
Eliminated cls-compliance warnings in BlittableValueType

10 years agoEliminated cls-compliance warnings in the math library
Stefanos A [Sun, 15 Dec 2013 21:02:08 +0000 (22:02 +0100)]
Eliminated cls-compliance warnings in the math library

10 years agoEliminated CLS-compliance warnings in the bindings
Stefanos A [Sun, 15 Dec 2013 21:01:45 +0000 (22:01 +0100)]
Eliminated CLS-compliance warnings in the bindings

10 years agoFixed memory corruption on string return type marshaling
Stefanos A [Sun, 15 Dec 2013 19:57:25 +0000 (20:57 +0100)]
Fixed memory corruption on string return type marshaling

10 years agoMerge branch 'no-reflect' of https://github.com/opentk/opentk
Stefanos A [Sun, 15 Dec 2013 17:30:47 +0000 (18:30 +0100)]
Merge branch 'no-reflect' of https://github.com/opentk/opentk

Conflicts:
OpenTK.sln

10 years agoCompatibility fixes for Mono 2.10
parallels [Sun, 15 Dec 2013 17:27:24 +0000 (18:27 +0100)]
Compatibility fixes for Mono 2.10

The Mono 2.10 compiler fails when compiling extern methods that are not
marked as DllImport. We fix that by adding a method body that throws a
NotImplementedException instead.

Additionally, MonoDevelop 2.8 cannot open sln files with ToolsVersion 12.
The fix is to change ToolsVersion to 11.

10 years agoMerge branch 'no-reflect'
Stefanos A [Sun, 15 Dec 2013 16:37:25 +0000 (17:37 +0100)]
Merge branch 'no-reflect'

Conflicts:
OpenTK.sln
Source/Bind/FuncProcessor.cs
Source/OpenTK/Graphics/ES11/ES11.cs
Source/OpenTK/Graphics/ES11/ES11Core.cs
Source/OpenTK/Graphics/ES11/ES11Delegates.cs
Source/OpenTK/Graphics/ES20/ES20.cs
Source/OpenTK/Graphics/OpenGL/GL.cs
Source/OpenTK/Graphics/OpenGL/GLCore.cs
Source/OpenTK/Graphics/OpenGL/GLDelegates.cs
Source/OpenTK/Graphics/OpenGL/GLObsolete.cs

10 years agoMaintain backwards compatibility with 1.1
Stefanos A [Sun, 15 Dec 2013 15:58:33 +0000 (16:58 +0100)]
Maintain backwards compatibility with 1.1

10 years agoMerge master into no-reflect
Stefanos A [Sun, 15 Dec 2013 15:36:37 +0000 (16:36 +0100)]
Merge master into no-reflect

10 years agoBuild UpdateVersion before OpenTK
Stefanos A. [Sun, 15 Dec 2013 14:36:24 +0000 (15:36 +0100)]
Build UpdateVersion before OpenTK

10 years agoGenerate debug symbols in release builds
Stefanos A. [Sun, 15 Dec 2013 14:36:12 +0000 (15:36 +0100)]
Generate debug symbols in release builds

10 years agoImproved WindowState changes on SDL2 backend
Stefanos A. [Sun, 15 Dec 2013 14:35:57 +0000 (15:35 +0100)]
Improved WindowState changes on SDL2 backend

SDL2 fails to report several different WindowState changes. OpenTK uses
a number of hacks to make it work to some extent, however real fixes
will have to be implemented upstream.

10 years agoMerge branch 'sdlres'
Stefanos A [Sun, 15 Dec 2013 12:51:29 +0000 (13:51 +0100)]
Merge branch 'sdlres'

10 years agoUpdated solution to VS2013 format.
Stefanos A. [Sun, 15 Dec 2013 12:47:29 +0000 (13:47 +0100)]
Updated solution to VS2013 format.

10 years agoAdded nuget.exe to project items
Stefanos A. [Sun, 15 Dec 2013 12:47:19 +0000 (13:47 +0100)]
Added nuget.exe to project items

10 years agoCommitted nuget cmdline tool to source control
Stefanos A. [Sun, 15 Dec 2013 12:36:00 +0000 (13:36 +0100)]
Committed nuget cmdline tool to source control

This appears to be the simplest (only?) way to use nuget in a
cross-platform manner.

10 years agoMerge branch 'nuget'
Stefanos A [Sun, 15 Dec 2013 12:23:16 +0000 (13:23 +0100)]
Merge branch 'nuget'

10 years agoAdd OpenTK.dll.config as content
Stefanos A [Sun, 15 Dec 2013 12:21:22 +0000 (13:21 +0100)]
Add OpenTK.dll.config as content

10 years agoMonoDevelop insists on making these changes
Stefanos A [Sun, 15 Dec 2013 12:05:06 +0000 (13:05 +0100)]
MonoDevelop insists on making these changes

10 years agoUpdated description
Stefanos A [Sun, 15 Dec 2013 12:04:29 +0000 (13:04 +0100)]
Updated description

10 years agoGenerate nuget package for OpenTK.GLControl
Stefanos A [Sun, 15 Dec 2013 12:03:56 +0000 (13:03 +0100)]
Generate nuget package for OpenTK.GLControl

10 years agoGenerate xml documentation for OpenTK.GLControl
Stefanos A [Sun, 15 Dec 2013 12:01:39 +0000 (13:01 +0100)]
Generate xml documentation for OpenTK.GLControl

10 years agoImproved nuget version information
Stefanos A [Sun, 15 Dec 2013 11:02:43 +0000 (12:02 +0100)]
Improved nuget version information

10 years agoDo not commit build timestamp to repository
Stefanos A [Sun, 15 Dec 2013 11:02:01 +0000 (12:02 +0100)]
Do not commit build timestamp to repository

10 years agoGenerate both build timestamp and version information
Stefanos A [Sun, 15 Dec 2013 11:01:26 +0000 (12:01 +0100)]
Generate both build timestamp and version information

10 years agoDelay VisualInfo construction (fixes #17)
parallels [Sat, 14 Dec 2013 10:54:55 +0000 (11:54 +0100)]
Delay VisualInfo construction (fixes #17)

In OpenTK 1.1, GraphicsMode queries the platform for a mode id lazily.
By delaying VisualInfo selection until the GraphicsContext is constructed
we ensure that a concrete GraphicsMode is selected and ready for use.

10 years agoCopy build artifact to root directory regardless of artifact name
Stefanos A [Fri, 13 Dec 2013 23:20:39 +0000 (00:20 +0100)]
Copy build artifact to root directory regardless of artifact name

10 years agoAdded release notes for OpenTK
Stefanos A [Fri, 13 Dec 2013 23:19:18 +0000 (00:19 +0100)]
Added release notes for OpenTK

10 years agoAdded nuget lib directory to gitignore
Stefanos A [Fri, 13 Dec 2013 23:19:03 +0000 (00:19 +0100)]
Added nuget lib directory to gitignore

10 years agoAdded nuget build target to OpenTK.sln
Stefanos A [Fri, 13 Dec 2013 09:52:11 +0000 (10:52 +0100)]
Added nuget build target to OpenTK.sln

10 years agoAdded nuget build target
Stefanos A [Fri, 13 Dec 2013 09:51:34 +0000 (10:51 +0100)]
Added nuget build target

This will create a nupkg file for OpenTK and copy it to the base
directory. Version information is currently hardcoded to 1.1 (this
should be fixed.)

10 years agoImplemented resolution change workaround on SDL2
Stefanos A [Thu, 12 Dec 2013 23:07:13 +0000 (00:07 +0100)]
Implemented resolution change workaround on SDL2

SDL2 does not support changing display resolutions independently of an
SDL window. As a workaround, if the user uses ChangeResolution and then
makes a GameWindow fullscreen, we use old-style SDL fullscreen which
changes the resolution. If the user makes a GameWindow fullscreen
without calling ChangeResolution first, we use the new
fullscreen-desktop mode to match the other OpenTK backends.

10 years agoCache size of char
Stefanos A [Mon, 9 Dec 2013 22:46:07 +0000 (23:46 +0100)]
Cache size of char

BlittableValueType<char> caches the size of the type parameter. This
way, we avoid calling Marshal.SizeOf repeatedly for every keyboard
event.

10 years agoEliminated memory allocations in Keyboard events
Stefanos A [Mon, 9 Dec 2013 22:44:51 +0000 (23:44 +0100)]
Eliminated memory allocations in Keyboard events

10 years agoDo not generate KeyPress events for non-printable characters
Stefanos A [Mon, 9 Dec 2013 22:43:36 +0000 (23:43 +0100)]
Do not generate KeyPress events for non-printable characters

10 years agoMerge branch 'enumfix'
Stefanos A [Sun, 8 Dec 2013 20:07:46 +0000 (21:07 +0100)]
Merge branch 'enumfix'

10 years agoRegenerated bindings
Stefanos A [Sun, 8 Dec 2013 15:20:30 +0000 (16:20 +0100)]
Regenerated bindings

10 years agoAdded overloads for compatibility with 1.0 and 1.1 APIs
Stefanos A [Sun, 8 Dec 2013 15:20:22 +0000 (16:20 +0100)]
Added overloads for compatibility with 1.0 and 1.1 APIs

10 years agoMaintain Obsolete property when cloning a function
Stefanos A [Sun, 8 Dec 2013 15:20:04 +0000 (16:20 +0100)]
Maintain Obsolete property when cloning a function

10 years agoCreate convenience overloads based on wrappers, not entry points
Stefanos A [Sun, 8 Dec 2013 15:19:46 +0000 (16:19 +0100)]
Create convenience overloads based on wrappers, not entry points

It makes sense to generate convenience overloads for each relevant
wrapper function, instead of each entry point. This way, we generate
convenience overloads for every wrapper in overrides.xml (even wrappers
for background compatibility), which would otherwise be ignored.