Chrome + Touchscreen + Unity (14.04)
У меня Dell 14R с сенсорным экраном с Ubuntu 14.04. Когда я запускаю Google Chrome, щелкая панель запуска с помощью сенсорной панели или комбинации Super+, поддержка сенсорного ввода в Chrome не работает. Когда я касаюсь какого-то элемента, он только фокусируется, но не активирует элемент (кнопку, поле и т. Д.). И сенсорные жесты не работают. С другой стороны, если я запускаю Chrome, касаясь кнопки запуска, в Chrome работает сенсорная прокрутка, даже если щелкнуть влево, можно вернуться на предыдущую страницу и т. Д. Это не имеет смысла для меня, но всегда так, даже через перезагрузки. Кто-нибудь может это подтвердить? Есть идеи, как это исправить?
3 ответа
Эта проблема может быть решена для меня с помощью Chrome --touch-devices
параметр командной строки.
Определите идентификатор устройства ввода X в консоли с помощью
xinput list
приводя к
google-chrome --touch-devices=10
в моей системе.
Чтобы Chrome всегда использовал этот флаг CLI, см.: Как установить флаги CLI для Google Chrome?
ОБНОВЛЕНО Ответ:
редактировать
~/.profile
и добавьте следующее в конец файла:export CHROMIUM_USER_FLAGS="--touch-devices=`echo $(xinput list | grep 'Virtual core pointer' | awk 'match(\$0, /id=/){print substr($0, RSTART+3, RLENGTH-1)}')` --touch-events=enabled --enable-pinch"
Выйдите, а затем войдите снова.
Запустите Google Chrome как обычно
СОВЕТ: Возможно, вам придется изменить строку "Указатель виртуального ядра" в приведенной выше команде на имя вашего устройства ввода с "сенсорным экраном главного указателя" в приведенной выше команде. Просто используйте xinput
Команда, чтобы найти имя вашего устройства.
ПРИМЕЧАНИЕ: я на Ubuntu 15.04 использую /usr/bin/google-chrome-stable
СТАРЫЙ ответ:
У меня Ubuntu 14.14. Это сработало для меня:
Создайте скрипт оболочки для запуска браузера Google Chrome с именем
start-chrome.sh
,Я положил свой в:
/usr/local/bin/start-chrome.sh
Добавьте следующее в файл:
#!/bin/bash /usr/bin/google-chrome-stable --touch-devices=$(xinput list | grep Touchscreen | awk 'match(\$0, /id=/){print substr($0, RSTART+3, RLENGTH)}') --touch-events=enabled --enable-pinch
В основном я использую
xinput list
Команда и greping для "Сенсорный экран" и найти соответствующий идентификатор. Возможно, вам придется изменить "Сенсорный экран" на имя вашего устройства ввода с сенсорным экраном в приведенной выше команде.редактировать
/usr/share/applications/google-chrome.desktop
, Найти все вхожденияExec=google-chrome-stable
и заменить его наExec=start-chrome.sh
ПРИМЕЧАНИЕ. Я считаю, что это решение будет работать до тех пор, пока вы не обновите Google Chrome (через apt-get upgrade
) и google-chrome.desktop
файл перезаписан Вам нужно будет выполнить шаг 2 выше, чтобы исправить это.
Вы можете попробовать включить сенсорные события под флагами Chrome:
- Перейдите к
chrome://flags/#touch-events
и установите его включенным - Перезапустите Chrome
Источник: