wayland: Send exposure events when showing or resizing the window

Clients may rely on this event to signal when they should redraw themselves, so send it when appropriate.

(cherry picked from commit 8fa99993af)
This commit is contained in:
Frank Praznik 2024-09-10 10:07:55 -04:00
parent 38d3b1b6d6
commit d32189918b
No known key found for this signature in database
1 changed files with 4 additions and 0 deletions

View File

@ -1481,6 +1481,9 @@ void Wayland_ShowWindow(_THIS, SDL_Window *window)
* HideWindow was called immediately before ShowWindow.
*/
WAYLAND_wl_display_roundtrip(c->display);
/* Send an exposure event to signal that the client should draw. */
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_EXPOSED, 0, 0);
}
static void Wayland_ReleasePopup(_THIS, SDL_Window *popup)
@ -2147,6 +2150,7 @@ static void Wayland_HandleResize(SDL_Window *window, int width, int height, floa
window->w = 0;
window->h = 0;
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESIZED, width, height);
SDL_SendWindowEvent(window, SDL_WINDOWEVENT_EXPOSED, 0, 0);
window->w = width;
window->h = height;
data->needs_resize_event = SDL_FALSE;