Add back tracking of X11 override-redirect
This commit is contained in:
parent
73216e5fb1
commit
e51e27fcab
@ -116,6 +116,8 @@ typedef struct _GLFWwindowX11
|
|||||||
Window handle;
|
Window handle;
|
||||||
XIC ic;
|
XIC ic;
|
||||||
|
|
||||||
|
GLFWbool overrideRedirect;
|
||||||
|
|
||||||
// Cached position and size used to filter out duplicate events
|
// Cached position and size used to filter out duplicate events
|
||||||
int width, height;
|
int width, height;
|
||||||
int xpos, ypos;
|
int xpos, ypos;
|
||||||
|
@ -318,6 +318,8 @@ static GLFWbool createWindow(_GLFWwindow* window,
|
|||||||
window->x11.handle,
|
window->x11.handle,
|
||||||
CWOverrideRedirect,
|
CWOverrideRedirect,
|
||||||
&attributes);
|
&attributes);
|
||||||
|
|
||||||
|
window->x11.overrideRedirect = GLFW_TRUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -1737,7 +1739,7 @@ void _glfwPlatformGetWindowFrameSize(_GLFWwindow* window,
|
|||||||
|
|
||||||
void _glfwPlatformIconifyWindow(_GLFWwindow* window)
|
void _glfwPlatformIconifyWindow(_GLFWwindow* window)
|
||||||
{
|
{
|
||||||
if (!_glfw.x11.NET_WM_STATE || !_glfw.x11.NET_WM_STATE_FULLSCREEN)
|
if (window->x11.overrideRedirect)
|
||||||
{
|
{
|
||||||
// Override-redirect windows cannot be iconified or restored, as those
|
// Override-redirect windows cannot be iconified or restored, as those
|
||||||
// tasks are performed by the window manager
|
// tasks are performed by the window manager
|
||||||
@ -1752,7 +1754,7 @@ void _glfwPlatformIconifyWindow(_GLFWwindow* window)
|
|||||||
|
|
||||||
void _glfwPlatformRestoreWindow(_GLFWwindow* window)
|
void _glfwPlatformRestoreWindow(_GLFWwindow* window)
|
||||||
{
|
{
|
||||||
if (!_glfw.x11.NET_WM_STATE || !_glfw.x11.NET_WM_STATE_FULLSCREEN)
|
if (window->x11.overrideRedirect)
|
||||||
{
|
{
|
||||||
// Override-redirect windows cannot be iconified or restored, as those
|
// Override-redirect windows cannot be iconified or restored, as those
|
||||||
// tasks are performed by the window manager
|
// tasks are performed by the window manager
|
||||||
|
Loading…
Reference in New Issue
Block a user