Отключение реконфигурации монитора при закрытии крышки

7

Мне часто приходится переносить свой ноутбук с одного рабочего места на другое. Когда я это делаю, есть два события, на которые отвечает Ubuntu, изменив настройку монитора:

  • Снятие и установка кабеля VGA
  • Закрытие / открытие крышки ноутбука.

Удаление VGA-кабеля дает мне то, что мне нужно (один экран, самое высокое собственное разрешение на внешнем экране, если он подключен, в противном случае - с самым высоким разрешением на ноутбуке), реакция на закрытие / открывание крышки ноутбука не так хороша.

Каждый раз, когда я закрываю или открываю крышку, Ubuntu перенастраивает настройку монитора. Когда я закрываю крышку сейчас ... экран становится черным в течение нескольких секунд, и он переключается на клонирование, при этом экран моего ноутбука отключен. Повторное открытие результатов ... вкратце - черный экран, затем внешний монитор используется как расширение для рабочего стола.

Обновление: в последнее время ситуация немного изменилась, теперь поведение более предсказуемо. Закрытие крышки переключается на один дисплей, открываясь на двойной экран (не клонированный). Мой вопрос по-прежнему точен: см. Ниже.

Ubuntu слишком много думает. Мой первый и главный вопрос: Можно ли позволить Ubuntu игнорировать закрытие событий закрытия?

В идеале (или когда нет способа решить вышеупомянутый вопрос), я бы хотел изменить , как он имеет дело с реконфигурацией экрана. Почему Ubuntu переключает конфигурацию экрана между внешним, клонированным и отдельным дисплеем? Не могу ли я просто настроить его, чтобы всегда использовать внешний монитор, если он присутствует, в режиме одного экрана?

Обратите внимание, что аналогичные вопросы заданы раньше (особенно этот ), но они были закрыты, возможно, ошибочно.

Любые идеи очень приветствуются, я не против немного поиграть, чтобы увидеть, работает ли что-то.

    
задан Tomas 02.06.2012 в 04:16
источник

4 ответа

6
  

Есть ли способ, позволяющий Ubuntu игнорировать закрытие событий закрытия?

События крышки инициируются файлом lidbtn в /etc/acpi/events/ , который содержит две активные строки:

event=button[ /]lid
action=/etc/acpi/lid.sh -- comment this out with a # at the beginning

Вы можете игнорировать события открытия / закрытия крышки, комментируя вторую строку с # и затем перезагружая.

  

Я хочу изменить, как это связано с реконфигурацией экрана.

Вы можете посмотреть и попробовать изменить файл /etc/acpi/lid.sh и функции / команды, которые он ссылается.

НО (BIG CAVEAT): Если ваш компьютер для ноутбука использует крышку закрывать / открывать, чтобы включить / выключить внутренние / внешние видеовыходы, то это выходит за рамки функций обработчика событий ACPI.     

ответ дан izx 02.06.2012 в 05:11
источник
0

Возможно, это решение слишком тривиально, но может быть полезно. Вы пытались изменить параметры в меню настройки питания? Событие запускается, когда крышка закрыта на батарее или подключена. Обычно это приостанавливается для ноутбуков, но вы также можете «ничего не делать».

сообщите мне, если это трюк.

    
ответ дан leousa 11.06.2012 в 17:47
0

Это поведение является функцией Gnome и управляется параметром dconf. Вы можете изменить его через dconf-editor или напрямую с помощью командной строки:

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

В описании говорится следующее:

  

Сводка: отключить ли определенные мониторы после загрузки

     

'clone' отобразит то же самое на всех мониторах, «док» выключит внутренний монитор, «do-nothing» будет использовать поведение по умолчанию Xorg по умолчанию (расширение рабочего стола в последних версиях). По умолчанию «follow-lid» будет выбирать между «do-nothing» и «dock» в зависимости от того, открыта или закрыта крышка (соответственно).

Итак, если вы хотите использовать только внешний монитор, когда он подключен, используйте dock как <value> .

Если вы хотите, чтобы оба монитора всегда работали, независимо от того, закрыта ли крышка или нет, используйте do-nothing . (Я часто закрывал крышку временно, чтобы она не сияла в моей темной комнате, я не хотел, чтобы все окна переходили на внешний монитор.)

И, наконец, если вы хотите использовать экран ноутбука, но только когда он открыт, используйте follow-lid . (Случай использования: количество свободного места на вашем столе варьируется, и иногда вам нужно поставить ноутбук за монитор вместо него.)

    
ответ дан EvgEnZh 12.01.2018 в 16:14
0
  

Не могу ли я просто настроить его, чтобы всегда использовать внешний монитор, если он присутствует, в режиме одного экрана?

Я могу ответить на эту часть. Я бегу ubuntu 17.10 на wayland. В gnome-control-center -> device -> display вы можете выбрать single display с включенным $external_monitor , а затем нажать «применить». Это создает файл $HOME/.confg/monitors.xml . Файл фиксирует аркамент отображения, когда тот же $external_monitor подключен, и переключается на внутренний монитор после его отсоединения. Что лучше, вы можете поместить тот же monitors.xml в /var/lib/gdm3/.config/ , в этом случае то же самое для GDM тоже.

    
ответ дан funicorn 12.01.2018 в 16:39