Я установил Lubuntu 16.04, Гостеприимный на планшет. По умолчанию экран ориентирован боком (как Kindle или Nook), и планшет не имеет акселерометров для обнаружения автоматически, когда я поворачиваю устройство. Это не имеет значения много, поскольку я буду всегда использовать планшет в качестве 'монитора', то есть, повернул 90 ° от его исходной ориентации (Kindle/Nook-style).
Я записал сценарий для выполнения вращения при входе в систему, но по некоторым причинам, это выполняет вращение экрана дисплея, но не вход с сенсорным экраном.
Я думал, что это было, возможно, из-за входа с сенсорным экраном, не полностью инициализируемого, когда команду xinput называют, потому что я могу выполнить сценарий вручную после начальной загрузки, и это работает просто великолепно. Я объяснил это в сценарии, так, чтобы команда xinput ожидала, пока вход с сенсорным экраном не инициализируется, но я все еще вижу те же результаты.
Вот сценарий:
#!/bin/bash
sleep 3
xrandr -o right &
while [ -z "xinput | grep -v 'Pen' | grep 'ELAN'" ]
do
sleep 1
done
xinput set-prop 'ELAN22A6:00 04F3:22A6' 'Coordinate Transformation Matrix' 0 1 0 -1 0 1 0 0 1
xinput disable 'ASUS HID Device ASUS HID Device Touchpad'
Примечание: Существует два устройства с почти точно тем же именем в соответствии со списком xinput - вход с сенсорным экраном и перьевой указатель (который не будет использоваться). Устройство ELAN22A6:00 04F3:22A6 является входом с сенсорным экраном.
Кроме того, это может или не может быть релевантно, но я выполняю оболочку гнома сверху Lubuntu, также, который также задан сценарием для запуска при входе в систему (потому что я не хочу это как среду рабочего стола по умолчанию).
Что я пропускаю здесь?
Похоже на пропавших без вести обратных галочек. Попытайтесь измениться:
while [ -z "xinput | grep -v 'Pen' | grep 'ELAN'" ]
к
while [ -z "`xinput | grep -v 'Pen' | grep 'ELAN'`" ]