• Sam Lantinga's avatar
    Fixed bug 1293 - [Android] Support Pause/Resume · 64d81471
    Sam Lantinga authored
    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)
    64d81471
Name
Last commit
Last update
..
atomic Loading commit data...
audio Loading commit data...
core Loading commit data...
cpuinfo Loading commit data...
events Loading commit data...
file Loading commit data...
haptic Loading commit data...
joystick Loading commit data...
libm Loading commit data...
loadso Loading commit data...
main Loading commit data...
power Loading commit data...
render Loading commit data...
stdlib Loading commit data...
thread Loading commit data...
timer Loading commit data...
video Loading commit data...
SDL.c Loading commit data...
SDL_assert.c Loading commit data...
SDL_assert_c.h Loading commit data...
SDL_compat.c Loading commit data...
SDL_error.c Loading commit data...
SDL_error_c.h Loading commit data...
SDL_fatal.c Loading commit data...
SDL_fatal.h Loading commit data...
SDL_hints.c Loading commit data...
SDL_hints_c.h Loading commit data...
SDL_log.c Loading commit data...