Jak włączyć naturalne przewijanie w XFCE4?

15

Czy jest jakieś ustawienie umożliwiające naturalne przewijanie mojego touchpada?

Mogę znaleźć ustawienie w ustawieniach XFCE myszy, ale nie działa ono na touchpadzie. Czy istnieje sposób, aby to umożliwić?

rubo77
źródło

Odpowiedzi:

18

To znany błąd: LP: 1368402

Oto dobre i proste rozwiązanie (obejście), które pozwala korzystać z naturalnego przewijania w każdej aplikacji (w tym Chrome i Gnome), przetestowanej na Xenial 16.04.

Najpierw wyłączyć Zmiana kierunku przewijania z ustawieniami XFCE myszy : Settings > Mouse and Touchpad > Reverse scroll direction.

Następnie uruchom w terminalu:

synclient

Wyświetli listę takich par klucz-wartość, jak poniżej:

Parameter settings:
    LeftEdge                = 97
    RightEdge               = 2335
    TopEdge                 = 89
    BottomEdge              = 1575
    FingerLow               = 25
    FingerHigh              = 30
    MaxTapTime              = 180
    MaxTapMove              = 129
    MaxDoubleTapTime        = 100
    SingleTapTimeout        = 180
    ClickTime               = 100
    EmulateMidButtonTime    = 0
    EmulateTwoFingerMinZ    = 282
    EmulateTwoFingerMinW    = 7
    VertScrollDelta         = 58
    HorizScrollDelta        = 58
    VertEdgeScroll          = 0
    HorizEdgeScroll         = 0
    CornerCoasting          = 0
    VertTwoFingerScroll     = 1
    HorizTwoFingerScroll    = 1
    MinSpeed                = 1
    MaxSpeed                = 1.75
    AccelFactor             = 0.0678887
    TouchpadOff             = 1
    LockedDrags             = 0
    LockedDragTimeout       = 5000
    RTCornerButton          = 2
    RBCornerButton          = 3
    LTCornerButton          = 0
    LBCornerButton          = 0
    TapButton1              = 1
    TapButton2              = 3
    TapButton3              = 0
    ClickFinger1            = 1
    ClickFinger2            = 3
    ClickFinger3            = 0
    CircularScrolling       = 0
    CircScrollDelta         = 0.1
    CircScrollTrigger       = 0
    CircularPad             = 0
    PalmDetect              = 0
    PalmMinWidth            = 10
    PalmMinZ                = 200
    CoastingSpeed           = 20
    CoastingFriction        = 50
    PressureMotionMinZ      = 30
    PressureMotionMaxZ      = 160
    PressureMotionMinFactor = 1
    PressureMotionMaxFactor = 1
    ResolutionDetect        = 1
    GrabEventDevice         = 0
    TapAndDragGesture       = 1
    AreaLeftEdge            = 0
    AreaRightEdge           = 0
    AreaTopEdge             = 0
    AreaBottomEdge          = 0
    HorizHysteresis         = 14
    VertHysteresis          = 14
    ClickPad                = 1
    RightButtonAreaLeft     = 1216
    RightButtonAreaRight    = 0
    RightButtonAreaTop      = 1364
    RightButtonAreaBottom   = 0
    MiddleButtonAreaLeft    = 0
    MiddleButtonAreaRight   = 0
    MiddleButtonAreaTop     = 0
    MiddleButtonAreaBottom  = 0

Wyszukaj klucz: VertScrollDeltai sprawdź jego wartość. Jeśli ma np. 58, ustaw go na -58 za pomocą następującego polecenia:

synclient VertScrollDelta=-58

Jeśli chcesz zrobić to samo z przewijaniem poziomym, wyszukaj zamiast tego klucz: HorizScrollDeltai odwróć go w ten sam sposób:

synclient HorizScrollDelta=-58

[Edytować]

Jak wskazał rubo77 , nie trwa to po ponownym uruchomieniu. Jeśli chcesz, aby stał się domyślny, utwórz skrypt podobny do następującego fix_scroll.sh:

#!/usr/bin/bash
synclient VertScrollDelta=-58
synclient HorizScrollDelta=-58

Następnie dodaj fix_scroll.shdo aplikacji startowych:

Settings > Session and Startup > Application Autostart > Add

Kredyt trafia do: https://forums.linuxmint.com/viewtopic.php?f=90&t=233135&p=1236836&sid=394bf7ad96c3ba102949bac4dd404a1a

rev fcole90
źródło
Proszę zaznaczyć tę odpowiedź jako właściwą, ponieważ to rozwiązuje problem.
Ian D. Rossi
4

Często szukałem i znalazłem zgłoszenie błędu, ale rozwiązanie było łatwe:

Musisz wybrać urządzenie Touchpad w polu wyboru u góry ustawień myszy.

(Było to trochę trudne do znalezienia, ponieważ nie spodziewałem się, że ustawienia myszy i touchpada można konfigurować osobno).


W starszych wersjach xfce, w których ustawienie nie istnieje, sprawdź wartość za pomocą

synclient | grep VertScrollDelta

i użyj wartości ujemnej, którą tam znajdziesz (na przykład -58 zamiast 58).

Najlepszą metodą, która sprawdziła się dla mnie, aby ten restart był bezpieczny, jest dodanie zmian do Xsession.d, aby automatycznie ładował się dla wszystkich użytkowników, gdy zalogujesz się do X:

(plik nie istnieje, więc możesz nazwać go, jak chcesz. Liczby po lewej stronie oznaczają kolejność, w jakiej zostaną wykonane w porównaniu z innymi plikami).

sudo nano /etc/X11/Xsession.d/80synaptics

Dodaj tylko polecenia synclient do tego pliku:

synclient VertScrollDelta=-58

(powinien być własnością root, z uprawnieniami 644)

chmod 644 /etc/X11/Xsession.d/80synaptics

Nadal jest coś dziwnego: przewijanie w poziomie jest nadal nieprawidłowe, Można to naprawić za pomocą:

echo 'pointer = 1 2 3 4 5 7 6 8 9 10 11 12' >> .Xmodmap
xmodmap .Xmodmap
rubo77
źródło
0

W Xfce 4.12 lub nowszym możesz przejść do ustawień myszy i wybrać Odwróć kierunek przewijania . Ustawienie znajduje się w obszarze Mysz, ale odwraca także kierunek przewijania touchpada.

xuhdev
źródło
Wiem, ale czy to również odwraca przewijanie w poziomie?
rubo77
@ rubo77 Nie, tylko w pionie.
xuhdev
2
Tak, ale to nie działa z każdą aplikacją, szczególnie nie działa z Gnome
fcole90