1 votes

Déplacer les fenêtres entre les écrans sans les faire glisser

J'utilise un iMac 2011 sous MacOS Sierra avec une sortie HDMI connectée à un projecteur. Lorsque je veux regarder un film sur le projecteur, je fais simplement glisser iTunes sur le deuxième écran et je regarde. Si j'oublie de faire glisser iTunes vers l'arrière, il se retrouve bloqué sur l'autre écran. En effet, le Mac voit toujours le deuxième écran lorsque le projecteur est éteint. Cela signifie que le seul moyen de ramener iTunes sur l'écran principal de l'iMac est de rallumer le projecteur pour que je puisse voir la fenêtre iTunes et la faire glisser vers l'écran principal. Cela se produit également pour toute autre application que je "laisse derrière moi" sur l'écran externe et que j'oublie de faire glisser vers l'écran principal. Ce que j'ai essayé :

  • Quitter et relancer l'application. Cela ne fonctionne pas, car MacOS se souvient de l'écran sur lequel l'application était précédemment affichée et la relance sur cet écran.
  • Trouver l'application dans Mission Control. Cela ne fonctionne pas, car chaque écran a son propre Mission Control. Je ne peux donc pas voir les espaces sur l'écran externe pour saisir la fenêtre iTunes et la faire glisser vers un espace sur l'écran intégré.
  • Cliquez avec le bouton droit de la souris sur l'icône de l'application dans le dock et sélectionnez "Afficher toutes les fenêtres". Cela ne fait qu'afficher mon fond d'écran avec un message au centre disant "Aucune fenêtre disponible" (sans doute parce que la fenêtre est sur l'écran externe).

J'espère qu'il existe une combinaison de touches ou une autre astuce pour forcer les fenêtres de l'application à se déplacer vers l'écran actuel.

0 votes

Lorsque j'utilise VLC et que je diffuse des contenus sur mon Apple TV, je l'ai configuré de manière à ce que, lorsque je clique sur "Full Stream", MacOS l'affiche sur la télévision et que le mode non Plein écran revienne sur mon écran principal. De cette façon, si j'oublie, un simple "Escape" rend la fenêtre invisible à nouveau accessible.

0voto

Zonker.in.Geneva Points 800

Si vous voulez une astuce, vous pouvez débrancher brièvement le câble HDMI de l'iMac. Cela devrait signaler à Mac OS qu'il n'y a qu'un seul écran et il déplacera tout Windows vers le seul écran restant.

0 votes

Malheureusement, cela ne fonctionne pas. Bien que toutes les fenêtres soient regroupées sur l'écran intégré lorsque le câble HDMI est débranché, elles retournent sur l'écran externe lorsque vous rebranchez le câble.

0 votes

they go back to the external display when you re-connect the cable - Il semble qu'après avoir mis mon mac à jour vers High Sierra, ils ne le font plus :(

0voto

mashers Points 153

L'Applescript suivant fait le travail :

tell application "iTunes"
    set position of windows to {100, 100}
    activate
end tell

J'ai essayé d'ajouter une entrée de texte pour que vous puissiez l'utiliser pour d'autres applications, comme celle-ci :

set theApp to the text returned of (display dialog "Which app do you want to bring back?" default answer "")

tell application theApp
    set position of windows to {100, 100}
    activate
end tell

Malheureusement, il ne reconnaît plus l'attribut "position" de "Windows". J'ai envisagé d'envelopper le bloc tell dans using terms from application theApp mais cela n'a pas fonctionné car using terms from application semble nécessiter une application nommée, et non une variable. En le forçant avec using terms from application "iTunes" fonctionne si vous tapez "iTunes" dans l'invite de texte, mais toute autre application entraîne une erreur dans la correspondance avec l'adresse de l'utilisateur. position propriété.

J'ai créé une application rapide dans XCode qui fournit une entrée de texte pour le nom de l'application, puis l'intègre dans un Applescript. L'Applescript déplace toutes les fenêtres de l'application spécifiée dans la position spécifiée par le texte suivant xOffset y yOffset sur l'écran actuellement sélectionné. L'application pourrait être rendue plus agréable en ajoutant un menu de sélection des applications en cours d'exécution, ou même un moyen de spécifier la position dans laquelle la fenêtre doit être déplacée. Ce ne serait pas difficile à faire, donc je pourrais y jouer un jour.

Quoi qu'il en soit, le code source de l'application est sur GitHub, donc si quelqu'un d'autre le trouve utile, le voici.

https://github.com/mashers/BringAppsBack

0voto

buboh Points 121

Bien que je ne sois pas en mesure de les tester pour le moment, puisque je n'ai pas de deuxième écran sous la main, j'ai eu quelques idées :

  • Il existe une option dans les paramètres de Mission Control appelée "Les écrans utilisent des espaces séparés". Pouvez-vous voir les espaces de votre projecteur dans Mission Control sur votre Mac, avec cette option décochée ?
  • Si vous utilisez iTunes en mode plein écran, le voyez-vous dans Mission Control sur votre Mac ?
  • "Magnet" du Mac App Store vous donne un raccourci clavier pour déplacer Windows entre les écrans. Il est actuellement en réduction (du moins dans le MAS autrichien) et coûte 1,09€ / ~1$.

0 votes

Merci pour vos suggestions. Displays use separate spaces n'a pas fait de différence - je n'ai pas pu déterminer ce qu'il faisait réellement, car il n'y avait pas de différence perceptible (oui, je me suis déconnecté et reconnecté après avoir changé l'option). Cela ne fait aucune différence si iTunes est en mode plein écran. Merci pour la recommandation de Magnet. J'ai en fait écrit une petite application pour faire spécifiquement ce dont j'ai besoin (voir ma réponse ci-dessous), je vais donc l'utiliser en l'absence d'une méthode intégrée pour le faire.

0 votes

J'ai pu tester Displays use separate spaces aujourd'hui. Si cette case n'est pas cochée, la position des espaces des deux écrans est synchronisée, ce qui signifie que vous avez toujours le même nombre d'espaces sur les deux écrans et que si vous changez d'espace, cela se fera sur les deux moniteurs. Pour les applications en plein écran, cela signifie que l'un des écrans affichera un écran noir. -- Mais cela n'aide toujours pas à résoudre votre problème.

0 votes

Merci @buboh - c'est une description utile. C'est un paramètre un peu inutile, mais au moins je sais maintenant ce qu'il fait. C'est vraiment bizarre qu'il n'y ait aucun moyen d'accéder aux espaces sur un autre écran. Cela semble être un oubli. Quoi qu'il en soit, j'ai accepté ma propre réponse ci-dessous avec un lien vers le repo GitHub de l'application que j'ai écrite pour résoudre ce problème.

0voto

Yuriy Ershov Points 121

Il existe un certain nombre d'outils permettant de le faire. Mes préférés sont :

  1. Rectangle https://rectangleapp.com/
  2. Outil "Better Touch https://folivora.ai/

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X