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:
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.
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.
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.)
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.