Ryan C. Gordon
fc4402e5ff
coreaudio: Better handling of audio buffer queue management.
...
We don't fill buffers just to throw them away during shutdown now, we let the
AudioQueue free its own buffers during disposal (which fixes possible warnings
getting printed to stderr by CoreAudio), and we stop the queue after running
any queued audio during shutdown, which prevents dropping the end of the
audio playback if you opened the device with an enormous sample buffer.
Fixes Bugzilla #3555 .
2017-05-24 13:25:31 -04:00
Charlie Birks
126e5a1dbf
Emscripten: Prevent default on arrow keys
2017-05-24 14:04:39 +01:00
Patrick Monaghan
f839b209b9
Emscripten: fixed incorrect conversion of touch motion events to mouse motion events
2017-05-24 14:04:25 +01:00
Ryan C. Gordon
3fd35f6bb0
coreaudio: looks like we need more like a 10ms buffer minimum, not 50ms.
2017-05-24 01:28:03 -04:00
Ryan C. Gordon
793c788b1c
coreaudio: dynamically allocate AudioQueueBuffers.
...
We need more than two buffers to flip between if they are small, or CoreAudio
won't make any sound; apparently it needs X milliseconds of audio queued when
it needs to play more or it drops any queued buffers. We are currently
guessing 50 milliseconds as a minimum, but there's probably a more proper
way to get the minimum time period from the system.
Fixes Bugzilla #3656 .
2017-05-24 00:12:22 -04:00
Philipp Wiesemann
088f57a62a
Removed unnecessary call to free() in testoverlay2 program.
2017-05-20 23:30:47 +02:00
Philipp Wiesemann
fa3944ba39
Removed unused signal includes and handler in test programs.
2017-05-20 23:30:32 +02:00
Philipp Wiesemann
bf8ccf08bb
Removed redundant mouse clean up on quit for some platforms.
...
SDL_MouseQuit() already frees cursors and sets fields to NULL.
2017-05-19 23:30:59 +02:00
Ryan C. Gordon
a9c7bc85f1
android: add screenSize to AndroidManifest's configChanges (thanks, Daniel!).
...
Fixes Bugzilla #3448 .
"Starting with Android API 13, another configuration change must be declared
to be handled by the app if it is desired to not let the system handle
rotation itself:
https://developer.android.com/guide/topics/resources/runtime-changes.html#HandlingTheChange
This will have effect if either a developer or SDL per default will set target
API > 12. Currently it is set to 12, but this might change in the future, like
when applying this patch: https://bugzilla.libsdl.org/show_bug.cgi?id=3445
The effect of not having this change applied is that the SDL app is destroyed
upon rotation. Even when the manifest has an additional entry to e.g. always
stay in landscape mode, the onDestroy() call will happen on devices that are
portrait per default, when switching off screen due to power save. The device
will then (at least try to) rotate into portrait to show the portrait screen
lock after resume.
I believe it is safe to apply this patch even with target API still set to 12,
the additional parameter is simply ignored."
2017-05-19 15:06:05 -04:00
Ryan C. Gordon
e889757bb3
assert: Better Emscripten support.
...
(Better than nothing, that is.)
Fixes Bugzilla #3459 .
2017-05-19 14:51:03 -04:00
Ryan C. Gordon
d6f418641d
assert: Check for Clang _and_ GCC, in case they ever drop compatibility.
2017-05-19 14:49:16 -04:00
Ryan C. Gordon
8917f8634d
assert: allow assertions to work on platforms without threads.
...
Partially fixes Bugzilla #3459 .
2017-05-19 12:54:17 -04:00
Ryan C. Gordon
91e6054b03
wasapi: don't mark capture devices as failed for AUDCLNT_S_BUFFER_EMPTY.
...
Fixes Bugzilla #3633 .
2017-05-19 12:40:55 -04:00
Ryan C. Gordon
02773811b3
render: GL_DestroyRender() should activate first.
...
Otherwise, we might destroy a different GL context's resources.
2017-05-18 21:00:11 -04:00
Ryan C. Gordon
cff9e5a876
test: info now reports usable display bounds and DPI (thanks, Eric!).
...
Fixes Bugzilla #3652 .
2017-05-18 16:29:10 -04:00
Ryan C. Gordon
81ab6c98fd
Patched to compile on Windows.
2017-05-18 16:27:36 -04:00
Ryan C. Gordon
13b6d9959a
wasapi: Replace tabs with strings in source code.
2017-05-18 15:46:06 -04:00
Ryan C. Gordon
adabc38439
wasapi: Deal with AUDCLNT_S_BUFFER_EMPTY when flushing audio device.
2017-05-18 15:43:51 -04:00
Ryan C. Gordon
4073a6694f
audio: One more callbackspec fix (thanks, Simon!).
2017-05-18 15:33:17 -04:00
Sam Lantinga
772407627b
Fixed restoring a window that was maximized then minimized, then restored.
2017-05-16 17:48:57 -07:00
Sam Lantinga
ccf0566ca4
SDL - add SDL_WINDOW_VULKAN and make Android_CreateWindow only create an EGLSurface when SDL_WINDOW_VULKAN is not present. This makes it so the ANativeWindow* can be used with vkCreateAndroidSurfaceKHR, otherwise it will fail because having both an EGLSurface and VkSurfaceKHR attached to a window is not allowed according to the Vulkan spec:
...
"In particular, only one VkSurfaceKHR can exist at a time for a given window. Similarly, a native window cannot be used by both a VkSurfaceKHR and EGLSurface simultaneously"
CR: SamL
2017-05-16 06:30:39 -07:00
Philipp Wiesemann
a0aff76416
Added missing path in porting README.
2017-05-13 23:01:04 +02:00
Philipp Wiesemann
df4cf79d42
directfb: Fixed compiler warnings about undefined functions.
2017-05-13 23:00:53 +02:00
Philipp Wiesemann
29222db7f6
emscripten: Fixed not removing pointer lock event callback.
2017-05-13 23:00:35 +02:00
Philipp Wiesemann
cc5b4f450a
emscripten: Changed internal functions to be static.
2017-05-12 23:01:17 +02:00
Philipp Wiesemann
ce01128adf
Fixed warnings about shadowed global variable.
...
Found by buildbot.
2017-05-12 23:01:04 +02:00
Philipp Wiesemann
87e0d812dd
directfb: Removed duplicate comment.
2017-05-12 23:00:40 +02:00
Philipp Wiesemann
61c326e12b
directfb: Fixed typo in log message.
2017-05-11 23:00:39 +02:00
Philipp Wiesemann
75c0d1ef6d
directfb: Fixed compiler warnings about unused variables.
2017-05-11 23:00:21 +02:00
Ryan C. Gordon
c878b59bbe
audio: fixed more "spec" references that should have been "callbackspec".
...
This should catch all the ones for audio targets that have provided their
own audio threads.
2017-05-10 16:18:43 -04:00
Sam Lantinga
8b7ae35356
Fixed build error on Linux
2017-05-09 03:19:58 -07:00
Sam Lantinga
9ac3bb7011
Added support for mixing Qt and SDL on iOS
...
You should call SDL_SetMainReady(), and then customize the QIOSApplicationDelegate like this, in your application code:
/* Additional support for applications mixing Qt and SDL */
@interface QIOSApplicationDelegate : UIResponder <UIApplicationDelegate>
@end
extern "C"
{
void SDL_OnApplicationWillResignActive();
void SDL_OnApplicationDidEnterBackground();
void SDL_OnApplicationWillEnterForeground();
void SDL_OnApplicationDidBecomeActive();
}
@interface QIOSApplicationDelegate (SDL)
- (void)applicationWillResignActive:(UIApplication*)application;
- (void)applicationDidEnterBackground:(UIApplication*)application;
- (void)applicationWillEnterForeground:(UIApplication*)application;
- (void)applicationDidBecomeActive:(UIApplication*)application;
@end
@implementation QIOSApplicationDelegate (SDL)
- (void)applicationWillResignActive:(UIApplication*)application
{
SDL_OnApplicationWillResignActive();
}
- (void)applicationDidEnterBackground:(UIApplication*)application
{
SDL_OnApplicationDidEnterBackground();
}
- (void)applicationWillEnterForeground:(UIApplication*)application
{
SDL_OnApplicationWillEnterForeground();
}
- (void)applicationDidBecomeActive:(UIApplication*)application
{
SDL_OnApplicationDidBecomeActive();
}
@end // QIOSApplicationDelegate
2017-05-09 10:10:42 -07:00
Philipp Wiesemann
60f2848421
haiku: Fixed crash on quit if max number of joysticks was connected.
2017-05-07 21:02:46 +02:00
Philipp Wiesemann
b7b919078f
haiku: Changed internal function to be static.
2017-05-07 21:02:31 +02:00
Philipp Wiesemann
3ed2f0ca10
haiku: Fixed unlocking clipboard twice.
2017-05-07 21:02:16 +02:00
Philipp Wiesemann
4466b93141
haiku: Fixed comment.
2017-05-06 21:46:11 +02:00
Philipp Wiesemann
34747107fe
mir: Fixed memory leak if system cursor id is unknown.
2017-05-06 21:46:00 +02:00
Philipp Wiesemann
34d9c5213c
emscripten: Fixed return type in event callback declaration.
2017-05-06 21:45:43 +02:00
Sam Lantinga
bf4e7eb612
Fixed comment typo
2017-05-05 05:10:30 -07:00
Alex Szpakowski
75fb07a6d2
iOS: Only mark interrupted audio devices as non-interrupted if AudioQueueStart is successful.
2017-05-03 18:05:29 -03:00
Ryan C. Gordon
ce2998b8b9
cocoa: Don't crash on messagebox keypress without a successful SDL_Init().
2017-05-02 21:46:28 -04:00
Ryan C. Gordon
d00dfc434e
Fixed another AC_DEFINE.
2017-05-02 11:31:14 -04:00
Ryan C. Gordon
3f7f65a36d
Fixed configure script.
...
The Haiku patch would define some HAVE_* things to /**/ instead of 1, breaking
the build for various things.
2017-05-02 11:16:58 -04:00
Ryan C. Gordon
619ab7a22d
haiku: Various fixes from haikuports.
...
Based on patch here:
https://github.com/haikuports/haikuports/blob/master/media-libs/libsdl2/patches/libsdl2-2.0.5.patchset
2017-05-01 18:39:05 -04:00
Philipp Wiesemann
444c47a1b8
windows: Changed six internal functions to be static.
2017-04-29 22:50:35 +02:00
Philipp Wiesemann
89499a0836
Removed unused field in loopwavequeue program.
...
Found by Cppcheck.
2017-04-29 22:50:23 +02:00
Sam Lantinga
d7cd653737
Added Steam Controller mappings for Linux and iOS
2017-04-27 15:52:37 -07:00
Ryan C. Gordon
226541cb5b
audio: another wrong struct that causes NULL pointer crash (thanks, Simon!).
...
Fixes Bugzilla #3632 .
2017-04-26 01:43:40 -04:00
Joshua Granick
1286a7d23e
windows: Add SDL_WINDOW_ALWAYS_ON_TOP support.
2017-04-20 21:31:44 -04:00
Juha Kuikka
7382cebb41
audio: Fix audio queue functions to use new spec structure.
...
Using the old spec structure causes the audio queueing functions to fail
due to bad callback pointers being checked.
2017-04-20 21:25:29 -04:00