mirror of
https://github.com/glfw/glfw.git
synced 2024-11-26 06:14:35 +00:00
X11: Fix EWMH state update for hidden windows
The EWMH window state code assumed the window was mapped. Fixes #1358.
This commit is contained in:
parent
7f4dde15e4
commit
78e6a0063d
@ -250,6 +250,8 @@ information on what to include when reporting a bug.
|
|||||||
- [X11] Bugfix: `glfwSetWindowMonitor` did not update hints when resizing
|
- [X11] Bugfix: `glfwSetWindowMonitor` did not update hints when resizing
|
||||||
non-user-resizable windows
|
non-user-resizable windows
|
||||||
- [X11] Bugfix: `glfwSetWindowMonitor` did not flush output buffer in some cases
|
- [X11] Bugfix: `glfwSetWindowMonitor` did not flush output buffer in some cases
|
||||||
|
- [X11] Bugfix: `glfwSetWindowMonitor` did not update the EWMH state of hidden
|
||||||
|
windows (#1358)
|
||||||
- [Linux] Added workaround for missing `SYN_DROPPED` in pre-2.6.39 kernel
|
- [Linux] Added workaround for missing `SYN_DROPPED` in pre-2.6.39 kernel
|
||||||
headers (#1196)
|
headers (#1196)
|
||||||
- [Linux] Moved to evdev for joystick input (#906,#1005)
|
- [Linux] Moved to evdev for joystick input (#906,#1005)
|
||||||
|
@ -2410,16 +2410,21 @@ void _glfwPlatformSetWindowMonitor(_GLFWwindow* window,
|
|||||||
|
|
||||||
_glfwInputWindowMonitor(window, monitor);
|
_glfwInputWindowMonitor(window, monitor);
|
||||||
updateNormalHints(window, width, height);
|
updateNormalHints(window, width, height);
|
||||||
updateWindowMode(window);
|
|
||||||
|
|
||||||
if (window->monitor)
|
if (window->monitor)
|
||||||
{
|
{
|
||||||
XMapRaised(_glfw.x11.display, window->x11.handle);
|
if (!_glfwPlatformWindowVisible(window))
|
||||||
if (waitForVisibilityNotify(window))
|
{
|
||||||
acquireMonitor(window);
|
XMapRaised(_glfw.x11.display, window->x11.handle);
|
||||||
|
waitForVisibilityNotify(window);
|
||||||
|
}
|
||||||
|
|
||||||
|
updateWindowMode(window);
|
||||||
|
acquireMonitor(window);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
updateWindowMode(window);
|
||||||
XMoveResizeWindow(_glfw.x11.display, window->x11.handle,
|
XMoveResizeWindow(_glfw.x11.display, window->x11.handle,
|
||||||
xpos, ypos, width, height);
|
xpos, ypos, width, height);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user