Quem decide se há ponteiro do mouse ou tela de toque?

3

Instalei um filme de tela sensível ao toque que é conectado via USB e é reconhecido como um dispositivo de mouse.

Por isso, não posso deslizar em uma página da web. Ele clica e seleciona ou clica e arrasta algo na tela quando tento roubar.

Há perguntas e respostas que não ajudaram no meu caso:

A descrição original do meu problema é aqui .

Então, quem é responsável por reconhecer o dispositivo de entrada como um mouse ou uma tela sensível ao toque, sistema operacional ou aplicativo? Então, onde devo procurar a solução?

Pesquisas e anotações para mim mesmo

Com a ajuda de este tópico do fórum (com algumas alterações ), Eu poderia fazer ts_test funcionar. Calibrei a tela de toque, desenhei um círculo na tela, etc.

Agora o que? O navegador da Web que estou usando ainda seleciona algum texto em vez de rolar na página.

Alguém diz "O aplicativo deve usar o dispositivo de entrada diretamente" e alguém diz "Application não tem nada a ver com a entrada dispositivo diretamente ".

Devo editar o xorg.conf para emular o evento de rolagem só porque meu aplicativo (Midori, o navegador da Web neste caso) não pode usar "a tela de toque", ou um telefone Android faz a mesma coisa já?

Como um aplicativo obtém os eventos do mouse em primeiro lugar? Abrindo o arquivo do dispositivo ( /dev/input/event* ) sozinho ou de alguma forma do servidor Xorg? Se o aplicativo lida com o próprio arquivo de dispositivo, como o servidor Xorg poderia emular o material de rolagem do mouse?

Se o aplicativo estiver ouvindo o servidor Xorg pelos eventos mouse / touch-multitouch / whatever, o aplicativo deve ter esses eventos mouse / touch / whatever em mente e o Xorg deve ter uma entrada que diga "Ei, Xorg, o dispositivo que você vê em /etc/input/event0 é uma tela sensível ao toque. Quando você recebe sinais físicos, informe as aplicações sobre os eventos de toque. "

    
por ceremcem 16.08.2015 / 00:16

1 resposta

1

Esta é apenas uma resposta parcial. Outras pessoas devem se sentir livres para copiar isso como base para suas respostas.

Os dispositivos de entrada de telas sensíveis ao toque podem ser abertos como mouses simples ou com acesso total à tela de toque por meio de /dev/input/... e evdev stuff.

Você precisa que seu servidor X use o dispositivo de entrada como uma tela sensível ao toque. O servidor X traduz eventos de tela de toque, como arrastar ao longo dos lados em eventos de roda de mouse, por exemplo. Os aplicativos que desejam suporte a vários movimentos (multitoque) precisariam abrir o dispositivo de evento de entrada do Linux, em vez de apenas obter os eventos de botão / mouse do ponteiro X11.

Os drivers do kernel para sua tela sensível ao toque específica devem ser carregados automaticamente quando você os conecta, a menos que o driver do mouse USB genérico reivindique o dispositivo primeiro.

Procure no seu log do kernel ( dmesg ) para ver as mensagens de log sobre ele. lsusb poderia ajudar a encontrar coisas do ID do dispositivo para procurar no log do kernel.

    
por 16.08.2015 / 16:42