LINUX.ORG.RU

Инверсия мыши (левый нижний угол = правый верхний).

 


0

1

Всем привет, решил создать тему в разделе десктопов т.к. планшет на архитектуре x86 (процессор Intel Atom x5-z8350). Суть проблемы: имеется планшет Irbis W95 с подкллюченной родной клавиатурой с тачпадом (внешние клава и мышь работают точно также - проверял). Установлена Ubuntu 20.04, как на обычный десктоп, стартует нормально, но инвертировано движение и нажатия мыши. Допустим имеем стандартный экран с кнопкой меню в левом нижнем углу, чтобы на неё нажать надо кликать не в левый нижний угол, а в правый верхний. На Ubuntu 19.10 всё нормально, точнее экран перевернут, но мышь не инвертирована относительно экрана, поэтому xrandr -o left решает проблему. Интересный момент - если загрузиться в recovery mod, то xrandr не работает (при попытке повернуть экран выдаёт ошибку), но мышь ориентирована также как экран и отрабатывает нажатия правильно. Из дополнительной информации - в Винде тоже были прблемы с ориентацией, но там проблему решала установка последнего драйвера для HD Graphics. Что пробовал:

  1. Загнать в блэклист драйвер аккселерометра, но не уверен, что это удалось, т.к. после перезагрузки lsmod все равно его показывает.
  2. Прописать правильную матрицу акселерометру по методике указанной здесь (матрица прописалась) https://4pda.ru/forum/index.php?s=&showtopic=892877&view=findpost&p=94147654 На повороты экрана, кстати, планшет не реагирует. Наверное основной вопрос для меня сейчас - чем отличается загрузка в рекавери моде от нормальной, почему в ней не работает xrandr, и чего такого в нем не загружается, что оставляет мышь в правильной ориентации?


Последнее исправление: Dimm (всего исправлений: 1)

Возможно, включен поворот экрана на 180, а в рекавери подобные настройки игнорируются?

izzholtik ★★★
()

Добавь нормальный тег ubuntu.

// Новореги, вы что, совсем не смотрите на количество подписанных на тег? Вам помощь нужна, или поныть пришли?

Что там сейчас в убунте по умолчанию? libinput+Xorg? Если да, то это решается примерно так:

Section "InputDevice"
  ...
  Option "RotationAngle" "0.0"
EndSection
mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Не помогло, вот конфиг libinput’a:

dimm@TW95:~$ cat /usr/share/X11/xorg.conf.d/40-libinput.conf

Section "InputClass"
        Identifier "libinput pointer catchall"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Option "RotationAngle" "0.0"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Option "RotationAngle" "0.0"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Option "RotationAngle" "0.0"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput touchscreen catchall"
        MatchIsTouchscreen "on"
        MatchDevicePath "/dev/input/event*"
        Option "RotationAngle" "0.0"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput tablet catchall"
        MatchIsTablet "on"
        MatchDevicePath "/dev/input/event*"
        Option "RotationAngle" "0.0"
        Driver "libinput"
EndSection
Dimm
() автор топика
Ответ на: комментарий от Dimm

Если и матрица и поворот не сработали, тогда на этом наши полномочия как бы всё, кончились. ☹

mord0d ★★★★★
()
Ответ на: комментарий от Dimm

Вообще, скорее всего, тебе надо просто что-то доустановить, чтобы оно висело в процессах и поворачивало экран и тач как надо, по акселерометру.

Но если хочешь вручную, то читай маны к xrandr и xinput.

xrandr
...
xrandr --output <HDMI-0 или что там у тебя будет> --rotate inverted

xinput
xinput list-props <id тача>
... в списке найди свойство с именем, типа Transforamtion Matrix
xinput set-prop <id тача> <id свойства> 1 0 0 0 1 0 0 0 -1

Сделать обратно: --rotate normal и 1 0 0 0 1 0 0 0 1. Если, конечно, оно так и было :)

anonymous
()
Ответ на: комментарий от anonymous

С xinput я пытался - не помогло. Точне мне даже удалось сделать так, чтобы мышь ездила правильно, т.е. веду на тачпаде вниз, курсор мыши едет вниз. Но сам курсор мыши перевернут, и нажатия обрабатываются наоборот - клик в правый верхний угол = клик в левый нижний угол. Тачскрин и датчик поворота не работают вообще, но пока это и не очень надо. Все тесты проводятся на внешней мышке или штатной подключенной клавиатуре с тачпадом. Особенно обидно, что в Ubuntu 19.10 все работает как надо.

Dimm
() автор топика
Ответ на: комментарий от Dimm

Есть у меня старый атомный планшет, на нем надо выкрутасы делать, чтобы экран с мышкой не разбегались. Решал при помощи bash.

#!/bin/sh

#Left

xinput set-prop 9 «Evdev Axis Inversion» 1, 0

xinput set-prop 9 «Evdev Axes Swap» 1

xrandr -o left

Типа того. Смотhел что срабатывает при повороте и привязывал скрипты, которых 4. Normal, Left, Right, Inverted.

utanho ★★★★★
()
Последнее исправление: utanho (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.