Chrome + tela sensível ao toque + unidade (14.04)

23

Tenho um Dell 14R com tela sensível ao toque com o Ubuntu 14.04. Quando inicio o Google Chrome clicando no iniciador com o TouchPad ou com a combinação Super +, o suporte por toque no Chrome não funciona. Quando eu toco em algum elemento, ele só recebe foco, mas não ativa o elemento (botão, campo, etc). E os gestos de toque não funcionam. Por outro lado, se eu iniciar o Chrome ao tocar no botão do iniciador, a rolagem por toque funcionará no Google Chrome, até mesmo a passagem para a esquerda voltará para a página anterior, etc. Não faz sentido para mim, mas é sempre assim, mesmo através de reinicializações. Alguém pode confirmar isso? Alguma idéia de como consertar?

    
por Luis Fernando P. Gonzalez 24.05.2014 / 16:00

3 respostas

23

Esse problema pode ser resolvido para mim com o parâmetro de linha de comando --touch-devices do Chrome.

Determine o ID do dispositivo de entrada de X em um console por

xinput list

levando a

google-chrome --touch-devices=10

no meu sistema.

Para que o Chrome use sempre este sinalizador CLI, consulte: Como definir sinalizadores de CLI para o Google Chrome?

    
por alex 08.06.2014 / 16:44
7

ATUALIZADO Resposta:

  1. Edite ~/.profile e adicione o seguinte ao final do arquivo:

    export CHROMIUM_USER_FLAGS="--touch-devices='echo $(xinput list | grep 'Virtual core pointer' | awk 'match(\
    #!/bin/bash
    /usr/bin/google-chrome-stable --touch-devices=$(xinput list | grep Touchscreen | awk 'match(\
    export CHROMIUM_USER_FLAGS="--touch-devices='echo $(xinput list | grep 'Virtual core pointer' | awk 'match(\
    #!/bin/bash
    /usr/bin/google-chrome-stable --touch-devices=$(xinput list | grep Touchscreen | awk 'match(\%pre%, /id=/){print substr($0, RSTART+3, RLENGTH)}') --touch-events=enabled --enable-pinch
    
    , /id=/){print substr($0, RSTART+3, RLENGTH-1)}')' --touch-events=enabled --enable-pinch"
    , /id=/){print substr($0, RSTART+3, RLENGTH)}') --touch-events=enabled --enable-pinch
    , /id=/){print substr($0, RSTART+3, RLENGTH-1)}')' --touch-events=enabled --enable-pinch"
  2. Faça logout e faça login novamente.

  3. Inicie o Google Chrome normalmente

TIP : Você pode ter que alterar a string "Virtual core pointer" no comando acima para o nome do seu dispositivo de entrada touchscreen "pointer principal" no comando acima. Basta usar o comando xinput para encontrar o nome do seu dispositivo.

NOTA : Eu estou no Ubuntu 15.04 usando /usr/bin/google-chrome-stable

Resposta antiga:

Eu tenho o Ubuntu 14.14. Isso funcionou para mim:

  1. Crie um script de shell para iniciar o navegador Google Chrome chamado start-chrome.sh .

    Eu coloquei o meu em: /usr/local/bin/start-chrome.sh

    Adicione o seguinte ao arquivo:

    %pre%

    Basicamente, eu estou usando o comando xinput list e greping para "Touchscreen" e encontrando o id correspondente. Você pode ter que mudar "Touchscreen" para o nome do seu dispositivo de entrada touchscreen no comando acima.

  2. Edite o /usr/share/applications/google-chrome.desktop . Encontre todas as ocorrências de Exec=google-chrome-stable e substitua por Exec=start-chrome.sh

OBSERVAÇÃO : acredito que esta solução funcionará até que você atualize o Google Chrome (via apt-get upgrade ) e o arquivo google-chrome.desktop seja sobrescrito. Você precisará seguir o passo 2 acima para corrigi-lo.

    
por NHenderson 25.02.2015 / 05:07
6

Você pode tentar ativar eventos de toque em sinalizadores do Google Chrome:

  1. Navegue até chrome://flags/#touch-events e defina-o como ativado
  2. Reinicie o Chrome

Fonte:

link

    
por Glutanimate 30.05.2014 / 17:53