mirror of https://github.com/encounter/SDL.git
Fixed bug 4085 - X11: Allow configuring _NET_WM_BYPASS_COMPOSITOR through SDL hints
Callum McGing This patch allows the user to disable the behaviour that blocks the compositor through a new hint: SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR. This allows tools or other windowed applications to behave properly under KWin.
This commit is contained in:
parent
926d803f83
commit
8ddebfa06e
|
@ -211,6 +211,18 @@ extern "C" {
|
|||
*/
|
||||
#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING"
|
||||
|
||||
/**
|
||||
* \brief A variable controlling whether the X11 _NET_WM_BYPASS_COMPOSITOR hint should be used.
|
||||
*
|
||||
* This variable can be set to the following values:
|
||||
* "0" - Disable _NET_WM_BYPASS_COMPOSITOR
|
||||
* "1" - Enable _NET_WM_BYPASS_COMPOSITOR
|
||||
*
|
||||
* By default SDL will use _NET_WM_BYPASS_COMPOSITOR
|
||||
*
|
||||
*/
|
||||
#define SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR "SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR"
|
||||
|
||||
/**
|
||||
* \brief A variable controlling whether the window frame and title bar are interactive when the cursor is hidden
|
||||
*
|
||||
|
|
|
@ -579,11 +579,12 @@ X11_CreateWindow(_THIS, SDL_Window * window)
|
|||
wintype = X11_XInternAtom(display, wintype_name, False);
|
||||
X11_XChangeProperty(display, w, _NET_WM_WINDOW_TYPE, XA_ATOM, 32,
|
||||
PropModeReplace, (unsigned char *)&wintype, 1);
|
||||
|
||||
_NET_WM_BYPASS_COMPOSITOR = X11_XInternAtom(display, "_NET_WM_BYPASS_COMPOSITOR", False);
|
||||
X11_XChangeProperty(display, w, _NET_WM_BYPASS_COMPOSITOR, XA_CARDINAL, 32,
|
||||
PropModeReplace,
|
||||
(unsigned char *)&compositor, 1);
|
||||
if (SDL_GetHintBoolean(SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR, SDL_TRUE)) {
|
||||
_NET_WM_BYPASS_COMPOSITOR = X11_XInternAtom(display, "_NET_WM_BYPASS_COMPOSITOR", False);
|
||||
X11_XChangeProperty(display, w, _NET_WM_BYPASS_COMPOSITOR, XA_CARDINAL, 32,
|
||||
PropModeReplace,
|
||||
(unsigned char *)&compositor, 1);
|
||||
}
|
||||
|
||||
{
|
||||
Atom protocols[3];
|
||||
|
|
Loading…
Reference in New Issue