Se lanzó el servidor compuesto Niri 0.1.10, que implementa un método de diseño en mosaico al estilo de la extensión PaperWM de GNOME, en el que las ventanas se agrupan en una cinta que se desplaza sin fin en la pantalla. Abrir una nueva ventana hace que la cinta se expanda, pero las ventanas agregadas anteriormente no cambian su tamaño. El proyecto se basa en el protocolo Wayland, pero permite ejecutar aplicaciones X11 utilizando el servidor Xwayland DDX. El código del proyecto se distribuye bajo la licencia GPLv3. Los paquetes se crean para Fedora, NixOS, Arch Linux y FreeBSD.
La diferencia fundamental entre Niri y PaperWM es que cada monitor tiene su propia cinta de ventanas que no se cruza con las cintas de otros monitores (en PaperWM, el trabajo separado con monitores no se puede implementar debido a la vinculación a las coordenadas globales de la ventana en GNOME Shell). Niri admite HiDPI y puede ejecutarse en sistemas con múltiples GPU (por ejemplo, sistemas híbridos con una tarjeta gráfica discreta y una GPU integrada). Hay una interfaz incorporada para tomar capturas de pantalla y grabar screencasts, cuya característica es la capacidad de excluir de la grabación ventanas individuales con información confidencial.
Los escritorios virtuales en Niri se crean dinámicamente y, de manera similar a GNOME, se colocan verticalmente (la cinta de la ventana gira horizontalmente y la cinta del escritorio gira verticalmente). Cada monitor puede mostrar un conjunto independiente de escritorios virtuales. Puede utilizar gestos de control del panel táctil para cambiar entre escritorios y ventanas. Cuando se apaga el monitor, el diseño del escritorio virtual se recuerda y se transfiere al monitor restante, y cuando se devuelve el monitor, se restaura a su estado original. La configuración se realiza a través de un archivo de configuración que le permite cambiar parámetros como el ancho del marco, el relleno, los modos de salida y el tamaño de las ventanas. Los cambios realizados en el archivo de configuración se aplican automáticamente sin reiniciar el servidor compuesto.
Versículos nuevos:
- Se agregó un modo de movimiento de ventana interactivo que le permite arrastrar una ventana a una nueva ubicación manteniendo presionado el título de la ventana con el mouse o tocándolo en la pantalla táctil. Para evitar que el diseño cambie involuntariamente cuando comienza a arrastrar, debe superar un cierto umbral de resistencia para separarse de la posición actual.
- Se agregó la capacidad de vincular comandos a los eventos de abrir o cerrar la tapa de la computadora portátil o cambiar la computadora portátil al modo tableta. Por ejemplo, después de cambiar al modo tableta, puedes activar automáticamente el uso del teclado en pantalla. También se agrega la capacidad de mover automáticamente escritorios virtuales a un monitor externo (si está conectado) después de cerrar la tapa de la computadora portátil.
- Se agregó soporte para la consulta set_cursor_position_hint. Si la posición del cursor está bloqueada en el modo lock_pointer, la solicitud agregada permite a la aplicación pasar información al administrador compuesto sobre la posición final del cursor después de haberlo movido.
- Se agregaron opciones para ocultar el cursor mientras se escribe o después de una cierta cantidad de inactividad.
- Se han agregado nuevas configuraciones del dispositivo de entrada, como una sección con opciones de trackball y opciones para desplazarse con la rueda del mouse o el panel táctil.
- Garantiza que la información sobre el escritorio virtual activo se guarde después de volver a conectar el monitor.
- Se agregó una acción de "encender monitores" para controlar si el monitor se reactiva del modo de espera (de manera predeterminada, el monitor se activa automáticamente después de cualquier evento de entrada).
- Se agregó un archivo para iniciar niri bajo el control del administrador de servicios dinit.
Fuente: opennet.ru