Raise/Map and Focus a window: BadMatch error
Andrew Troschinetz
ast at arlut.utexas.edu
Tue Dec 18 09:33:14 PST 2007
Hello everyone,
I'm struggling with xlib here since I've been given a project that
requires a lot of low level window management and I've never really
done any coding with xlib before now. Currently I have an issue with
XSetInputFocus().
What I'm trying to do is write a function that will:
1. Map a window (if it's unmapped)
2. Raise it
3. Focus that window
Here's what I've got thus far:
void map_raise_focus(Display *display, Window window) {
XEvent e;
XSelectInput (display, windw, ExposureMask);
XMapRaised (display, window);
while (e.type != Expose) {
XNextEvent (display, &e);
}
XSelectInputFocus (display, window, RevertToParent, CurrentTime);
}
Sometimes (not always) I get a BadMatch error (Details: serial 2738
error_code 8 request_code 42 minor_code 0) which I'm sure is being
caused by my XSelectInputFocus() call. I have a feeling that I'm doing
something very wrong here but looking at the docs I can't seem to
figure out how one would go about writing a function like
map_raise_focus().
Can anyone shed some light on this problem for me please?
--
Andrew Troschinetz
Applied Research Laboratories
More information about the xorg
mailing list