Естественная прокрутка не работает для горизонтального прокрутки, как это исправить?

7

Я включил естественную прокрутку с помощью различных опций Ubuntu Tweak , но это, похоже, не вступает в силу для горизонтальной прокрутки - ни в веб-браузерах, ни в наутилусах, ни в других собственных приложениях.

Есть ли способ принудительно выполнить это поведение при горизонтальной прокрутке?

Я использую Ubuntu 12.04.

    
задан Eliran Malka 19.10.2012 в 14:00
источник

4 ответа

2

Существует также более удобный способ xorg.conf , чтобы сделать инвертированные <V_DISTANCE> и <H_DISTANCE> (определенные в соответствии с @ Ответ Элирана ) постоянный:

Создайте каталог /etc/X11/xorg.conf.d/ и в нем файл, например 51-synaptics-tweaks.conf , содержащий:

Section "InputClass"
    Identifier "touchpad"
    Driver "synaptics"
    MatchIsTouchpad "on"
        Option "VertTwoFingerScroll" "on"
        Option "HorizTwoFingerScroll" "on"
        # In the following lines, use your own negative V_DISTANCE / H_DISTANCE values.
        Option "VertScrollDelta" "-113"
        Option "HorizScrollDelta" "-113"
EndSection

Это следует за рекомендациями Ubuntu в файлах примеров /usr/share/xorg.conf.d/* , а также Инструкции Archlinux . Чтобы увидеть эффект, перезапустите X, конечно:)

    
ответ дан tanius 25.02.2015 в 03:37
источник
9

Вместо использования назначенного приложения для настройки естественной прокрутки сценарий может быть создан для изменения направлений прокрутки - как по вертикали, так и по горизонтальной оси.

  1. Сначала получим xinput prop, связанную с расстоянием прокрутки (обратите внимание на переменные, заключенные в угловые скобки):

    $ xinput list
    ⎡ Virtual core pointer id=2 [master pointer (3)]
    ⎜   ↳ Virtual core XTEST pointer id=4   [slave pointer (2)]
    ⎜   ↳ SynPS/2 Synaptics TouchPad id=<TOUCHPAD_ID>   [slave pointer (2)]
    ⎣ Virtual core keyboard id=3    [master keyboard (2)]
        (...)
    
  2. Извлеките соответствующие значения для этой опоры:

    $ xinput list-props <TOUCHPAD_ID> | grep "Scrolling Distance"
        Synaptics Scrolling Distance (<DISTANCE_KEY>):  <V_DISTANCE>, <H_DISTANCE>
        Synaptics Circular Scrolling Distance (301):    0.100000
    
  3. Затем создайте файл сценария, чтобы применить обратные направления, отрицая значения для вертикального / горизонтального расстояния. Подайте возвращаемые переменные:

    #!/bin/sh
    xinput set-prop <TOUCHPAD_ID> <DISTANCE_KEY> -<V_DISTANCE> -<H_DISTANCE>
    nautilus -q
    nautilus -n &
    
  4. Предоставьте файл с разрешениями на выполнение, установите его для запуска при запуске и там у вас есть.

Источник:

Этот метод был перенесен из старого веб-блога Andy C. , чтобы создать автономный ответ. Спасибо, Энди, за предоставление элегантного, системного решения.

Примечания

  • Кажется, что вызов nautilus нарушает сценарий 13.04. Опуская два вызова nautilus, он решает его.
  • Естественная прокрутка (как по вертикали, так и по горизонтали) работает нормально из-под коробки в 14.x, поэтому нет необходимости в создании сценариев, просто переключите «Естественную прокрутку» в «Мышь & amp; Параметры сенсорной панели.
ответ дан Eliran Malka 19.10.2012 в 14:52
3

В качестве альтернативы использованию файлов сценариев или Ubuntu Tweak вы также можете попробовать приложение «Natural Scrolling», сделанное Zedtux. Он станет индикатором.

Чтобы установить его, самый простой способ - использовать терминал:

sudo apt-add-repository ppa:zedtux/naturalscrolling
sudo apt-get update
sudo apt-get install naturalscrolling
    
ответ дан Agmenor 20.10.2012 в 02:52
1

В xfce4 (Xubuntu, Ubuntu Studio, ...) вы можете добавить это на консоль:

echo 'pointer = 1 2 3 4 5 7 6 8 9 10 11 12' >> .Xmodmap
xmodmap .Xmodmap
    
ответ дан rubo77 27.10.2015 в 14:43