|
@@ -1679,12 +1679,31 @@ SDL_GetWindowPosition(SDL_Window * window, int *x, int *y)
|
|
|
|
|
|
/* Fullscreen windows are always at their display's origin */
|
|
|
if (window->flags & SDL_WINDOW_FULLSCREEN) {
|
|
|
+ int displayIndex;
|
|
|
+
|
|
|
if (x) {
|
|
|
*x = 0;
|
|
|
}
|
|
|
if (y) {
|
|
|
*y = 0;
|
|
|
}
|
|
|
+
|
|
|
+ /* Find the window's monitor and update to the
|
|
|
+ monitor offset. */
|
|
|
+ displayIndex = SDL_GetWindowDisplayIndex(window);
|
|
|
+ if (displayIndex >= 0) {
|
|
|
+ SDL_Rect bounds;
|
|
|
+
|
|
|
+ SDL_zero(bounds);
|
|
|
+
|
|
|
+ SDL_GetDisplayBounds(displayIndex, &bounds);
|
|
|
+ if (x) {
|
|
|
+ *x = bounds.x;
|
|
|
+ }
|
|
|
+ if (y) {
|
|
|
+ *y = bounds.y;
|
|
|
+ }
|
|
|
+ }
|
|
|
} else {
|
|
|
if (x) {
|
|
|
*x = window->x;
|