Commit Graph

7607 Commits

Author SHA1 Message Date
Alex Szpakowski
2bbdea71c1 Merged default into iOS-improvements
--HG--
branch : iOS-improvements
2014-08-06 03:32:59 -03:00
Alex Szpakowski
19f09c82c3 Updated the iOS backend code to use Objective-C's automatic reference counting (ARC).
--HG--
branch : iOS-improvements
2014-08-06 03:24:16 -03:00
Sam Lantinga
90c885ed9b Haptics aren't available on iOS, but use the dummy implementation instead of failing init if it's requested. 2014-08-05 21:03:02 -07:00
Alex Szpakowski
363f84f3b7 Minor code update for less verbosity
--HG--
branch : iOS-improvements
2014-08-06 00:45:11 -03:00
Alex Szpakowski
c11f89e140 Merged branch default into iOS-improvements
--HG--
branch : iOS-improvements
2014-08-04 15:30:53 -03:00
Alfred Reynolds
b14ad43a87 SDL - when raising the window under OSX also force the app to activate. This fixes a fullscreen window on a separate space not coming front when raisewindow is called. 2014-07-31 12:46:23 -07:00
Alex Szpakowski
6a15f46238 Merged 'default' into branch 'iOS-improvements'
--HG--
branch : iOS-improvements
2014-07-31 03:14:10 -03:00
Alfred Reynolds
cb63cc9436 SDL - fix re-entrancy into SDL_UpdateFullscreenMode under OSX. During HideWindow we get a RESTORED event which then turns fullscreen back on causing a hang in Cocoa_SetWindowFullscreenSpace waiting for the fullscreen transition to finish. 2014-07-30 17:45:52 -07:00
Ryan C. Gordon
3589da6bd2 Make SDL_SysWMinfo usable on Mac/iOS with ARC enabled (thanks, Alex!).
Fixes Bugzilla #2641.
2014-07-30 14:14:19 -04:00
Ryan C. Gordon
3789e46088 Fixed comment typo. 2014-07-30 14:12:54 -04:00
Ryan C. Gordon
388c3c5853 SDL_GetQueuedAudioSize() shouldn't grab lock when not set up for queueing. 2014-07-30 11:11:48 -04:00
Ryan C. Gordon
f7c29bcb2a Added a GetPendingBytes method to the audio backend.
This will (eventually) make SDL_GetQueuedAudioSize() more accurate, and thus
reduce latency. Right now this isn't implemented anywhere, so we assume data
fed to the audio callback is consumed by the hardware and immediately played
to completion.
2014-07-30 11:08:31 -04:00
Ryan C. Gordon
3049139f10 XAudio2: Use XAUDIO2_VOICE_NOSAMPLESPLAYED when possible.
For versions of XAudio2 with an IXAudio2SourceVoice::GetState() that offers a
flags parameter, we can use XAUDIO2_VOICE_NOSAMPLESPLAYED, since we don't
need this information in our current calls. According to MSDN, this makes the
the call about 3x faster.
2014-07-30 09:54:01 -04:00
Sam Lantinga
abc66099f9 Moved documentation to docs, recreated a simple README.txt, fixed build 2014-07-29 08:04:15 -07:00
Gabriel Jacobo
4f3a0f0ff1 Rearrange documentation
1) Moves all READMEs to docs/
2) Renames them to *.md, adds some Markdown with the idea to add a lot more
3) Moves the doxyfile config to doc/ and makes it parse the headers at ../include as well as the md files in docs.
4) Skips SDL_opengl*.h headers from the docs
5) Minor fixes to doxyfile
2014-07-29 09:20:12 -03:00
Alex Szpakowski
c5273b470a Added missing autorelease pool blocks in UIKit backend code. Fixes memory leak issues, especially in SDL_video.
--HG--
branch : iOS-improvements
2014-07-29 00:36:12 -03:00
Alex Szpakowski
9236ac4d12 Added support for SDL_SetWindowBordered on iOS. Worked around a bug with rotating the device on iOS 8.
--HG--
branch : iOS-improvements
2014-07-29 00:05:48 -03:00
Ryan C. Gordon
d9bca52776 Changed local var names in SDL assert macro.
Otherwise, if someone added an assert to a function that has a variable
named "state", the compiler might warn about shadowing a local.
2014-07-28 10:54:25 -04:00
Sam Lantinga
9285ade794 Turned on OmitDefaultLibName for SDL, SDLmain and SDLtest 2014-07-27 19:56:53 -07:00
Ryan C. Gordon
849b3144f4 Remove dependency on C runtime from Windows SDLmain. 2014-07-27 19:52:52 -04:00
Sam Lantinga
b5bb6cf028 Fixed bug 2537 - _allmul in SDL_lib.c is not working properly 2014-07-27 17:44:10 -07:00
Sam Lantinga
c5265de0cd Fixed uninitialized variable in some cases 2014-07-27 17:43:36 -07:00
Alex Szpakowski
910ce857ee Fixed SDL_SetWindowFullscreen on iOS causing the window's reported dimensions and supported orientations to go out of sync with what they should be, if the device orientation was different from the screen orientation when the function call was made.
--HG--
branch : iOS-improvements
2014-07-24 22:35:25 -03:00
Alex Szpakowski
c6cfeb01ed Integrated Phil Hassey's patch to fix SDL_IsScreenKeyboardShown on iOS (https://bugzilla.libsdl.org/show_bug.cgi?id=2660)
--HG--
branch : iOS-improvements
2014-07-23 22:35:14 -03:00
Alex Szpakowski
1d49e01dd2 Fixed SDL_SetWindowFullscreen on iOS for the last time, hopefully.
Fixed iOS version checking code.

--HG--
branch : iOS-improvements
2014-07-23 21:55:42 -03:00
Alex Szpakowski
128b57f726 More cleanup of the iOS Objective-C code.
--HG--
branch : iOS-improvements
2014-07-23 03:05:31 -03:00
Alex Szpakowski
f42c9c3da6 90% of iOS users on the App Store run at least iOS 7, so it doesn't make sense to support building using an SDK that doesn't support iOS 7. The minimum supported runtime version is still iOS 5.1.
--HG--
branch : iOS-improvements
2014-07-23 01:33:59 -03:00
Alex Szpakowski
48be56f855 Updated the iOS Objective-C code to use NSDictionary/NSArray/NSNumber literals and subscripting, for improved code clarity.
This requires at least Xcode 4.5 and the iOS 6 SDK to build, but it doesn't change the minimum supported runtime version (iOS 5.1). Less than 2% of iOS users are running iOS 5, so I hope developers aren't trying to build SDL using an SDK which doesn't support iOS 6/7...

--HG--
branch : iOS-improvements
2014-07-23 01:28:24 -03:00
Ryan C. Gordon
01187b701d Added audio device buffer queueing API. 2014-07-22 21:41:49 -04:00
Sam Lantinga
f9a3766218 Fixed bug 2657 - Memory leak in GL_CreateTexture function
Nitz

In GL_CreateTexture function:

if (GL_CheckError("glGenTexures()", renderer) < 0) {
        SDL_free(data);
        return -1;
    }

Here only data is getting free but data->pixels getting leak.
So have to free data->pixels before free data.
2014-07-26 16:52:26 -07:00
Ryan C. Gordon
41721f2869 Clarifying hard-to-understand piece of code. 2014-07-22 23:12:21 -04:00
Alex Szpakowski
500c83574e Cleaned up iOS OpenGL ES context creation code and added sRGB context support on iOS 7+
--HG--
branch : iOS-improvements
2014-07-22 20:06:13 -03:00
Alex Szpakowski
db1c9ca743 Fixed SDL_SetWindowFullscreen on iOS to properly update the view's frame.
--HG--
branch : iOS-improvements
2014-07-22 16:48:35 -03:00
Alex Szpakowski
d8df823b06 The default implementation of [view layoutSubviews] actually does something in iOS 6+, so we should call [super layoutSubviews] when overriding it.
--HG--
branch : iOS-improvements
2014-07-21 02:46:53 -03:00
Brandon Schaefer
d50b6d8f85 Dont redeclare DBusMessage* msg; 2014-07-18 14:10:45 -07:00
Alex Szpakowski
112da3a04e Disabled the custom iOS splashscreen code - it interferes with the normal rotation and orientation behaviour of SDL windows.
--HG--
branch : iOS-improvements
2014-07-17 22:55:59 -03:00
Alex Szpakowski
693fbbd777 Properly send a window resize event in all cases when viewDidLayoutSubviews is triggered.
--HG--
branch : iOS-improvements
2014-07-17 18:05:12 -03:00
Alex Szpakowski
be90525399 Fixed SDL_HINT_ORIENTATIONS to properly allow disabling custom orientations if the hint is set with no valid orientations.
--HG--
branch : iOS-improvements
2014-07-16 21:06:15 -03:00
Alex Szpakowski
ab8af640d6 The iOS 7 transparent status bar now uses white text rather than black.
--HG--
branch : iOS-improvements
2014-07-16 20:05:00 -03:00
Alex Szpakowski
aee631f387 Fixed SDL_SetWindowFullscreen not properly updating the status bar visibility in iOS 7+
--HG--
branch : iOS-improvements
2014-07-16 16:12:20 -03:00
Alex Szpakowski
fc867e8e30 Minor fix for if SDL_JoystickInit is called more than once without a matching SDL_JoystickQuit.
--HG--
branch : iOS-improvements
2014-07-15 02:04:08 -03:00
Alex Szpakowski
9e004cf9cb iOS now respects SDL_HINT_ACCELEROMETER_AS_JOYSTICK.
--HG--
branch : iOS-improvements
2014-07-15 02:01:43 -03:00
Alex Szpakowski
697bf971b4 Changed the way retina resolutions are handled in iOS.
Previously, SDL would always expose display modes and window dimensions in terms of pixels, and would add an extra 'fake' display mode on retina screens which would contain the non-retina resolution. Calling SDL_CreateWindow with the dimensions of that fake display mode would not work.

Now, SDL only exposes display modes and window dimensions in terms of points rather than pixels. If the SDL_WINDOW_ALLOW_HIGHDPI flag is passed into SDL_CreateWindow, then any OpenGL contexts created from that window will be sized in pixels rather than points (retrievable with SDL_GL_GetDrawableSize.) Window dimensions and mouse coordinates are still in terms of points rather than pixels even with that flag.

This matches the behavior of SDL in OS X more closely, and lets users choose whether to make use of retina displays and lets them handle it properly.

--HG--
branch : iOS-improvements
2014-07-14 22:35:48 -03:00
Alex Szpakowski
8e811c6753 Misc. iOS code improvements.
- Use @autoreleasepool instead of NSAutoReleasePool.

- Code style fixups.

--HG--
branch : iOS-improvements
2014-07-14 16:50:25 -03:00
Sam Lantinga
0d141fb3e6 Fixed bug 2640 - Unable to SDL_SetRenderTarget to original surface for software renderer without a window
Damian Kaczmarek

Basically this bug is probably not a common use case. My goal is to allow rendering totally without a window, for example to a screenshot and I need to rely on SDL_SetRenderTarget to properly work for a purely software renderer created by SDL_CreateSoftwareRenderer.
2014-07-13 09:04:55 -07:00
Sam Lantinga
73e5bf597b Fixed bug 2639 - SDL_BLENDMODE_BLEND not working properly for software renderer, thanks to Melker Narikka 2014-07-12 16:21:56 -07:00
Sam Lantinga
ebdb8f10c0 Fixed bug 2638 - (Signed) Can't create signed apps in Android
Pablo Mayobre

When generating a signed app with SDL 2.0.3 an issue comes up, watching at the Error Log points out that the issue lies in the src/main/android/SDL_android_main.c where the process name is defined as "SDL_app", this name turns into an erroneous name so it should be changed to "app_process"
2014-07-12 13:05:41 -07:00
Sam Lantinga
047e51c720 Fixed Visual Studio 2010 build 2014-07-11 22:15:34 -07:00
Sam Lantinga
726c9f8969 Fixed build for arm platforms 2014-07-11 22:14:14 -07:00
Sam Lantinga
7f1561039c Fixed bug in AVX detection and added AVX2 detection 2014-07-11 22:02:50 -07:00