浏览代码

REVIEWED: Requested window flags application after window initialization

pull/5111/head
Ray 2 个月前
父节点
当前提交
dd19b8d2c2
共有 1 个文件被更改,包括 8 次插入7 次删除
  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;

正在加载...
取消
保存