Browse Source

Fixed secondary screens on KMSDRM (#10535)

* Removed window movement to left top corner that breaks secondary screens on KMSDRM

(cherry picked from commit ce98550cbb282baa9aed293703f042a980a2de81)
(cherry picked from commit 586a2dc721266e105bcd18e690d613ccb71d956b)
Ilya Mizus 8 months ago
parent
commit
21e0382edd
1 changed files with 5 additions and 1 deletions
  1. 5 1
      src/video/kmsdrm/SDL_kmsdrmvideo.c

+ 5 - 1
src/video/kmsdrm/SDL_kmsdrmvideo.c

@@ -1589,7 +1589,11 @@ int KMSDRM_CreateWindow(_THIS, SDL_Window *window)
     SDL_SetKeyboardFocus(window);
 
     /* Tell the app that the window has moved to top-left. */
-    SDL_SendWindowEvent(window, SDL_WINDOWEVENT_MOVED, 0, 0);
+    {
+        SDL_Rect display_bounds;
+        SDL_GetDisplayBounds(SDL_GetDisplayForWindow(window), &display_bounds);
+        SDL_SendWindowEvent(window, SDL_WINDOWEVENT_MOVED, display_bounds.x, display_bounds.y);
+    }
 
     /* Allocated windata will be freed in KMSDRM_DestroyWindow,
        and KMSDRM_DestroyWindow() will be called by SDL_CreateWindow()