|
2a885eb0
|
2019-01-04T23:39:27
|
|
Android: fixed immediate transition to pause and resume.
"Pause" transition will add events:
SDL_WINDOWEVENT_ENTER
SDL_WINDOWEVENT_FOCUS_LOST
SDL_WINDOWEVENT_MINIMIZED
SDL_APP_WILL ENTER BACKGROUND
SDL_APP_DID ENTER BACKGROUND
"Resume" transition will add events:
SDL_APP_WILL ENTER FOREGROUND
SDL_APP_DID ENTER FOREGROUND
SDL_WINDOWEVENT_FOCUS_GAINED
SDL_WINDOWEVENT_RESTORED
If Android application doesn't empty the event loop in between, it enters in
"paused" state when SDL_WINDOWEVENT_RESTORED is fetched.
See bug 3250 for pratical case.
|
|
cf122344
|
2019-01-04T23:11:21
|
|
Android: make Android_PumpEvents() more readable
No behavior change in this commit.
|
|
ca184ac3
|
2019-01-03T23:22:50
|
|
Android: concurrency issue with egl_surface EGL_BAD_SURFACE - (bug 4142)
Occurs when application goes to background:
- Java activity is destroying SurfaceView holder and "egl_surface" (in onNativeSurfaceDestroyed())
- While native thread is in Android_GLES_SwapWindow(), prepared to call SDL_EGL_SwapBuffers()
The error is "call to eglSwapBuffers failed, reporting an error of EGL_BAD_SURFACE"
It an be reproduced easily by adding a SDL_Delay(100) at the begining of SDL_EGL_SwapBuffers(),
and putting the application into background.
|
|
2e19343d
|
2019-01-03T20:18:29
|
|
Android: use Mutex instead of Semphore for bug 4142
|
|
23478642
|
2019-01-03T16:22:33
|
|
Android: prevent the error message from SDL_EGL_CreateSurface() to be masked.
|
|
cc8f1136
|
2019-01-03T14:18:06
|
|
Fixed bug 4142 - Concurrency issues in Android backend
Use a semaphore to prevent concurrency issues between Java Activity and Native thread code, when using 'Android_Window'.
(Eg. Java sending Touch events, while native code is destroying the main SDL_Window. )
|
|
d11f7615
|
2019-01-03T13:38:33
|
|
Android: minor preparation for bug 4142 (concurrency issues)
|
|
5dc25fef
|
2019-01-03T13:14:16
|
|
Android: preparation bug 4142, reduce usage of global variable Android_Window
|
|
a95f91bc
|
2019-01-02T18:06:33
|
|
Fixed bug 3250 - Wrong backbuffer pixel format on Android, keep getting RGB_565
Use the egl format to reconfigure java SurfaceView holder format.
If there is a change, it triggers a surfaceDestroyed/Created/Change sequence.
|
|
a02998a2
|
2019-01-02T17:41:33
|
|
Android: make sure surfaceChanged try to enter into 'resumed' state.
|
|
4d2b5c79
|
2019-01-02T17:08:01
|
|
Fixed bug 4424 - Android windowed mode is broken (Thanks Jonas Thiem!)
|
|
03b0e1de
|
2018-12-30T22:44:25
|
|
Android: on rare occasion, prevent Android_JNI_GetNativeWindow() from crashing
If Java getNativeSurface() returns null, then ANativeWindow_fromSurface() would crash().
|
|
1e22fc15
|
2018-12-30T15:41:28
|
|
Android: fixed comments and spaces
|
|
2a412eb9
|
2018-12-30T15:39:37
|
|
Fixed bug 3186 - Android SW keyboard not restored when app becomes foreground.
|
|
d09774a4
|
2018-12-30T14:23:25
|
|
Fixed bug 3511 - documentation to end an Android application
|
|
9cdd0dd9
|
2018-12-29T17:59:34
|
|
PSP renderer: use colors from 'draw' union (very likely, but un-tested)
|
|
ebd9efb3
|
2018-12-29T16:37:44
|
|
opengles 1: same fix as in bug #4433
|
|
87b76369
|
2018-12-29T16:34:50
|
|
opengles 1: use color from 'draw' union in SetDrawState()
|
|
dc344360
|
2018-12-21T20:53:31
|
|
render: Fix internal state getting out of sync when destroying a texture that was just rendered and then creating a new one, in the GL and GLES2 backends. Fixes bug #4433.
|
|
0a705901
|
2018-12-19T18:10:02
|
|
render: Prefer the Metal renderer over OpenGL.
This is the best option for macOS and iOS, the only platforms with Metal.
Pre-Metal versions of these platforms will fall back to OpenGL (ES), as
appropriate.
Huge thanks to Alexander Szpakowski, who worked incredibly hard to get the
Metal renderer to such a high-quality state!
|
|
c7db6ade
|
2018-12-19T18:27:21
|
|
metal: Implement SDL_LockTexture for YUV formats.
|
|
ce8c716a
|
2018-12-18T14:23:05
|
|
metal: Implement SDL_LockTexture for non-YUV textures.
|
|
c0c8f2d7
|
2018-12-16T11:15:21
|
|
Gesture: remove warnings when ENABLE_DOLLAR is undefined.
|
|
c3e3503e
|
2018-12-16T01:04:07
|
|
testgl2: Press 'o' or 'p' to decrease/increase OpenGL swap interval.
|
|
13869f19
|
2018-12-16T01:03:17
|
|
cocoa: Implement OpenGL swap interval support with CVDisplayLink.
Not only does this fix macOS 10.14 ("Mojave")'s broken NSOpenGLCPSwapInterval
support, it also lets us implement "adaptive vsync" on macOS!
CVDisplayLink is supported back to macOS 10.4 ("Tiger"), so we just use it
universally without version checks and dump NSOpenGLCPSwapInterval, Mojave or
not.
|
|
1ed60219
|
2018-12-15T16:21:24
|
|
Fixed bug 4426 - allows re-creation of software renderer
Switching between renderers "software -> opengl -> opengles2 -> software" fails.
"opengl -> opengles2" calls SDL_RecreateWindow() and frees "window->surface"
without marking it as "surface_invalid".
|
|
18296927
|
2018-12-15T09:57:05
|
|
emscripten: SDL_PrivateJoystickAdded() wants an instance id, not device index.
|
|
e5476c65
|
2018-12-15T14:50:12
|
|
Fixed bug 4425 - promote to alpha format, palette surface with alpha values.
SDL_CreateTextureFromSurface() forgets to choose a texture format with alpha for
surfaces that have palettes with alpha values.
|
|
bd08d72d
|
2018-12-11T20:04:10
|
|
Fixed building with the 10.10 SDK
|
|
98829d37
|
2018-12-11T19:50:58
|
|
Handle both "Sony Interactive Intertainment" and "Sony Computer Entertainment" when ignoring motion sensors
|
|
71b66451
|
2018-12-10T13:32:24
|
|
Rename _SDL_sensor_h in public header, not to trigger Wreserved-id-macro
|
|
39e8e395
|
2018-12-08T11:22:50
|
|
Fixed bug 4379 - fix parallel build with slibtool
orbea
I am having a parallel build problem with -j3 or higher using the autotools build and slibtool instead of GNU libtool. Basically slibtool is faster than GNU libtool and it will start working before mkdir starts or finishes creating the build/ directory.
|
|
1c9595b1
|
2018-12-08T11:06:40
|
|
Fixed bug 4415 - SDL menu bar is nonstandard on Mac
foo.null
I'm on macOS 10.14 and I think I'm using or around SDL 2.0.9. This is about the menu bar that SDL sets up which looks like:
<App Name> <Window> <View>
1. View menu never proceeds after the Window menu in any Mac application (it is always before).
2. For SDL, the only purpose of the View menu is for a single fullscreen menu item, which is not justifiable enough to reserve space for a menu. The View menu should thus be removed, and the full screen menu item should be added at the end inside of Window's menu. See built in apps like Dictionary, Chess, App Store (on 10.14) that do this.
3. SDL should add a "Close" menu item to the Window's submenu, and it should be the first item. Its key equivalent should map to command w. Without this, you cannot close the game window via this shortcut, and you cannot close the app's About window via this shortcut.
4. Apps typically use "Enter Full Screen" or "Exit Full Screen" depending on context, not "Toggle Full Screen" which is less user friendly -- I personally care about this point the least.
|
|
70ce0f2e
|
2018-12-07T12:02:08
|
|
Added the hint SDL_HINT_GAMECONTROLLERCONFIG_FILE to specify a file to load at initialization containing SDL game controller mappings
|
|
0b6e24f7
|
2018-12-06T14:26:18
|
|
Linux Haptic: Fix periodic.magnitude value
|
|
898644d1
|
2018-12-06T09:09:05
|
|
Made it more clear that the values being compared are floats
|
|
f9192ab8
|
2018-12-06T10:39:33
|
|
wayland: Do not try to lock on an invalid pointer
This happens if you try to lock the pointer and (caps & WL_SEAT_CAPABILITY_POINTER) is false
Leading to input->pointer being NULL which ends up bringing the wayland client down (at lease on weston)
|
|
7468d1e0
|
2018-12-06T15:46:40
|
|
Fix warnings detected on Android build
|
|
39ec1699
|
2018-12-06T10:24:44
|
|
opengles2: fix prototype of glDeleteBuffers
|
|
252dc85e
|
2018-12-06T09:22:00
|
|
Fix warnings detected on Android build
|
|
a7563bcd
|
2018-12-05T19:03:15
|
|
joystick: Removed unused variable.
|
|
c7b71371
|
2018-12-05T17:53:38
|
|
Whoops, forgot to add a new source file. :/
|
|
6ed76ae1
|
2018-12-05T14:46:03
|
|
Fixed the ROCCAT Tyon mouse showing up as a joystick on Windows
|
|
fbead635
|
2018-12-05T16:55:59
|
|
joystick: Added controller config for IMS Passenger Control Unit Devices.
|
|
2878d4f8
|
2018-12-05T16:53:15
|
|
egl: Don't force X11 support when testing for EGL.
Fixes building Wayland support on embedded systems without X11.
(TODO: maybe move the EGL test out of the X11 tests at some point, too.)
|
|
1689e9f9
|
2018-12-05T16:51:22
|
|
linux: Move SDL_LinuxSetThreadPriority() elsewhere to fix build.
Fixes Bugzilla #4393.
|
|
bd3ee07c
|
2018-12-05T16:49:38
|
|
wayland: Send SDL_TOUCH_MOUSEID mouse events for touches.
|
|
6259a726
|
2018-12-05T16:13:12
|
|
Warnings: fix a documentation warning and missing prototypes
|
|
db320e46
|
2018-12-04T14:21:29
|
|
Fixed the PS4 motion controls showing up as a separate game controller on Linux
|
|
69c256c1
|
2018-12-04T18:15:45
|
|
Fix comment and end of lines
|
|
f64c9433
|
2018-12-04T17:13:13
|
|
Update comment URL of USB document (HID Usage Tables 1.12)
|
|
09b46204
|
2018-12-04T16:50:31
|
|
Windows: NEON detection and intrinsic includes on Visual Studio
Visual Studio doesn't define __ARM_ARCH nor _ARM_NEON, but _M_ARM and _M_ARM64,
so SDL_HasNEON() was bypassed.
PF_ARM_NEON_INSTRUCTIONS_AVAILABLE doesn't see to be defined (but still works
when defined as 19).
|
|
aea7e56a
|
2018-12-04T12:34:45
|
|
android: use __ARM_NEON instead of __ARM_NEON__ to include <arm_neon.h>
Only __ARM_NEON is defined with Android NDK and arm64-v8a
Tested on ndk-r18, ndk-r13 and also Xcode.
(Visual Studio needs a different fix).
Fixes Bugzilla #4409.
|
|
cca9d24c
|
2018-12-03T09:26:05
|
|
direct3d: be more aggressive about resetting invalidated cached state.
Fixes Bugzilla #4402.
|
|
939bf1c4
|
2018-12-03T02:06:17
|
|
render: fix some static analysis warnings.
|
|
33f78eb1
|
2018-12-03T01:58:23
|
|
direct3d: Make sure streaming textures update before being used for drawing.
Fixes Bugzilla #4402.
|
|
b744108a
|
2018-12-02T21:57:33
|
|
Patched to compile on C89 compilers.
|
|
3c936150
|
2018-12-02T20:55:57
|
|
direct3d: Release and NULL out vertex buffers on reset.
Otherwise they are irretrievably lost on window resize, etc, which makes
rendering freeze and other disasters.
Fixes Bugzilla #4358.
|
|
d4a21f54
|
2018-12-02T02:43:32
|
|
cmake: Comment out some debug logging that can upset build environments.
Something about the dashes, colons, numbers makes some builders believe this
is an error message.
|
|
65a7c98c
|
2018-12-02T02:33:06
|
|
directfb: Updated render backend to new internal API.
Totally untested, beyond it now compiles again. Probably needs some fixes.
Fixes Bugzilla #4405.
|
|
583f61b2
|
2018-12-01T16:31:56
|
|
kmsdrm: Check for resources when validating KMSDRM device in check_modesetting.
Fixes Bugzilla #4403.
|
|
b3ac87d5
|
2018-12-01T13:09:00
|
|
kmsdrm: uninitialized KMSDRM fixes
* Search for valid encoder in connector when it doesn't have an
encoder ID set.
* Search for valid CRTC in resources and encoder's possible CRTCs
when encoder doesn't have one set.
* Select default mode if CRTC doesn't have a valid one.
* Pick current_mode's W/H/Refresh Rate basing on current and
valid CRTC mode, not the saved one.
|
|
3323b355
|
2018-12-01T12:19:11
|
|
android: use cpufeatures to support SDL_HasNEON() (thanks, Sylvain!).
Fixes Bugzilla #4406.
|
|
1e4acca8
|
2018-12-01T12:17:34
|
|
Added some detail to a Doxygen comment (thanks, Sylvain!).
|
|
fac40f8e
|
2018-12-01T11:14:20
|
|
Patched to compile on Linux with threads enabled. (whoops!)
|
|
c4bc59a5
|
2018-12-01T10:36:26
|
|
Patched to compile on Linux with --disable-threads.
Fixes Bugzilla #4393.
|
|
f205f3a8
|
2018-11-27T15:10:26
|
|
Added support for the Razer Raiju Mobile
|
|
a95291c9
|
2018-11-27T11:16:04
|
|
Fixed the hotspot for cursors on Raspberry Pi
|
|
aea48357
|
2018-11-27T10:20:29
|
|
Fixed bug changing cursors on Raspberry Pi
|
|
3f0d520a
|
2018-11-26T19:55:01
|
|
SDL_touch.h (SDL_TouchDeviceType): remove comma at end of enumerator list.
|
|
37b1f989
|
2018-11-25T22:13:09
|
|
metal: use a staging texture in SDL_UpdateTexture, to make sure it doesn't stomp texture data being drawn in a previous frame on the GPU.
|
|
7b306bf3
|
2018-11-23T21:29:42
|
|
Added atomics support for armv8-a (Raspberry Pi 3)
|
|
bd0ae0a5
|
2018-11-23T21:11:11
|
|
Do a second pass to find libraries without a single version digit after the .so
This finds libsndio.so.6.1 on Raspberry Pi
|
|
872936a4
|
2018-11-21T23:46:37
|
|
metal: Fix an incorrect division.
|
|
4a58722b
|
2018-11-21T23:37:23
|
|
metal: SDL_RenderFillRects uses one draw call per 16k rectangles (within the given FillRects call), instead of one draw call per rectangle. Reduces CPU usage when drawing many rectangles.
|
|
14e389ea
|
2018-11-20T10:55:00
|
|
minor update to Makefile.os2, added a test/Makefile.os2.
|
|
5c5ba0e3
|
2018-11-19T21:35:59
|
|
Fixed bug 4394 - Crash in SDL_PumpEvents() after SDL_DestroyWindow()
Cameron Gutman
After updating to SDL 2.0.9, I got a user report that my app was crashing when closing a SDL_WINDOW_FULLSCREEN window to return to my Qt-based UI. It looks like the dead SDL window is getting a spurious updateLayer call which is causing SDL to dereference a null SDL_WindowData pointer.
For some reason, this only happens when using SDL_WINDOW_FULLSCREEN and not windowed or SDL_WINDOW_FULLSCREEN_DESKTOP. I was also unsuccessful in my attempt to get a simple reproducer for this crash. The Session.cpp code is available https://github.com/moonlight-stream/moonlight-qt/blob/688c4a90d994aa23e7b0af3ffcbb8707886db780/app/streaming/session.cpp but I slightly modified it (adding a SDL_PumpEvents() call at 1179 to immediately trigger the issue, otherwise it happened when Qt next pumped the event loop).
The crashing line is:
NSMutableArray *contexts = data->nscontexts;
|
|
ac15de18
|
2018-11-19T21:28:52
|
|
Fixed bug 4392 - SDL_cpuinfo.h breaks compilation with C bool type
Luke Dashjr
Bug 3993 was "fixed" by #undef'ing bool. But this breaks C99's stdbool.h bool too.
For example, mpv's build fails with:
../audio/out/ao_sdl.c:35:5: error: unknown type name ?bool?
It seems ill-advised to be #undef'ing *anything* here - what if the code including SDL_cpuinfo.h actually wants to use altivec?
|
|
b73703b9
|
2018-11-19T21:17:00
|
|
Fixed bug 4391 - hid_enumerate() sometimes causes game to freeze for a few seconds
Daniel Gibson
Even though my game (dhewm3) doesn't use SDL_INIT_JOYSTICK, SDL_PumpEvent() calls SDL_JoystickUpdate() which ends up calling hid_enumerate() every three seconds, and sometimes on my Win7 box hid_enumerate() takes about 5 seconds, which causes the whole game to freeze for that time.
|
|
d3fa42b8
|
2018-11-18T19:28:20
|
|
os/2 bits for SDL_malloc.c -- from libffi
|
|
1a02403e
|
2018-11-18T11:50:20
|
|
libm: Watcom defines huge=__huge: undefine it to fix build using Watcom.
|
|
ed8413c9
|
2018-11-18T11:50:02
|
|
Makefile.os2: build libm as a static lib and add it to linkage.
in case it is needed some day.
|
|
457e58c4
|
2018-11-17T16:24:52
|
|
opengles: Fixed compiler warnings.
|
|
9719f89d
|
2018-11-17T12:12:29
|
|
Back out change initializing renderer blend mode incorrectly.
|
|
fde7592a
|
2018-11-17T14:39:42
|
|
direct3d11: Fixed missing rendering of solid primitives.
Fixes Bugzilla #4388.
|
|
782f1685
|
2018-11-17T14:37:51
|
|
Fixed a few compiler warnings.
|
|
29e15ce6
|
2018-11-17T00:58:45
|
|
The default draw blendmode is SDL_BLENDMODE_NONE
|
|
1f6bd951
|
2018-11-15T18:22:30
|
|
Emscripten: make CloseAudio actually close audio
cf. https://bugzilla.libsdl.org/show_bug.cgi?id=4176
|
|
43d47f6b
|
2018-11-15T07:20:02
|
|
fix permissions
|
|
9262c0de
|
2018-11-14T22:38:58
|
|
software: fix blits with color mods that change during a command queue run.
|
|
2e348c1f
|
2018-11-14T13:37:22
|
|
Fixed bug 3193 - Dualshock 3's motion sensors overwrite analog stick
maxxus
The Dualshock 3's motion sensors don't seem to be reported by the call to EVIOCGBIT but they still send EV_ABS events. Because they're not reported by EVIOCGBIT they're not assigned a proper axis ids and the default of 0 is used, which is the valid id for the left analog sticks left/right axis.
|
|
1a4c0d4e
|
2018-11-12T19:23:49
|
|
Fixed bug 4377 - SDL_PIXELFORMAT enum is anonymous, which prevents its use in a templated function
zen3d
While trying to build Pixie lisp (https://github.com/pixie-lang/pixie), which uses SDL for multimedia output, the mandelbrot example won't build. The problem is that internally pixie uses a templated function to dump a value, and gcc chokes because SDL_PIXELFORMAT_RGA8888 is an anonymous enum.
I solved the problem locally by changing from:
enum {
SDL_PIXELFORMAT_UNKNOWN,
... etc. ...
SDL_PIXELFORMAT_YUYV = ... etc ...
};
to:
typedef enum {
SDL_PIXELFORMAT_UNKNOWN,
... etc. ...
SDL_PIXELFORMAT_YUYV = ... etc ...
} SDL_PIXELFORMAT_ENUM;
The net result of this change is that the enum containing SDL_PIXELFORMAT_* is no longer an anonymous enum and can now be used by a templated function.
This local change fixes Pixie lisp for me.
I did notice that you use the idiom
typedef enum {
... etc ...
} SDL_FOO;
elsewhere in your code, so that change to SDL_PIXELFORMAT doesn't look like it would have a negative impact.
|
|
b815ad56
|
2018-11-12T16:42:49
|
|
Fixed bug 4366 - Compile throws a warning on RPI (Raspbian Stretch)
midwan
When trying to compile on a Raspberry Pi 3, running Raspbian Stretch (fully updated), a warning appears:
/home/pi/projects/SDL/src/test/SDL_test_memory.c: In function ?SDL_TrackAllocation?:
/home/pi/projects/SDL/src/test/SDL_test_memory.c:112:109: warning: format ?%llx? expects argument of type ?long long unsigned int?, but argument 5 has type ?unw_word_t {aka unsigned int}? [-Wformat=]
snprintf(entry->stack_names[stack_index], sizeof(entry->stack_names[stack_index]), "%s+0x%llx", sym, offset);
|
|
5e153194
|
2018-11-12T16:34:58
|
|
Fixed bug 4367 - compatibility version decreased between 2.0.8 and 2.0.9
Joshua Root
The change resulting from Bug 4208 changed the compatibility_version of libSDL2 from 9.0.0 to 1.0.0. This is simply wrong.
This means that programs linked against 2.0.9 are considered by the dynamic linker to be compatible with all previous versions of libSDL2. This is not the case since new public symbols have been added.
The way compatibility_version and current_version are meant to work is:
* current_version increases every time the library changes in any way.
* compatibility_version is increased to match current_version whenever new public symbols are added.
Thus both versions should only ever increase. The solution to the Xcode project and autotools not having matching versions should have been to increase the version(s) in the Xcode project.
Reference: https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/VersionInformation.html
|
|
c525ff35
|
2018-11-10T20:56:23
|
|
cocoa: fix building with the macOS 10.7 SDK (thanks Riccardo!)
Fixes bug #4368
|
|
5029d50e
|
2018-11-10T16:15:48
|
|
Add SDL_TouchDeviceType enum and SDL_GetTouchDeviceType(SDL_TouchID id).
Touch device types include SDL_TOUCH_DEVICE_DIRECT (a touch screen with window-relative coordinates for touches), SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE (a trackpad-style device with absolute device coordinates), and SDL_TOUCH_DEVICE_INDIRECT_RELATIVE (a trackpad-style device with screen cursor-relative coordinates).
Phone screens are an example of a direct device type. Mac trackpads are the indirect-absolute touch device type. The Apple TV remote is an indirect-relative touch device type.
|
|
2196e576
|
2018-11-07T07:52:39
|
|
Used confflags +=, so each option can be enabled individually, if desired
|
|
44c5d803
|
2018-11-07T07:38:11
|
|
The Debian maintainers aren't using these rules, so enable dynamic loading of shared libraries by default for the Steam Linux Runtime
|
|
9665a508
|
2018-11-06T16:57:07
|
|
Added Vulkan headers version 1.1.91
Downloaded from https://github.com/KhronosGroup/Vulkan-Headers
|
|
48917e0e
|
2018-11-07T01:08:35
|
|
wayland: fix resizing and fullscreen toggling
For starters, we need to correctly respond to 0,0 configure after unsetting
fullscreen. Also, turns out that there should be no drawing calls at all
in between eglSwapBuffers and wl_egl_window_resize, as otherwise EGL can
already allocate a wrongly sized buffer for a next frame, so handle those
together.
|