Como calibre uma tela sensível ao toque em um sistema de monitor duplo?

18

Eu tenho uma configuração de monitor duplo de dois tamanhos diferentes. O meu monitor principal é uma tela sensível ao toque widescreen Acer T230H de 23 polegadas e a segunda é uma tela comum de 20 polegadas. Quando uso a tela sensível ao toque, o cursor aparece na tela secundária, dependendo de onde eu toquei na tela. Como faço para calibrá-lo para controlar apenas meu monitor principal?

TheCodeGeek
fonte
Qualquer um? Faz três meses. Qualquer pessoa que possa me ajudar a calibrar minha tela sensível ao toque seria de grande ajuda.
TheCodeGeek 12/12

Respostas:

1

Você já tentou usar o xinput-calibrator ?

int_ua
fonte
4
xinput-calibratornão me ajudou. Ele se estendeu por todo o espaço de exibição, que não é acessível na minha instalação. Tentei definir manualmente os valores de calibração para o tamanho e a posição da tela sensível ao toque, mas não teve efeito. As respostas utilizadas xinput map-to-outputforam mais fáceis e mais úteis.
Stephen Angelico
37

Como Beni Cherniavsky-Paskin sugeriu em um comentário, usei o seguinte comando para mapear um dispositivo de entrada para uma tela de saída:

xinput map-to-output <device> <output>

Para descobrir qual é qual, primeiro corri xinputpara listar os dispositivos de entrada. A partir dessa listagem, observei que minha tela sensível ao toque era "QUANTA Optical Touch Screen" e listada como ID do dispositivo 12. Em seguida, corri xrandrpara determinar a tela sensível ao toque, que no meu caso era VGA1.

Basta digitar o seguinte comando e executar o truque:

xinput map-to-output 12 VGA1
Paul Lammertsma
fonte
11
É possível tornar isso persistente?
Wes
xinput (pelo menos a partir da versão 1.6.2 permite que você use o nome do dispositivo em vez do ID (que pode mudar) para o comando xinput acima torna-se:.
JJones
xinput map-to-output 'QUANTA Optical Touch Screen' VGA1
JJones
e você pode usar esse comando para torná-lo persistente. No KDE, você pode usar o programa Autostart e inserir esse comando com suas opções em "Add Program", ou colocá-lo em um arquivo, torná-lo executável e selecioná-lo no Autostart. Para outros, tente procurar por: inicialização do xinput e um dos gnomos, LWM ou cinnimon etc.
JJones
17

Como Beni Cherniavsky-Paskin e Paul Lammertsma sugeriram nos comentários acima, xinput map-to-output <device> <output>fizeram o truque para mim!

primeiro você precisa executar xinputpara obter o ID do dispositivo inutilizado,

o comando acima retorna algo assim para mim.

user@user-hpEnvy:~$ xinput
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech Unifying Device. Wireless PID:401b   id=10   [slave  pointer  (2)]
⎜   ↳ Logitech Unifying Device. Wireless PID:4016   id=11   [slave  pointer  (2)]
⎜   ↳ ELAN20E7:00 04F3:20E7                     id=13   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=15   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Power Button                              id=9    [slave  keyboard (3)]
    ↳ HP Truevision HD                          id=12   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=14   [slave  keyboard (3)]
    ↳ HP Wireless hotkeys                       id=16   [slave  keyboard (3)]
    ↳ HP WMI hotkeys    

Em seguida, corri xrandrpara obter a lista de telas e a saída do comando é assim

user@user-hpEnvy:~$ xrandr
Screen 0: minimum 8 x 8, current 3840 x 1080, maximum 32767 x 32767
eDP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm
   1920x1080      60.0*+   59.9     40.0  
   1680x1050      60.0     59.9  
   1600x1024      60.2  
   1400x1050      60.0  
   1280x1024      60.0  
   1440x900       59.9  
   1280x960       60.0  
   1360x768       59.8     60.0  
   1152x864       60.0  
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
HDMI1 connected primary 1920x1080+1920+0 (normal left inverted right x axis y axis) 600mm x 340mm
   1920x1080      60.0*+   50.0     59.9  
   1680x1050      59.9  
   1600x900       60.0  
   1280x1024      60.0  
   1440x900       59.9  
   1280x720       60.0     50.0     59.9  
   1024x768       60.0  
   800x600        60.3  
   720x576        50.0  
   720x480        60.0     59.9  
   640x480        60.0     59.9  
   720x400        70.1  
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

No meu caso, o dispositivo de toque é ELAN20E7:00 04F3:20E7 id=13e a tela de toque ativado é eDP1para corrigir o problema. Eu preciso mapear o dispositivo no monitor apenas para isso eu executei este comandoxinput map-to-output 13 eDP1

Problema resolvido e está funcionando bem novamente :)

Estou usando o sistema operacional elementar freya, portanto, ele deve funcionar para todas as distros baseadas no Ubuntu 14.04 LTS

Ajith R Nair
fonte
O mesmo comando exato funcionou para mim no meu laptop HP Envy 15-k016nr com monitor externo.
user207863
Isso funcionou perfeitamente no meu Dell Inspiron 5547. Curiosamente, usei o id=13que corresponde ao meu ELAN Touchscreen, embora SynPS/2 Synaptics TouchPadseja o que xinput-calibratorestava sendo usado por padrão.
SimonT
3

Muito difícil de encontrar solução, mas na verdade bem simples, basta seguir a resposta de 'phnomic' aqui: Tela sensível ao toque e monitor externo adicional . Funciona perfeitamente com o meu Fujitsu T730 com todos os tipos de monitores externos!

Consumologia
fonte
Para as pessoas que enfrentam esse problema, eu recomendo esta solução. Eu acho que é mais limpo e mais rápido que a resposta aceita.
Tomas
11
Isso usa xsetwacom, que eu presumo que funciona apenas para dispositivos Wacom? No entanto, existe um genérico xinput map-to-output <device> <output> com espírito semelhante.
Beni Cherniavsky-Paskin