Я пишу тест на Ubuntu 18.04. Я хочу создать виртуальный дисплей, запустить на нем окно и проверить имя окна. В трех отдельных снарядах я бегу:
Xvfb :4 -screen 0 1920x1080x24+32 -fbdir /var/tmp
тогда
DISPLAY=:4 xterm
тогда
DISPLAY=:4 xdotool getwindowfocus getwindowname
Эта последняя команда возвращает
XGetInputFocus returned the focused window of 1. This is likely a bug in the X server.
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 20 (X_GetProperty)
Resource id in failed request: 0x1
Serial number of failed request: 20
Current serial number in output stream: 20
Эта ошибка, похоже, исходит от xdotool :
int xdo_get_focused_window(const xdo_t *xdo, Window *window_ret) {
int ret = 0;
int unused_revert_ret;
ret = XGetInputFocus(xdo->xdpy, window_ret, &unused_revert_ret);
/* Xvfb with no window manager and given otherwise no input, with
* a single client, will return the current focused window as '1'
* I think this is a bug, so let's alert the user. */
if (*window_ret == 1) {
fprintf(stderr,
"XGetInputFocus returned the focused window of %ld. "
"This is likely a bug in the X server.\n", *window_ret);
}
return _is_success("XGetInputFocus", ret == 0, xdo);
}
Я просто хочу сделать минимальную вещь, чтобы получить виртуальный дисплей, запустить окно на нем и проверить имя окна.
Что мне делать?