#!/bin/bash # Obtiene las ventanas abiertas en el espacio de trabajo actual windows=$(hyprctl clients -j | jq -r '.[] | .address') # Cuenta las ventanas abiertas window_count=$(echo "$windows" | wc -l) # Define las posiciones y tamaños de cada ventana según la cuadrícula case $window_count in 1) hyprctl dispatch movewindow 50% 50% resizewindowpixel 100% 100% ;; 2) hyprctl dispatch focuswindow $(echo "$windows" | sed -n 1p) hyprctl dispatch movewindow 0 0 resizewindowpixel 50% 100% hyprctl dispatch focuswindow $(echo "$windows" | sed -n 2p) hyprctl dispatch movewindow 50% 0 resizewindowpixel 50% 100% ;; 3) # Configura tres ventanas, dos arriba y una en la mitad inferior hyprctl dispatch focuswindow $(echo "$windows" | sed -n 1p) hyprctl dispatch movewindow 0 0 resizewindowpixel 50% 50% hyprctl dispatch focuswindow $(echo "$windows" | sed -n 2p) hyprctl dispatch movewindow 50% 0 resizewindowpixel 50% 50% hyprctl dispatch focuswindow $(echo "$windows" | sed -n 3p) hyprctl dispatch movewindow 0 50% resizewindowpixel 100% 50% ;; 4) # Configura cuatro ventanas en una cuadrícula de 2x2 hyprctl dispatch focuswindow $(echo "$windows" | sed -n 1p) hyprctl dispatch movewindow 0 0 resizewindowpixel 50% 50% hyprctl dispatch focuswindow $(echo "$windows" | sed -n 2p) hyprctl dispatch movewindow 50% 0 resizewindowpixel 50% 50% hyprctl dispatch focuswindow $(echo "$windows" | sed -n 3p) hyprctl dispatch movewindow 0 50% resizewindowpixel 50% 50% hyprctl dispatch focuswindow $(echo "$windows" | sed -n 4p) hyprctl dispatch movewindow 50% 50% resizewindowpixel 50% 50% ;; esac