Sun, 08 Jan 2012 13:31:22 -0500X11 OpenGL ES minor corrections
Sam Lantinga <slouken@libsdl.org> [Sun, 08 Jan 2012 13:31:22 -0500] rev 6190
X11 OpenGL ES minor corrections

Scott Percival 2012-01-08 04:21:22 PST

I tested the new build on my two ARM machines, and fixed a few bugs:
- if SDL_VIDEO_DRIVER_UIKIT, SDL_VIDEO_DRIVER_ANDROID or
SDL_VIDEO_DRIVER_PANDORA are specified, function pointers are grabbed from the
compile-linked library instead of through SDL_GL_GetProcAddress. (not sure if
this is the best way to go about it)
- removing "/usr/lib/" from all the library names (hey, with multiarch you
can't be too sure anymore)
- added glFinish to glesfuncs.h
- changed the eglGetProcAddress arg type to "const char *" as per the EGL spec
- filled in the stubs for X11_GLES_SetSwapInterval and X11_GLES_GetSwapInterval

Fri, 26 Aug 2011 13:23:40 +0100* Take a global reference to the activity to prevent the reference being GCed
Tim Angus <tim@blackcompanystudios.co.uk> [Fri, 26 Aug 2011 13:23:40 +0100] rev 6189
* Take a global reference to the activity to prevent the reference being GCed

Sun, 08 Jan 2012 02:23:37 -0500Fixed bug 1242 - PATCH: Improve support for OpenGL ES under X11
Sam Lantinga <slouken@libsdl.org> [Sun, 08 Jan 2012 02:23:37 -0500] rev 6188
Fixed bug 1242 - PATCH: Improve support for OpenGL ES under X11

Scott Percival 2011-07-03 06:41:51 PDT

This submission is aimed at making life easier for OpenGL ES capable devices
running a X11 stack (e.g. Maemo, Meego, TrimSlice, other ARM SoC boards not
running Android). SDL's Pandora support already has the neccesary GLES-to-X11
glue code, however it's all ghetto'd off in Makefile.pandora and not very
flexible.

The patch:
- adds an awesome --enable-video-opengles option to configure
- re-modifies the opengles and opengles2 SDL_renderers to use function pointers
- no idea why this was removed?
- for SDL_Renderers, links in libGLESv1_CM, libGLES_CM (for PowerVR fans) or
libGLESv2 at runtime
- links in libEGL.so at runtime - the old code made an assumption that
eglFunctions could be pulled from the active GLES library, PowerVR for one
doesn't let you do that with their libGLESv2
- allows you to pick which of GLES v1 or v2 to load via
SDL_GL_CONTEXT_MAJOR_VERSION

So far I've tested this on a Nokia N900 (OMAP 3430/SGX 530 running Maemo 5) and
a Toshiba AC100 (Tegra 2 running Ubuntu 10.10). I haven't tested it on... well,
everything that isn't those two, such as a Pandora, iOS or Android device. The
Pandora specific code should be kept intact (fingers crossed), and nothing
painfully drastic has been added to the SDL_renderers. The library loading
sequence in SDL_x11opengles has been updated to accomodate both NVIDIA's
propensity to let developers get away with murder and PowerVR's alternative of
punishing every missed step.

The test apps work okay with GLES or GLES2 as the renderer. For some reason
alpha blending doesn't seem to work on the Tegra 2; last week NVIDIA pushed out
a new set of X11 GLES drivers, so I'll try and investigate once I upgrade
those. Also, this patch adds things to configure.in, include/SDL_config.h.in
and test/configure.in. I didn't know what the policy was re. committing
generated spaghetti from autotools, so ./autogen.sh has to be run again. Sorry.

I think that's about everything, let me know if there's anything I've
overlooked.

Sun, 08 Jan 2012 01:15:20 -0500Fixed bug 1287 - VS2010 project doesn't include the SDL_syscond.c file
Sam Lantinga <slouken@libsdl.org> [Sun, 08 Jan 2012 01:15:20 -0500] rev 6187
Fixed bug 1287 - VS2010 project doesn't include the SDL_syscond.c file

Liam 2011-08-23 09:09:18 PDT
Hiya!

Seems like there's no implementation of condition variables included when
building with VS2010, adding the generic SDL_syscond.c file to the project
seems to fix it right up.

Sun, 08 Jan 2012 01:05:25 -0500Fixed bug 1293 - [Android] Support Pause/Resume
Sam Lantinga <slouken@libsdl.org> [Sun, 08 Jan 2012 01:05:25 -0500] rev 6186
Fixed bug 1293 - [Android] Support Pause/Resume

Gabriel Jacobo 2011-12-23 12:55:11 PST

The attached files provide some improvement over the current handling of
pause/resume in Android.
- I disabled the exit(status) instruction in SDL_main as that makes the entire
app instead of the SDL thread exit (while not needed for pause/resume it is
needed for Live Wallpapers, an SDLActivity for which I'll upload in a separate
bug).
- Added nativePause and nativeResume which basically just mark the window as
visible/hidden, something that the end user needs to take into consideration
(ideally pausing the event loop).

Also, this arrangement creates a new GL context when needed, which at least in
my test system is every time you go away from the app and come back to it. So,
this means that the textures need to be generated again after resuming (a
problem the end user didn't have before because the app exited completely when
it should've been pausing). I'd like to know if there's a standard way of
letting the user know that the GL context has changed and that he needs to
refresh his textures, or if this is out of the scope of the library and each
user handles it in their own way (I don't know how/if this same thing is
handled in the iPhone backend, but it would be wise to try to imitate that).

Gabriel Jacobo 2011-12-23 12:57:10 PST
Also, in the SDLActivity the EGL handling code is moved up to the Activity from
the Surface code, as I think it is possible (in theory) that the surface is
destroyed temporarily while the context remains alive (though in practice in my
test system this is not the case)

Sun, 08 Jan 2012 00:39:41 -0500Fixed bug 1303 - SDL_CreateFromWindow duplicates window (Cocoa only)
Sam Lantinga <slouken@libsdl.org> [Sun, 08 Jan 2012 00:39:41 -0500] rev 6185
Fixed bug 1303 - SDL_CreateFromWindow duplicates window (Cocoa only)

Jens Köhler 2011-09-09 04:47:40 PDT

When calling SDL_CreateWindowFrom with a NSWindow which already contains a
NSView, the window will be duplicated because another NSView is added. I
attached a possible fix that prevents the creation of a second NSView.

Sun, 08 Jan 2012 00:36:32 -0500Fixed bug 1305 - mouse wheel scroll-down event created when mouse wheel is pressed down
Sam Lantinga <slouken@libsdl.org> [Sun, 08 Jan 2012 00:36:32 -0500] rev 6184
Fixed bug 1305 - mouse wheel scroll-down event created when mouse wheel is pressed down

Martin Schreiber 2011-09-15 06:08:38 PDT

patch attached

Sat, 07 Jan 2012 21:02:39 -0800The #define was asking to use dlopen(), but the code wasn't doing it.
Sam Lantinga <slouken@libsdl.org> [Sat, 07 Jan 2012 21:02:39 -0800] rev 6183
The #define was asking to use dlopen(), but the code wasn't doing it.
Also added error message in case the library open failed in that case.

Sat, 07 Jan 2012 21:01:33 -0800Fixed crash if the rendering system couldn't create an OpenGL window.
Sam Lantinga <slouken@libsdl.org> [Sat, 07 Jan 2012 21:01:33 -0800] rev 6182
Fixed crash if the rendering system couldn't create an OpenGL window.

Sat, 07 Jan 2012 23:33:15 -0500Fixed bug 1313 - Segfault on SDL_CreateWindow when gl lib cannot be loaded
Sam Lantinga <slouken@libsdl.org> [Sat, 07 Jan 2012 23:33:15 -0500] rev 6181
Fixed bug 1313 - Segfault on SDL_CreateWindow when gl lib cannot be loaded

Don't crash if the gl_data isn't valid, just return NULL.