Ошибка BadMatch в XCreateWindow для окна InputOnly - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь создать окно с Xlib следующим образом:

XSetWindowAttributes win_attribs;
::memset((void *)&win_attribs, 0, sizeof(win_attribs));
unsigned long win_attribs_mask;
win_attribs.override_redirect = True;
win_attribs_mask = CWOverrideRedirect;

Window win = XCreateWindow(display,
                        XDefaultRootWindow(display);
                        0,
                        0,
                        1, 1,
                        0,
                        0,
                        InputOnly,
                        CopyFromParent,
                        win_attribs_mask,
                        &win_attribs));

Что приводит к X11 Error 8 (BadMatch (invalid parameter attributes)): request 55.0.

Я прочитал документацию, параметры которой могут быть здесь неправильными:

https://tronche.com/gui/x/xlib/window/XCreateWindow.html

Но я не могу понять, что происходит и почему эта ошибка выкладывается. В руководстве говорится, что окну InputOnly требуется глубина 0, действительный визуальный элемент which is the one from the parent, и он может устанавливать только определенные атрибуты окна (из которых CWOverrideRedirect является одним из).

Какой параметр может здесь не так?

...