web-dev-qa-db-fra.com

Désactiver la reconfiguration du moniteur lors de la fermeture du couvercle

J'ai souvent besoin de déplacer mon ordinateur portable d'un lieu de travail à un autre. Lorsque je fais cela, il y a deux événements auxquels Ubuntu répond en modifiant la configuration du moniteur:

  • Retrait/connexion du câble VGA
  • Fermeture/ouverture du couvercle de l'ordinateur portable

Bien que le retrait du câble VGA me donne ce dont j'ai besoin (écran unique, résolution native la plus élevée sur l'écran externe, sinon résolution maximale sur l'ordinateur portable), la réponse du couvercle de l'ordinateur portable à l'ouverture/fermeture n'est pas aussi bonne.

Chaque fois que je ferme ou ouvre le couvercle, Ubuntu reconfigure la configuration du moniteur. Quand je ferme le couvercle maintenant ... l'écran devient noir pendant quelques secondes et il passe en mode clone, avec l'écran de mon ordinateur portable désactivé. La réouverture entraîne ... brièvement un écran noir, puis le moniteur externe est utilisé comme extension du bureau.

Mise à jour: Les choses ont changé un peu récemment, le comportement est maintenant plus prévisible. La fermeture du couvercle passe en affichage simple et en affichage double (non clone). Ma question est toujours exacte: voir ci-dessous.

Ubuntu pense trop. Ma première question: Est-il possible de laisser Ubuntu ignorer les événements de fermeture?

Idéalement (ou lorsqu'il n'y a aucun moyen de résoudre la question ci-dessus), je voudrais changer comment il traite de la reconfiguration de l'écran. Pourquoi Ubuntu bascule-t-il la configuration de l'écran entre affichage externe, clone et affichage unique? Je ne peux pas simplement le configurer pour qu'il utilise toujours le moniteur externe, lorsqu'il est présent, en mode écran unique?

Notez que des questions similaires ont déjà été posées (plus particulièrement celle-ci ), mais elles ont peut-être été fermées à tort.

Toutes les idées sont les bienvenues, cela ne me dérange pas de jouer un peu pour voir si quelque chose fonctionne.

8
Tomas

Est-il possible de laisser Ubuntu ignorer les événements de clôture?

Les événements de couvercle sont déclenchés par le fichier lidbtn dans /etc/acpi/events/, qui contient deux lignes actives:

 event = button [/]lid
action=/etc/acpi/lid.sh - commentez-le avec un # au début 

Vous pouvez ignorer les événements d'ouverture/fermeture de lid en commentant la deuxième ligne avec un # puis en redémarrant.

Je voudrais changer la façon dont il traite avec la reconfiguration de l'écran.

Vous pouvez consulter et essayer de modifier le fichier /etc/acpi/lid.sh et les fonctions/commandes qu’il référence.

BUT (BIG CAVEAT): Si le BIOS de votre ordinateur portable utilise le couvercle fermé/ouvert pour activer/désactiver les ports de sortie vidéo internes/externes, cela ne relève pas du pouvoir du gestionnaire d'événements ACPI du système d'exploitation.

7
ish

Ce comportement est une fonctionnalité de Gnome et il est contrôlé par un paramètre dconf. Vous pouvez le changer via dconf-editor ou directement en ligne de commande:

gsettings set org.gnome.settings-daemon.plugins.xrandr default-monitors-setup <value>

La description dit ce qui suit:

Résumé: Indique s'il faut désactiver des moniteurs spécifiques après le démarrage

'clone' affichera la même chose sur tous les moniteurs, 'dock' éteindra le moniteur interne, 'do-nothing' utilisera le comportement par défaut de Xorg (extension du bureau dans les versions récentes). La valeur par défaut 'follow-lid' choisira entre 'ne rien faire' et 'dock' selon que le couvercle est (respectivement) ouvert ou fermé.

Ainsi, si vous souhaitez utiliser uniquement le moniteur externe lorsqu'il est connecté, utilisez dock comme <value>.

Si vous voulez que les deux moniteurs fonctionnent toujours, que le couvercle soit fermé ou non, utilisez do-nothing. (Je fermais souvent le couvercle temporairement pour ne pas qu'il brille dans ma pièce sombre, je ne voulais pas que toutes les fenêtres migrent vers un moniteur externe.)

Et enfin, si vous souhaitez utiliser l'écran de l'ordinateur portable mais uniquement lorsqu'il est ouvert, utilisez follow-lid. (Cas d'utilisation: la quantité d'espace libre sur votre bureau varie et vous devez parfois placer l'ordinateur portable derrière votre moniteur plutôt que près de celui-ci.)

0
EvgEnZh

Puis-je simplement le configurer pour qu'il utilise toujours le moniteur externe, lorsqu'il est présent, en mode écran unique?

Je peux répondre à cette partie. Je lance Ubuntu 17.10 sur Wayland. Dans le gnome-control-center -> device -> display, vous pouvez choisir single display avec uniquement le $external_monitor activé, puis cliquez sur "Appliquer". Cela génère un fichier $HOME/.confg/monitors.xml. Le fichier corrige l’affichage quand le même $external_monitor est connecté, et bascule sur le moniteur interne une fois déconnecté. Quoi de mieux, vous pouvez mettre le même monitors.xml dans /var/lib/gdm3/.config/, dans ce cas, la même chose vaut pour GDM.

0
funicorn