2 votes

Existe-t-il une solution générique pour réactiver une fenêtre qui a été "minimisée dans la barre des tâches" ?

J'ai écrit un script qui répond à un raccourci clavier en, si elle n'est pas déjà ouverte, exécutant l'application Spotify.

Si Spotify est déjà ouvert, le script utilise xdotool pour activer la fenêtre (la mettre "en avant"). Cela fonctionne très bien en soi - mais il y a un problème. Si vous "fermez" la fenêtre Spotify (en appuyant sur le X dans le coin, par exemple), la fenêtre disparaît complètement et n'est accessible que par la barre d'état système. Spotify est toujours en cours d'exécution, mais xdotool ne peut pas activer la fenêtre - il ne fait rien.

Comment puis-je mettre en avant une fenêtre "fermée" dans ce cas ? Est-ce que c'est impossible à cause de la façon dont Spotify est écrit ? xdotool retournera l'ID de la fenêtre correctement même si elle est fermée.

J'ai essayé la fonction "windowmap" et "windowmove 0 0", mais aucun des deux n'apporte vraiment de changement.

EDIT : L'utilisateur muru suggère de ré-exécuter Spotify, dans mon cas, ce qui finit par fonctionner, alors que ce n'était pas le cas auparavant. Cela dépend de la façon dont Spotify gère la réouverture. J'aimerais bien connaître une solution générique si elle existe.

1voto

Tjirp Points 1022

Dans un script de télécommande par exemple, j'ai réussi à "élever" Clémentine du plateau via le D-Bus :

qdbus org.mpris.clementine /org/mpris/MediaPlayer2 Raise

Cela devrait fonctionner de la même manière avec Spotify, puisqu'il supporte le protocole D-Bus. La commande correspondante serait

dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Raise

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X