X11 / Xlib: ventana siempre arriba

Una ventana debe permanecer encima de todas las demás ventanas. ¿Es esto de alguna manera posible con x11 / xlib simple? Buscar en Google "Siempre arriba" y "x11" / "xlib" no arrojó nada útil.

Evitaría kits de herramientas como GTK +, si es posible de alguna manera.

Estoy usando Ubuntu con el escritorio gnome. En el menú de la ventana, hay una opción "Siempre en la parte superior". ¿Lo proporciona el servidor X o el administrador de ventanas? Si el segundo es el caso, ¿hay una función general que se pueda llamar para casi cualquier wm? ¿O cómo hacer esto de una manera "genérica X11"?

Editar: Implementé la respuesta de fizzer, ahora tengo el siguiente código:

XSelectInput(this->display, this->window,
    ButtonPressMask |
    StructureNotifyMask |
    ExposureMask |
    KeyPressMask |
    PropertyChangeMask |
    VisibilityChangeMask ); 
// ...
// In a loop:
if (XPending(this->display) >= 0)
{
    XNextEvent(this->display, &ev);
    switch(ev.type) {
    // ...
    case VisibilityNotify:
        XRaiseWindow(this->display, this->window);
        XFlush(this->display);
    break;
    // ...
    }
}

Pero el manejo de eventos y el aumento casi nunca se ejecutan, incluso mi máscara es correcta.

Respuestas a la pregunta(4)

Su respuesta a la pregunta