소스 검색

wayland: Always use the whole buffer surface for the damage region

Using the current window size at the time of the call may not be correct if the window or buffer size was changed after the fact, so always set the damage region to cover the entire buffer.
Frank Praznik 1 년 전
부모
커밋
2d9aff6433
1개의 변경된 파일2개의 추가작업 그리고 4개의 파일을 삭제
  1. 2 4
      src/video/wayland/SDL_waylandwindow.c

+ 2 - 4
src/video/wayland/SDL_waylandwindow.c

@@ -582,11 +582,9 @@ static void surface_frame_done(void *data, struct wl_callback *cb, uint32_t time
      * on compositor version 4 and above.
      */
     if (wl_compositor_get_version(wind->waylandData->compositor) >= WL_SURFACE_DAMAGE_BUFFER_SINCE_VERSION) {
-        wl_surface_damage_buffer(wind->surface, 0, 0,
-                                 wind->current.drawable_width, wind->current.drawable_height);
+        wl_surface_damage_buffer(wind->surface, 0, 0, SDL_MAX_SINT32, SDL_MAX_SINT32);
     } else {
-        wl_surface_damage(wind->surface, 0, 0,
-                          wind->current.logical_width, wind->current.logical_height);
+        wl_surface_damage(wind->surface, 0, 0, SDL_MAX_SINT32, SDL_MAX_SINT32);
     }
 
     if (wind->surface_status == WAYLAND_SURFACE_STATUS_WAITING_FOR_FRAME) {