Похоже, ваш VNC-сервер создает виртуальный рабочий стол вместо предоставления существующего (что, я считаю, более распространенное поведение). Плюс Libre Office использует один «основной» процесс для каждого пользователя. Когда вы открываете дополнительный файл, новый процесс обнаруживает существующий, привязывает к нему задание и завершает работу. Я предполагаю, что старый процесс придерживается того дисплея, который был прав в момент его запуска.
После того, как вы уничтожите старый процесс, новый может открыть файл и сохранить его, с этого момента он становится «основным» процессом Libre Office. Он использует дисплей, который считает правильным.
Я думаю, что вы могли бы перенастроить сервер VNC для обеспечения существующего рабочего стола. С другой стороны, я полагаю, у вас были причины использовать отдельный виртуальный рабочий стол, поэтому вы можете не захотеть это менять.
То, что мне нравится, это способ, чтобы два параллельных экземпляра приложений открывались по отдельности ... чтобы я мог работать в Libre Office в VNC, одновременно открывая документы Libre Office на Фреде.
Я не знаю, как заставить Libre Office игнорировать старый процесс, запущенный для того же пользователя. Есть --display
вариант, но я не могу заставить его работать.
Смотрите этот вопрос: X11 forwarding - захватить окна уже запущенных программ . Мой ответ там вводит xpra
. Если вы запустите (первый) Libre Office с xpra
, вы сможете присоединиться к его окнам из других мест.
Посмотрите, что еще вы можете сделать . На мой взгляд, главное преимущество перед VNC - это возможность выбирать режим работы в момент подключения. Вы можете запустить новый рабочий стол, клонировать существующий, запустить программу или присоединиться к программе, которая уже запущена xpra
. Я думаю, довольно гибкий.
В наихудшем сценарии вы доберетесь до своего существующего рабочего стола только для того, чтобы аккуратно закрыть не- xpra
неокрашенные окна Libre Office без потери данных. Затем вы снова запустите Libre Office, на этот раз с xpra
удаленного клиента.