mirror of
https://github.com/glfw/glfw.git
synced 2026-09-19 15:25:50 +00:00
Added support for _NET_WM_BYPASS_COMPOSITOR.
This commit is contained in:
@@ -409,6 +409,8 @@ static void detectEWMH(void)
|
||||
getSupportedAtom(supportedAtoms, atomCount, "_NET_WM_PING");
|
||||
_glfw.x11.NET_ACTIVE_WINDOW =
|
||||
getSupportedAtom(supportedAtoms, atomCount, "_NET_ACTIVE_WINDOW");
|
||||
_glfw.x11.NET_WM_BYPASS_COMPOSITOR =
|
||||
getSupportedAtom(supportedAtoms, atomCount, "_NET_WM_BYPASS_COMPOSITOR");
|
||||
|
||||
XFree(supportedAtoms);
|
||||
|
||||
|
||||
@@ -117,6 +117,7 @@ typedef struct _GLFWlibraryX11
|
||||
Atom NET_WM_PING;
|
||||
Atom NET_WM_STATE;
|
||||
Atom NET_WM_STATE_FULLSCREEN;
|
||||
Atom NET_WM_BYPASS_COMPOSITOR;
|
||||
Atom NET_ACTIVE_WINDOW;
|
||||
Atom MOTIF_WM_HINTS;
|
||||
|
||||
|
||||
@@ -399,6 +399,15 @@ static void enterFullscreenMode(_GLFWwindow* window)
|
||||
|
||||
_glfwSetVideoMode(window->monitor, &window->videoMode);
|
||||
|
||||
if (_glfw.x11.NET_WM_BYPASS_COMPOSITOR != None)
|
||||
{
|
||||
const unsigned long value = 1;
|
||||
|
||||
XChangeProperty(_glfw.x11.display, window->x11.handle,
|
||||
_glfw.x11.NET_WM_BYPASS_COMPOSITOR, XA_CARDINAL, 32,
|
||||
PropModeReplace, (unsigned char*) &value, 1);
|
||||
}
|
||||
|
||||
if (_glfw.x11.hasEWMH &&
|
||||
_glfw.x11.NET_WM_STATE != None &&
|
||||
_glfw.x11.NET_WM_STATE_FULLSCREEN != None)
|
||||
@@ -487,6 +496,15 @@ static void leaveFullscreenMode(_GLFWwindow* window)
|
||||
_glfw.x11.saver.exposure);
|
||||
}
|
||||
|
||||
if (_glfw.x11.NET_WM_BYPASS_COMPOSITOR != None)
|
||||
{
|
||||
const unsigned long value = 0;
|
||||
|
||||
XChangeProperty(_glfw.x11.display, window->x11.handle,
|
||||
_glfw.x11.NET_WM_BYPASS_COMPOSITOR, XA_CARDINAL, 32,
|
||||
PropModeReplace, (unsigned char*) &value, 1);
|
||||
}
|
||||
|
||||
if (_glfw.x11.hasEWMH &&
|
||||
_glfw.x11.NET_WM_STATE != None &&
|
||||
_glfw.x11.NET_WM_STATE_FULLSCREEN != None)
|
||||
|
||||
Reference in New Issue
Block a user