mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-06-14 10:17:54 +00:00
Fixed bug #14173 - Android / SDL_Renderer Vulkan : going background / foreground produces a black screen.
need to recreate the swap chain + send SDL_EVENT_RENDER_DEVICE_RESET event
(cherry picked from commit 2a96997e90)
This commit is contained in:
parent
78756540cb
commit
988714beb9
1 changed files with 8 additions and 1 deletions
|
|
@ -2503,7 +2503,7 @@ static VkResult VULKAN_CreateWindowSizeDependentResources(SDL_Renderer *renderer
|
|||
|
||||
result = VULKAN_CreateSwapChain(renderer, w, h);
|
||||
if (result != VK_SUCCESS) {
|
||||
rendererData->recreateSwapchain = VK_TRUE;
|
||||
rendererData->recreateSwapchain = true;
|
||||
}
|
||||
|
||||
rendererData->viewportDirty = true;
|
||||
|
|
@ -2553,6 +2553,13 @@ static void VULKAN_WindowEvent(SDL_Renderer *renderer, const SDL_WindowEvent *ev
|
|||
if (event->type == SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGED) {
|
||||
rendererData->recreateSwapchain = true;
|
||||
}
|
||||
|
||||
#ifdef SDL_PLATFORM_ANDROID
|
||||
// Prevent black screen when app returns from background
|
||||
if (event->type == SDL_EVENT_WINDOW_RESTORED) {
|
||||
VULKAN_HandleDeviceLost(renderer);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
static bool VULKAN_SupportsBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue