X11 ponteiro múltiplo, conflitos de ponteiro

2

Em uma tentativa de continuar usando meu PC enquanto automatizo uma aplicação GUI, eu criei 2 ponteiros em minha máquina usando xinput, um sendo controlado por mim, o outro por pyautogui.

no meu sistema isso é feito por:

xinput create-master mynewpointer
xinput reattach 10 11

Eu uso o ponteiro mestre 11 pyautogui usa o ponteiro padrão 2

No entanto, os ponteiros entram em conflito entre si de várias maneiras, capturando o foco um do outro sendo um dos maiores problemas.

Mesmo usando xinput --map-to-output ou --set-cp não funciona, o ponteiro ainda "move" de volta da janela / monitor que está sendo testado quando meu ponteiro aponta para uma nova janela.

Existe alguma maneira de separar esses ponteiros?

    
por keda 19.05.2016 / 01:22

1 resposta

0

Talvez você possa usar um servidor X11 dedicado separado para o aplicativo. Isso pode ser tão simples quanto rodar

Xnest :1 &

e depois executar seu aplicativo em DISPLAY =: 1. No entanto, o cursor não é mostrado a menos que o cursor real esteja na janela, e mover o cursor para a janela moverá o cursor Xnest.

Outra alternativa é iniciar um servidor VNC. Isso é um pouco mais independente.

vncserver :1 securitytypes=none -interface localhost
vncviewer :1

Há também o servidor Xephyr aninhado, que é como o Xnest, mas adiciona muitos recursos que o servidor subjacente pode não ter e também existe em uma versão com OpenGL.

    
por 19.05.2016 / 08:53