Пишу оконный менеджер, столкнулся со следующей проблемой. Когда приходит событие UnmapNotify, мне нужно передать фокус другому окну, которое станет видимым после unmap'а данного окна. Вот код, реализующий это:
case UnmapNotify: {
Window window = event->xunmap.window;
// QList<Window> windowList;
windowList.removeAll(window);
if (!windowList.isEmpty()) {
XRaiseWindow(display, windowList[0]);
XSetInputFocus(display, windowList[0], RevertToParent, CurrentTime);
}
return true;
}
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 12 (X_ConfigureWindow)
Resource id: 0x600026
X Error: BadWindow (invalid Window parameter) 3
Major opcode: 42 (X_SetInputFocus)
Resource id: 0x600026