Sat, 29 Nov 2014 10:09:30 -0500 WinRT: bug and data-integrity fixes for SDL_GetPrefPath()
David Ludwig <dludwig@pobox.com> [Sat, 29 Nov 2014 10:09:30 -0500] rev 9247
WinRT: bug and data-integrity fixes for SDL_GetPrefPath() This change does a few things, all with regards to the WinRT implementation of SDL_GetPrefPath(): 1. it fixes a bug whereby SDL_GetPrefPath() did not create the directory it returned. On other SDL platforms, SDL_GetPrefPath() will create separate directories for its 'org' and 'app' folders. Without this, attempts to create files in the pref-path would fail, unless those directories were first created by the app, or by some other library the app used. This change makes sure that these directories get created, before SDL_GetPrefPath() returns to its caller(s). 2. it defaults to having SDL_GetPrefPath() return a WinRT 'Local' folder on all platforms. Previously, for Windows Store apps, it would have used a different, 'Roaming' folder. Files in Roaming folders can be automatically, and synchronized across multiple devices by Windows. This synchronization can happen while the app runs, with new files being copied into a running app's pref-path. Unless an app is specifically designed to handle this scenario, there is a chance that save-data could be overwritten in unwanted or unexpected ways. The default is now to use a Local folder, which does not get synchronized, and which is arguably a bit safer to use. Apps that wish to use Roaming folders can do so by setting SDL_HINT_WINRT_PREF_PATH_ROOT to "roaming", however it is recommended that one first read Microsoft's documentation for Roaming files, a link to which is provided in README-winrt.md. To preserve older pref-path selection behavior (found in SDL 2.0.3, as well as many pre-2.0.4 versions of SDL from hg.libsdl.org), which uses a Roaming path in Windows Store apps, and a Local path in Windows Phone, set SDL_HINT_WINRT_PREF_PATH_ROOT to "old". Please note that Roaming paths are not supported on Windows Phone 8.0, due to limitations in the OS itself. Attempts to use this will fail. (Windows Phone 8.1 does not have this limitation, however.) 3. It makes SDL_GetPrefPath(), when on Windows Phone 8.0, and when SDL_HINT_WINRT_PREF_PATH_ROOT is set to "roaming", return NULL, rather than silently defaulting to a Local path (then switching to a Roaming path if and when the user upgraded to Windows Phone 8.1).
Fri, 28 Nov 2014 04:51:33 -0800 Fixed bug 2786 - "UCS-2-INTERNAL" iconv encoding is not supported everywhere, use UTF-16LE instead
Sam Lantinga <slouken@libsdl.org> [Fri, 28 Nov 2014 04:51:33 -0800] rev 9246
Fixed bug 2786 - "UCS-2-INTERNAL" iconv encoding is not supported everywhere, use UTF-16LE instead Jonas Kulla src/main/windows/SDL_windows_main.c:137: cmdline = SDL_iconv_string("UTF-8", "UCS-2-INTERNAL", (char *)(text), (SDL_wcslen(text)+1)*sizeof(WCHAR)); I'm trying to compile an SDL2 application for windows using the mingw-w64 32bit toolchain provided by my distro (Fedora 19). However, even the simplest test program that does nothing at all fails to startup with a "Fatal error - out of memory" message because the mingw iconv library provided by my distro does not support the "UCS-2-INTERNAL" encoding and the conversion returns null. From my little bit of research, it turns out that even though this encoding is supported by the external GNU libiconv library, some glibc versions (?) don't support it with their internal iconv routines, and will instead provide the native endian encoding when "UCS-2" is specified. Nonetheless, I wonder why the native endianness is considered in the first place when Windows doesn't even run on any big endian archs (to my knowledge). And true enough, 'WIN_StringToUTF8' from core/windows/SDL_windows.h is used everywhere else in the windows backend, which is just a macro to iconv with "UTF-16LE" as source. Therefore it would IMO make sense to use this macro here as well, which would solve my problem (patch attached).
Fri, 28 Nov 2014 04:42:46 -0800 Fixed bug 2676 - xdnd_version check issue in case ClientMessage
Sam Lantinga <slouken@libsdl.org> [Fri, 28 Nov 2014 04:42:46 -0800] rev 9245
Fixed bug 2676 - xdnd_version check issue in case ClientMessage Nitz I added xdnd_version check to XdndPosition case also under DEBUG_XEVENTS macro. by this we can get the action requested by user. I analysed further and found out that removing xdnd_version check at XdndDrop case is a bad idea because in XConvertSelection API timestamp should be passed if(xdnd_version >= 1) otherwise CurrentTime should be passed So xdnd_version check is important at XdndDrop case I made xdnd_version as a static so that it can store the version in other cases also.
Fri, 28 Nov 2014 04:37:50 -0800 Fixed bug 2411 - Even if built with --enable-clock_gettime, SDL2 still calls gettimeofday()
Sam Lantinga <slouken@libsdl.org> [Fri, 28 Nov 2014 04:37:50 -0800] rev 9244
Fixed bug 2411 - Even if built with --enable-clock_gettime, SDL2 still calls gettimeofday() Ben Swick Makes SDL_syscond.c and SDL_syssem.c use clock_gettime(CLOCK_REALTIME) when HAVE_CLOCK_GETTIME is defined.
Sun, 02 Nov 2014 20:55:13 -0800 iOS: Added support for iOS 8 LaunchScreen NIBs.
Eric Wing <ewing . public |-at-| gmail . com> [Sun, 02 Nov 2014 20:55:13 -0800] rev 9243
iOS: Added support for iOS 8 LaunchScreen NIBs. iOS 8 introduces LaunchScreen NIBs which use autolayout to handle all devices and orientations with a single NIB instead of multiple launch images. This is also the only way to get the App Store badge "Optimized for iPhone 6 and iPhone 6 Plus". So if the application is running on iOS 8 or greater AND has specified a LaunchScreen in their Info.plist, this patch will use the NIB as the launch screen. Otherwise, the code falls back to the legacy code path. Note: Upon audit of the legacy path, it appears that it does not properly handle the UILaunchImages Info.plist convention. I've added comments inline to the code about this. However, in about a year from now, nobody is going to care about this path since everybody should be using LaunchScreen NIBs.
Thu, 27 Nov 2014 09:55:34 -0500 WinRT: added SDL_HINT_WINRT_PREF_PATH_ROOT
David Ludwig <dludwig@pobox.com> [Thu, 27 Nov 2014 09:55:34 -0500] rev 9242
WinRT: added SDL_HINT_WINRT_PREF_PATH_ROOT SDL_HINT_WINRT_PREF_PATH_ROOT allows WinRT apps to alter the path that SDL_GetPrefPath() returns. Setting it to "local" uses the app's OS-defined Local folder, setting it to "roaming" uses the app's OS-defined Roaming folder. Roaming folder support is not available in Windows Phone 8.0. Attempts to make SDL_GetPrefPath() return a Roaming folder on this OS will be ignored. Various bits of documentation on this were added to SDL_hints.h, and to README-winrt.md
Thu, 27 Nov 2014 08:50:11 -0500 WinRT: removed a completed TODO item from an inline comment
David Ludwig <dludwig@pobox.com> [Thu, 27 Nov 2014 08:50:11 -0500] rev 9241
WinRT: removed a completed TODO item from an inline comment
Wed, 26 Nov 2014 21:34:15 -0500 WinRT: added initial SDL_TEXTINPUT support
David Ludwig <dludwig@pobox.com> [Wed, 26 Nov 2014 21:34:15 -0500] rev 9240
WinRT: added initial SDL_TEXTINPUT support Further support regarding IME and on-screen keyboards is pending, some of which might not be 100% compatible with other platforms, given WinRT platform restrictions. An MSDN article at http://msdn.microsoft.com/en-us/library/windows/apps/hh465404.aspx indicates that on-screen keyboard display requires that the user first tap on a Windows/XAML text control. This change adds basic SDL_TEXTINPUT support, with input coming from hardware keyboards, at a minimum, and without the need for XAML integration (which is still pending integration into SDL, by and large).
Tue, 25 Nov 2014 22:37:12 +0100 Corrected header file guard comments.
Philipp Wiesemann <philipp.wiesemann@arcor.de> [Tue, 25 Nov 2014 22:37:12 +0100] rev 9239
Corrected header file guard comments.
Tue, 25 Nov 2014 22:31:14 +0100 Fixed limitation for number of custom main() arguments on Android.
Philipp Wiesemann <philipp.wiesemann@arcor.de> [Tue, 25 Nov 2014 22:31:14 +0100] rev 9238
Fixed limitation for number of custom main() arguments on Android. Limitation was size of the reference table because local refs were not deleted.
(0) -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 tip