Quellcode durchsuchen

x11: Force window back to expected size after SDL_SetWindowBordered.

This helps if the window manager decided to let it fill the space that
an existing border was using before its removal.

Fixes #5718.
Ryan C. Gordon vor 2 Jahren
Ursprung
Commit
b75cd2b36d
1 geänderte Dateien mit 4 neuen und 0 gelöschten Zeilen
  1. 4 0
      src/video/x11/SDL_x11window.c

+ 4 - 0
src/video/x11/SDL_x11window.c

@@ -1074,6 +1074,10 @@ X11_SetWindowBordered(_THIS, SDL_Window * window, SDL_bool bordered)
     X11_XSync(display, False);
     X11_XCheckIfEvent(display, &event, &isUnmapNotify, (XPointer)&data->xwindow);
     X11_XCheckIfEvent(display, &event, &isMapNotify, (XPointer)&data->xwindow);
+
+    /* Make sure the window manager didn't resize our window for the difference. */
+    X11_XResizeWindow(display, data->xwindow, window->w, window->h);
+    X11_XSync(display, False);
 }
 
 void