Răsfoiți Sursa

Use the real window position on macOS

On newer MacBooks, the fullscreen window might be placed below the camera notch, so use the actual window position

Fixes https://github.com/libsdl-org/SDL/issues/10441

(cherry picked from commit 0a50058f7a8258e463f0eeb1552de8bdaed9cb39)
Sam Lantinga 6 luni în urmă
părinte
comite
18c2e179ee
1 a modificat fișierele cu 7 adăugiri și 1 ștergeri
  1. 7 1
      src/video/SDL_video.c

+ 7 - 1
src/video/SDL_video.c

@@ -2924,8 +2924,14 @@ bool SDL_GetWindowPosition(SDL_Window *window, int *x, int *y)
 {
     CHECK_WINDOW_MAGIC(window, false);
 
+#ifdef SDL_PLATFORM_MACOS
+    // On newer MacBooks, the fullscreen window might be placed below the camera notch, so use the actual window position
+    bool use_display_origin = false;
+#else
     // Fullscreen windows are always at their display's origin
-    if (window->flags & SDL_WINDOW_FULLSCREEN) {
+    bool use_display_origin = ((window->flags & SDL_WINDOW_FULLSCREEN) != 0);
+#endif
+    if (use_display_origin) {
         SDL_DisplayID displayID;
 
         if (x) {