Удаление выделенного текста в VNC вырезает его, а не удаляет.

Удаление выделенного текста в VNC вырезает его, а не удаляет.

У меня запущен сеанс VNC, и я хотел бы поделиться буфером обмена между двумя системами в двух направлениях. Операция, которая не выполняется, заключается в том, что я беру URL из веб-браузера моего рабочего стола, захожу в сеанс VNC, выделяю текст в адресной строке, нажимаю «Удалить старый URL», а затем нажимаю CTRL-V, чтобы вставить URL с моего рабочего стола.

Часть, которая не работает, это то, где я удаляю старый URL. По какой-то причине выделение URL и удаление его любым способом, который я могу придумать (клавиша Backspace, клавиша Delete, щелчок правой кнопкой мыши и выбор «удалить» из контекстного меню и т. д.), приводит к тому, что этот текст вырезается в буфер обмена и отправляется на клиентский компьютер (затирая то, что я пытался скопировать изначально).

Если я не выделяю и вместо этого просто удерживаю клавишу backspace, пока URL не исчезнет, ​​буфер обмена сохраняется, поэтому, похоже, он влияет только на эту конкретную операцию. Я могу обойти эту проблему (вроде как), отключив обновления буфера обмена с сервера VNC (чтобы обновления отправлялись только от клиентов на сервер), но мне нужна двусторонняя поддержка.

Так как это происходит даже при удалении из контекстного меню, это не похоже на сопоставление клавиш. Я просто делаю это с помощью VNC, так что это может быть не связано, но у меня никогда не было такого поведения с X11 или GNOME (которые я использую дома ежедневно). Я также воспроизвел это между geditи notepadс идентичными результатами. Так что это, похоже, не проблема браузера.

  • VNC-сервер: TigerVNC 1.1
  • VNC-клиент: RealVNC 5.2
  • Рабочий стол сервера: GNOME 2.28 на RHEL 6.6
  • Клиентский рабочий стол: Windows 7

решение1

Похоже, что сервер VNC отправляетВыбор X-Windowв буфер обмена клиента.

Выбор X Window обновляется всякий раз, когда вы выделяете текст. В вашем случае это было сделано путем выделения текста в адресной строке браузера, затем сервер VNC скопировал его в буфер обмена клиента, который перезаписал ваш локальный буфер обмена. Действие удаления выделенного текста не имеет значения, поэтому не имеет значения, как вы его удалили.

Решение — отключить опцию «Отправить основной выбор зрителям» вvncconfig

решение2

Наконец, опция SendPrimary была перемещена на VNC Server. Так что теперь, чтобы отключить опцию SendPrimary, вам нужно добавить следующую строку в.vnc/config.d/vncserverui-virtual:

SendPrimary=0

Если вы хотите отключить его глобально, добавьте его в/etc/vnc/config.d/common.custom.

Чтобы изменения вступили в силу, необходимо перезапустить VNC-сервер.

Связанный контент