Проблемы с несколькими мониторами и рабочими пространствами в версии 24.04.

Вопрос или проблема

У меня есть настольная установка с 3 мониторами, и я активно использую несколько рабочих пространств, где организую открытые программы/окна по личным или рабочим интересам и так далее; в каждом рабочем пространстве самое важное остается на среднем мониторе, а остальные вещи переходят на один из боковых мониторов. Если я перезагружаю компьютер и открываю те же программы, система ‘запоминает’ рабочее пространство и монитор всех окон. Если один из мониторов отключен, система перераспределяет окна отключенного монитора на другие 2, и если монитор снова подключен, система снова организует прежнюю трехмониторную схему (что-то вроде этого, но все равно).

Недавно я установил свежую Ubuntu 24.04 (Gnome, Wayland, Nvidia карта и проприетарный драйвер), и чаще всего поведение расположения при отключении/подключении любого монитора такое же, как и раньше, но иногда случается, что система просто забывает все. ВСЕ окна ВСЕХ рабочих пространств перемещаются в первое рабочее пространство и на средний монитор, и мне приходится все организовывать с нуля снова. Вы можете представить, насколько это раздражает.


РЕДАКТИРОВАНИЕ: моя конфигурация Настройки -> Многозадачность:

  • Рабочие пространства: “Фиксированное число: 5”
  • Мультимонитор: “Рабочие пространства на всех дисплеях”
  • Переключение приложений: “Включить приложения из всех рабочих пространств” и “Включить приложения со всех мониторов”

Мой первый вопрос: где хранится информация о расположении окон? Возможно, я могу ‘скриптизировать’ расположение ‘известных’ программ/окон.

Второй вопрос: где находится код для управления этим расположением? Возможно, я могу внести свой вклад в решение этой проблемы. Я пытался переместить свои мониторы в другое расположение в приложении Настройки -> Дисплеи, но это не решило проблему.

Ответ или решение

Вопрос, который вы подняли относительно поведения окон в многомониторной и многопространственной среде Ubuntu 24.04, весьма актуален для многих пользователей, сталкивающихся с подобными проблемами. Давайте разберёмся, где могут быть корни этой проблемы и что можно предпринять.

Где хранится информация о расположении окон?

  1. Конфигурационные файлы и сессии: Обычно информация о сессиях и размещении окон в Linux может храниться в различных конфигурационных файлах, зависящих от окна менеджера и настроек сессий. В случае GNOME и Wayland, этот процесс может быть несколько нетривиальным из-за постоянной эволюции интерфейсов. В Ubuntu и GNOME информация о доступных сеансах может храниться в файлах конфигурации в директории ~/.config/. Также стоит обратить внимание на менеджеры сеансов, такие как Gnome-session, которые могут управлять запоминанием состояний отдельных сеансов.

  2. Состояние диспетчера окон: GNOME по умолчанию не сохраняет состояния окон между сеансами, так как это считается устаревшей практикой, тем не менее сторонние утилиты могут помочь в решении этой проблемы, например, Devil's Pie или Devilspie2, которые позволяют описывать правила для автоматического позиционирования окон.

Где находится код для управления окном?

  1. Исходный код GNOME и Wayland: Если вы хотите внести свой вклад в улучшение функциональности, вам стоит начать с изучения исходного кода GNOME и Wayland. Репозитории для GNOME доступны на GNOME GitLab, а для Wayland – на freedesktop.org.

  2. Комьюнити и процессы развития: Рассмотрите возможность взаимодействия с сообществом разработчиков Ubuntu и GNOME. Часто именно обсуждения в mailing lists или форумах помогают ускорить поиск решения, ведь вы можете не быть единственным, кто сталкивается с этой проблемой.

Возможные решения и утилиты

  1. Скриптование и автоматизация: Если проблема состоит в некорректном перераспределении окон, вы можете исследовать инструменты, такие как wmctrl или xrandr, для Wayland аналогов меньше, но такие утилиты, как sway, могут предоставить некоторую функциональность. Scripts, которые используют API GNOME, такие как gjs (GNOME JavaScript bindings), также могут помочь.

  2. Прикладные изменения и настройки: Попробуйте использовать расширения для GNOME Shell, такие как Workspace Indicator или Multi Monitors Add-On, которые могут предложить улучшенное управление рабочими пространствами.

Ваше желание внести вклад в решение проблемы замечательно и может принести пользу многим пользователям в будущем. Если у вас есть навыки программирования, рассмотрите возможность участия в разработке откроенного ПО.

Оцените материал
Добавить комментарий

Капча загружается...