Wayland: Fix missing fullscreen code path

glfwRestoreWindow assumed it was only called in windowed mode.

(cherry picked from commit fdc72edf81)
This commit is contained in:
Camilla Löwy 2022-06-19 18:30:03 +02:00
parent 562eca6f28
commit 15050f5711
2 changed files with 12 additions and 3 deletions

View File

@ -157,6 +157,7 @@ information on what to include when reporting a bug.
- [Wayland] Bugfix: A window maximized or restored by the user would enter an
inconsistent state
- [Wayland] Bugfix: Window maximization events were not emitted
- [Wayland] Bugfix: `glfwRestoreWindow` assumed it was always in windowed mode
## Contact

View File

@ -1975,13 +1975,21 @@ void _glfwPlatformIconifyWindow(_GLFWwindow* window)
void _glfwPlatformRestoreWindow(_GLFWwindow* window)
{
if (window->wl.xdg.toplevel)
if (window->monitor)
{
if (window->wl.maximized)
xdg_toplevel_unset_maximized(window->wl.xdg.toplevel);
// There is no way to unset minimized, or even to know if we are
// minimized, so there is nothing to do here.
}
else
{
// We assume we are not minimized and acto only on maximization
if (window->wl.xdg.toplevel)
{
if (window->wl.maximized)
xdg_toplevel_unset_maximized(window->wl.xdg.toplevel);
}
}
}
void _glfwPlatformMaximizeWindow(_GLFWwindow* window)