Procházet zdrojové kódy

Fix ToggleBorderlessFullscreen() Not Hiding Taskbar (#5383)

* Use glfwSetWindowMonitor instead of Pos and Size GLFW functions

* Fix window not resetting properly when toggling out of fullscreen, formatting
pull/5384/head
Aly před 2 měsíci
odevzdal GitHub
rodič
revize
78a81bf407
V databázi nebyl nalezen žádný známý klíč pro tento podpis ID GPG klíče: B5690EEEBB952194
1 změnil soubory, kde provedl 18 přidání a 4 odebrání
  1. +18
    -4
      src/platforms/rcore_desktop_glfw.c

+ 18
- 4
src/platforms/rcore_desktop_glfw.c Zobrazit soubor

@ -265,8 +265,15 @@ void ToggleBorderlessWindowed(void)
const int monitorHeight = mode->height;
// Set screen position and size
glfwSetWindowPos(platform.handle, monitorPosX, monitorPosY);
glfwSetWindowSize(platform.handle, monitorWidth, monitorHeight);
glfwSetWindowMonitor(
platform.handle,
monitors[monitor],
monitorPosX,
monitorPosY,
monitorWidth,
monitorHeight,
mode->refreshRate
);
// Refocus window
glfwFocusWindow(platform.handle);
@ -281,8 +288,15 @@ void ToggleBorderlessWindowed(void)
// Return previous screen size and position
// NOTE: The order matters here, it must set size first, then set position, otherwise the screen will be positioned incorrectly
glfwSetWindowSize(platform.handle, CORE.Window.previousScreen.width, CORE.Window.previousScreen.height);
glfwSetWindowPos(platform.handle, CORE.Window.previousPosition.x, CORE.Window.previousPosition.y);
glfwSetWindowMonitor(
platform.handle,
NULL,
CORE.Window.previousPosition.x,
CORE.Window.previousPosition.y,
CORE.Window.previousScreen.width,
CORE.Window.previousScreen.height,
mode->refreshRate
);
// Refocus window
glfwFocusWindow(platform.handle);

Načítá se…
Zrušit
Uložit