Commit Graph

8 Commits

Author SHA1 Message Date
David Ludwig
25abce513d WinRT: added Win10/UWP (Universal Windows Platform) support
"UWP" appears to be Microsoft's new name for WinRT/Windows-Store APIs.

This set of changes updates SDL's WinRT backends to support the Win10 flavor
of WinRT.  It has been tested on Win10 on a desktop.  In theory, it should
also support Win10 on other devices (phone, Xbox One, etc.), however further
patches may be necessary.

This adds:
- a set of MSVC 2015 project files, for use in creating UWP apps
- modifications to various pieces of SDL, in order to compile via MSVC 2015 +
  the Win10 API set
- enables SDL_Window resizing and programmatic-fullscreen toggling, when using
  the WinRT backend
- WinRT README updates
2015-11-29 19:33:11 -05:00
David Ludwig
d07aa877d2 WinRT: minor code cleanup in window-creation code
Window flags can be detected on all WinRT platforms.
2015-11-26 11:15:43 -05:00
David Ludwig
a70fe9a53e WinRT: native windows are inherently resizable (in WinRT 8.x) 2015-11-26 11:09:50 -05:00
David Ludwig
7bd640d5da WinRT: bug-fix, fullscreen mode wasn't getting reported in Windows 8.0 apps
This bug did not occur in Windows 8.1 apps, just Windows 8.0.
2015-11-26 02:37:51 -05:00
David Ludwig
36090f576f WinRT: bug-fix, OpenGLES2 was failing to init, after recent windowing fixes
Some SDL_Window flags were getting lost inside WINRT_UpdateWindowFlags, namely
SDL_WINDOW_OPENGL.
2015-11-26 02:13:15 -05:00
David Ludwig
f520994455 WinRT: bug-fix, fullscreen window flags weren't set if device was rotated 90 degrees 2015-11-26 01:36:36 -05:00
David Ludwig
623898f70b WinRT: lots of display and windowing related fixes
This change-set fixes a lot of windowing related bugs, especially with
regards to Windows 8.x apps running on Windows 10 (which was the driver for
this work).  The primary fixes include:
* listed display modes were wrong, especially when launching apps into a
  non-fullscreen space
* reported window flags were often wrong, especially on Windows 10
* fullscreen/windowed mode switches weren't failing (they are not
  programmatically possible in Win 8.x apps).
2015-11-26 00:41:39 -05:00
Philipp Wiesemann
0e45984fa0 Fixed crash if initialization of EGL failed but was tried again later.
The internal function SDL_EGL_LoadLibrary() did not delete and remove a mostly
uninitialized data structure if loading the library first failed. A later try to
use EGL then skipped initialization and assumed it was previously successful
because the data structure now already existed. This led to at least one crash
in the internal function SDL_EGL_ChooseConfig() because a NULL pointer was
dereferenced to make a call to eglBindAPI().
2015-06-21 17:33:46 +02:00