Excluir a seleção de texto no VNC corta-a em vez de excluí-la

Excluir a seleção de texto no VNC corta-a em vez de excluí-la

Tenho uma sessão VNC em execução e gostaria de compartilhar a área de transferência entre os dois sistemas bidirecionalmente. A operação que está falhando é onde eu pego uma URL do navegador da minha área de trabalho, vou para minha sessão vnc, realço o texto na barra de endereço, clico em excluir a URL antiga e, em seguida, CTRL-V para colar a URL da minha área de trabalho.

A parte que está falhando é onde excluo o URL antigo. Por algum motivo, destacar o URL e excluí-lo usando qualquer método que eu possa imaginar (backspace, tecla delete, clicar com o botão direito e selecionar "excluir" no menu de contexto, etc.) resulta no corte do texto para a área de transferência e enviado ao cliente computador (destruindo o que eu estava tentando copiar em primeiro lugar).

Se eu não destacar e, em vez disso, apenas mantiver pressionada a tecla backspace até que o URL desapareça, a área de transferência será preservada, de modo que parece afetar apenas esta operação específica. Posso solucionar o problema (mais ou menos) desativando as atualizações da área de transferência do servidor VNC (para que as atualizações só vão dos clientes para o servidor), mas quero suporte bidirecional.

Como isso acontece mesmo ao excluir do menu de contexto, não parece um mapeamento de teclas. Acontece que estou fazendo isso com o VNC, então pode não estar relacionado, mas nunca tive esse tipo de comportamento com o X11 ou GNOME antes (que uso em casa diariamente). Eu também reproduzi isso entre gedite notepadcom resultados idênticos. Portanto, não parece ser um problema do navegador.

  • Servidor VNC: TigerVNC 1.1
  • Cliente VNC: RealVNC 5.2
  • Desktop do servidor: GNOME 2.28 no RHEL 6.6
  • Área de trabalho do cliente: Windows 7

Responder1

Parece que o servidor VNC está enviando oSeleção de janela Xpara a área de transferência do cliente.

A seleção do X Window é atualizada sempre que você seleciona texto. No seu caso, isso foi feito selecionando o texto na barra de endereço do seu navegador, o servidor vnc copiou-o para a área de transferência do cliente, que substituiu a área de transferência local. O ato de deletar o texto selecionado não é relevante, portanto não importa como você o deletou.

A solução é desabilitar a opção "Enviar seleção primária aos visualizadores" emvncconfig

Responder2

Por último, a opção SendPrimary foi movida para o servidor VNC. Então agora para desabilitar a opção SendPrimary, você deve adicionar a seguinte linha ao.vnc/config.d/vncserverui-virtual:

SendPrimary=0

Se você quiser desativá-lo globalmente, adicione-o a/etc/vnc/config.d/common.custom.

Você precisa reiniciar o servidor VNC para que isso tenha efeito.

informação relacionada