diff --git a/virt-viewer/launch.sh b/virt-viewer/launch.sh index 562a9a9..9b5ecc4 100644 --- a/virt-viewer/launch.sh +++ b/virt-viewer/launch.sh @@ -3,24 +3,71 @@ # Définir l'URI par défaut de libvirt export LIBVIRT_DEFAULT_URI="qemu:///system" +# Déplacer vers l'espace de travail 3 +wmctrl -s 3 + # Lancer virt-viewer pour la VM "windaube" en arrière-plan -virt-viewer -f -w -a windaube & +virt-viewer -w -a windaube & -# Nom de la fenêtre à rechercher -window_name="Windaube" - -# Ajouter une pause pour donner le temps à la fenêtre de se créer +# Attendre quelques secondes pour s'assurer que virt-viewer est lancé sleep 5 -# Attendre que la fenêtre apparaisse et obtenir son ID -window_id="" -while [ -z "$window_id" ]; do - window_id=$(wmctrl -l | grep "${window_name}" | awk '{print $1}') - sleep 1 -done +# Fonction pour maximiser une fenêtre de virt-viewer +maximize_window() { + local window_title="$1" + local attempt=0 + local max_attempts=10 + local found=1 -# Déplacer la fenêtre vers l'espace de travail 3 -wmctrl -i -r "$window_id" -t 3 + while [ $attempt -lt $max_attempts ]; do + # Vérifier si la fenêtre existe + if wmctrl -l | grep -q "$window_title"; then + wmctrl -r "$window_title" -b add,maximized_vert,maximized_horz + found=0 + break + fi + sleep 1 + attempt=$((attempt + 1)) + done -# Redimensionner et repositionner la fenêtre -wmctrl -i -r "$window_id" -e 0,1980,0,2560,1440 + if [ $found -eq 1 ]; then + echo "La fenêtre '$window_title' n'a pas été trouvée après $max_attempts tentatives." + fi +} + +# Fonction pour déplacer une fenêtre de virt-viewer +move_window() { + local window_title="$1" + local x="$2" + local y="$3" + local attempt=0 + local max_attempts=10 + local found=1 + + while [ $attempt -lt $max_attempts ]; do + # Vérifier si la fenêtre existe + if wmctrl -l | grep -q "$window_title"; then + wmctrl -r "$window_title" -e 0,$x,$y,-1,-1 + found=0 + break + fi + sleep 1 + attempt=$((attempt + 1)) + done + + if [ $found -eq 1 ]; then + echo "La fenêtre '$window_title' n'a pas été trouvée après $max_attempts tentatives." + fi +} + +# Maximiser la fenêtre "Windaube (1)" +maximize_window "Windaube (1)" + +# Déplacer la fenêtre "Windaube (1)" sur le deuxième moniteur (exemple de position à adapter) +move_window "Windaube (1)" 0 0 + +# Maximiser la fenêtre "Windaube (2)" +maximize_window "Windaube (2)" + +# Revenir vers l'espace de travail 0 +wmctrl -s 0