Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Emit SDL_RENDER_DEVICE_RESET on Android when the GLES context is recr…
- Loading branch information
Showing
with
12 additions
and
1 deletion.
-
+9
−0
WhatsNew.txt
-
+3
−1
src/video/android/SDL_androidevents.c
|
|
@@ -1,6 +1,15 @@ |
|
|
|
|
|
This is a list of major changes in SDL's version history. |
|
|
|
|
|
--------------------------------------------------------------------------- |
|
|
2.0.4: |
|
|
--------------------------------------------------------------------------- |
|
|
|
|
|
General: |
|
|
* Added an event SDL_RENDER_DEVICE_RESET that is sent from the D3D renderers |
|
|
when the D3D device is lost, and from Android's event loop when the GLES |
|
|
context had to be re created. |
|
|
|
|
|
--------------------------------------------------------------------------- |
|
|
2.0.3: |
|
|
--------------------------------------------------------------------------- |
|
|
|
@@ -35,12 +35,14 @@ void android_egl_context_restore(); |
|
|
void |
|
|
android_egl_context_restore() |
|
|
{ |
|
|
SDL_Event event; |
|
|
SDL_WindowData *data = (SDL_WindowData *) Android_Window->driverdata; |
|
|
if (SDL_GL_MakeCurrent(Android_Window, (SDL_GLContext) data->egl_context) < 0) { |
|
|
/* The context is no longer valid, create a new one */ |
|
|
/* FIXME: Notify the user that the context changed and textures need to be re created */ |
|
|
data->egl_context = (EGLContext) SDL_GL_CreateContext(Android_Window); |
|
|
SDL_GL_MakeCurrent(Android_Window, (SDL_GLContext) data->egl_context); |
|
|
event.type = SDL_RENDER_DEVICE_RESET; |
|
|
SDL_PushEvent(&event); |
|
|
} |
|
|
} |
|
|
|
|
|