Parcourir la source

wayland: Unconditionally send an exposure event on window shown status

Some compositors send the frame callback as part of the initial configuration sequence, so the window may already be past the "waiting for frame" state. Ensure that the exposure event is always sent.

(cherry picked from commit 1ac0ae92247285714f50d07007bbb71d2c6d266d)
Frank Praznik il y a 5 jours
Parent
commit
b42dbd8ecb
1 fichiers modifiés avec 1 ajouts et 3 suppressions
  1. 1 3
      src/video/wayland/SDL_waylandwindow.c

+ 1 - 3
src/video/wayland/SDL_waylandwindow.c

@@ -2067,9 +2067,7 @@ void Wayland_ShowWindow(SDL_VideoDevice *_this, SDL_Window *window)
     data->showing_window = false;
     data->showing_window = false;
 
 
     // Send an exposure event to signal that the client should draw.
     // Send an exposure event to signal that the client should draw.
-    if (data->shell_surface_status == WAYLAND_SHELL_SURFACE_STATUS_WAITING_FOR_FRAME) {
-        SDL_SendWindowEvent(window, SDL_EVENT_WINDOW_EXPOSED, 0, 0);
-    }
+    SDL_SendWindowEvent(window, SDL_EVENT_WINDOW_EXPOSED, 0, 0);
 }
 }
 
 
 static void Wayland_ReleasePopup(SDL_VideoDevice *_this, SDL_Window *popup)
 static void Wayland_ReleasePopup(SDL_VideoDevice *_this, SDL_Window *popup)