Wayland: Fix glfwSetWindowSize resizing fs windows

glfwSetWindowSize would change the size of fullscreen mode windows as
if they were windowed mode.
This commit is contained in:
Camilla Löwy 2022-06-10 14:10:25 +02:00
parent fdc72edf81
commit 6857995498
2 changed files with 14 additions and 4 deletions

View File

@ -339,6 +339,7 @@ information on what to include when reporting a bug.
inconsistent state
- [Wayland] Bugfix: Window maximization events were not emitted
- [Wayland] Bugfix: `glfwRestoreWindow` assumed it was always in windowed mode
- [Wayland] Bugfix: `glfwSetWindowSize` would resize a full screen window
- [POSIX] Removed use of deprecated function `gettimeofday`
- [POSIX] Bugfix: `CLOCK_MONOTONIC` was not correctly tested for or enabled
- [WGL] Disabled the DWM swap interval hack for Windows 8 and later (#1072)

View File

@ -506,7 +506,9 @@ static void xdgToplevelHandleConfigure(void* userData,
}
_glfwInputWindowSize(window, width, height);
_glfwSetWindowSizeWayland(window, width, height);
window->wl.width = width;
window->wl.height = height;
resizeWindow(window);
_glfwInputWindowDamage(window);
}
@ -1839,11 +1841,18 @@ void _glfwGetWindowSizeWayland(_GLFWwindow* window, int* width, int* height)
}
void _glfwSetWindowSizeWayland(_GLFWwindow* window, int width, int height)
{
if (window->monitor)
{
// Video mode setting is not available on Wayland
}
else
{
window->wl.width = width;
window->wl.height = height;
resizeWindow(window);
}
}
void _glfwSetWindowSizeLimitsWayland(_GLFWwindow* window,
int minwidth, int minheight,