Ver Fonte

REVIEWED: Requested window flags application after window initialization

Ray há 1 mês atrás
pai
commit
dd19b8d2c2
1 ficheiros alterados com 8 adições e 7 exclusões
  1. 8 7
      src/platforms/rcore_desktop_glfw.c

+ 8 - 7
src/platforms/rcore_desktop_glfw.c

@@ -1363,8 +1363,9 @@ int InitPlatform(void)
     // additionally auto iconify restores the hardware resolution of the monitor if the window that loses focus is a fullscreen window
     glfwWindowHint(GLFW_AUTO_ICONIFY, 0);
 
-    // Keep flags to restore after initialization (for flags not supported on initialization)  
-    unsigned int originalCoreWindowFlags = CORE.Window.flags;
+    // Window flags requested before initialization to be applied after initialization
+    unsigned int requetedWindowFlags = CORE.Window.flags;
+    
     // Check window creation flags
     if ((CORE.Window.flags & FLAG_FULLSCREEN_MODE) > 0) CORE.Window.fullscreen = true;
 
@@ -1674,6 +1675,9 @@ int InitPlatform(void)
         CORE.Window.position.x = posX;
         CORE.Window.position.y = posY;
     }
+    
+    // Apply window flags requested previous to initialization
+    SetWindowState(requetedWindowFlags);
 
     // Load OpenGL extensions
     // NOTE: GL procedures address loader is required to load extensions
@@ -1727,15 +1731,12 @@ int InitPlatform(void)
 
 #if defined(__NetBSD__)
     // Workaround for NetBSD
-    char *glfwPlatform = "X11";
+    char *glfwPlatform = "X11 (NetBSD)";
 #else
     char *glfwPlatform = "";
     switch (glfwGetPlatform())
     {
-        case GLFW_PLATFORM_WIN32: 
-            glfwPlatform = "Win32";
-            SetWindowState(originalCoreWindowFlags);
-            break;
+        case GLFW_PLATFORM_WIN32: glfwPlatform = "Win32"; break;
         case GLFW_PLATFORM_COCOA: glfwPlatform = "Cocoa"; break;
         case GLFW_PLATFORM_WAYLAND: glfwPlatform = "Wayland"; break;
         case GLFW_PLATFORM_X11: glfwPlatform = "X11"; break;