Léxico TI › Infraestructura › Orden de apilamiento

Orden de apilamiento

Infraestructura Svenska → Actualizado: 2026-10-09

El orden en que las ventanas hermanas se superponen unas a otras, para que el servidor sepa cuál se ve donde dos se solapan: en X11 una propiedad distinta del foco, y en última instancia decisión del gestor de ventanas.

Cada ventana de X11 tiene una lista de hijas, y las hijas están en un orden definido de abajo arriba. Donde dos hermanas se solapan se dibuja la superior; las partes tapadas de la inferior reciben un evento Expose cuando vuelven a quedar al descubierto. El protocolo base da al cliente un puñado de herramientas: XRaiseWindow y XLowerWindow, XCirculateSubwindows, que rota las hijas, y ConfigureWindow con el campo stack_mode, que puede ser Above, Below, TopIf, BottomIf u Opposite respecto a una hermana opcional. XQueryTree devuelve las hijas exactamente en ese orden, de abajo arriba, que es como xwininfo -tree y herramientas parecidas saben qué hay encima.

Para las ventanas de primer nivel, las hijas de la ventana raíz, en la práctica rigen otras reglas. Un gestor de ventanas que haya seleccionado SubstructureRedirect recibe los intentos de subir y bajar de los programas como eventos ConfigureRequest y hace lo que le parece, y EWMH añadió capas por encima: la ventana del escritorio al fondo, las ventanas normales en medio, los docks y las ventanas marcadas con _NET_WM_STATE_ABOVE por encima de ellas, y una ventana a pantalla completa con el foco en lo más alto. La propiedad _NET_CLIENT_LIST_STACKING de la raíz publica el resultado para pagers y barras de tareas. Windows llama a lo mismo orden Z, con una banda aparte para "topmost", y macOS habla de niveles de ventana. En los tres, que subir una ventana y darle el foco sean dos operaciones distintas es una fuente constante de errores, que es lo que auto-raise existe para disimular.

← Volver al léxico