クリックや自然なスクロールなど、Dellタッチパッドの素晴らしいオプションを設定しようとしています。 X を実行すると、タッチパッド 2 個、SynPS/2 Synaptics 1 個、DLL タッチパッド 1 個が検出されます。 SynPS/2 は xevent を取得せず、すべて DLL タッチパッドに移動し、SynPS/2 を無効にして次のデバイスのリストを取得しました。
% xinput -list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech Gaming Mouse G402 id=12 [slave pointer (2)]
⎜ ↳ Logitech Gaming Mouse G402 id=13 [slave pointer (2)]
⎜ ↳ HID 046a:0023 id=15 [slave pointer (2)]
--- here the SynPS/2 Synaptics Touchpad .... was listed
⎜ ↳ DLL06E4:01 06CB:7A13 Touchpad id=16 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Video Bus id=8 [slave keyboard (3)]
↳ Power Button id=9 [slave keyboard (3)]
↳ Sleep Button id=10 [slave keyboard (3)]
↳ Integrated_Webcam_HD id=11 [slave keyboard (3)]
↳ HID 046a:0023 id=14 [slave keyboard (3)]
↳ Intel HID events id=17 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=18 [slave keyboard (3)]
↳ Dell WMI hotkeys id=19 [slave keyboard (3)]
↳ Logitech Gaming Mouse G402 id=20 [slave keyboard (3)]
↳ HID 046a:0023 id=21 [slave keyboard (3)]
私の `/etc/X11/xorg.conf.d/50-touchpad.conf:
Section "InputClass"
Identifier "disable synaptics detection"
MatchVendor "SynPS/2"
Option "Ignore" "on"
EndSection
Section "InputClass"
Identifier "touchpad catchall"
Driver "libinput"
MatchIsTouchpad "on"
# MatchVendor "DLL06E4:01"
# MatchDevicePath "/dev/input/event'"
MatchProduct "06CB:7A13"
Option "TapButton1" "1"
Option "TapButton2" "3"
Option "EmulateTwoFingerMinZ" "35"
Option "EmulateTwoFingerMinW" "8"
Option "TapButton3" "2"
Option "VertTwoFingerScroll" "1"
Option "HorizTwoFingerScroll" "1"
Option "VertScrollDelta" "-111"
Option "HorizScrollDelta" "-111"
Option "CoastingSpeed" "8"
Option "CornerCoasting" "1"
Option "CircularScrolling" "1"
Option "CircScrollTrigger" "7"
EndSection
一致した場合DevicePath
(/dev/input/event5
Xの開始後に検出されたパス)、Xセッションを開始した時間の約1/4の間、タッチパッドは期待どおりに機能します。他のセッションでは、タッチパッドは他の入力イベントにバインドされます。そのため、ベンダー/デバイス文字列の一致を試みましたが、ベンダー文字列を介して2番目のタッチパッドを無効にすると完全に機能しますが、タッチパッドはまったく検出されません。また、構成ファイルに注釈付きの一致パターンを試しました。
また、ドライバをシナプティックから最新の libinput に切り替えました。これで問題が発生しますか?
答え1
確認すると、journalctl
Xの起動中にタッチパッドが正常に検出されたことがわかります。検出されないという感覚は、libinputがシナプティックとは異なるドライバオプションを受け入れるために起こります。 libinputは私のシナプスドライバオプションについて知らないので、デフォルトの動作に戻ります。
これは、上記のシナプススタイルのスニペットと同じオプションを設定する現在の作業プロファイルです(適用時にxorg設定間の重要度の順序を念頭に置いてください。たとえば、/etc/X11/xorg.conf.d/40-libinput.conf
高い優先順位にしてください)。
Section "InputClass"
Identifier "libinput touchpad catchall" # applied after "touchpad catchall"
Driver "libinput"
MatchIsTouchpad "on"
# MatchVendor "DLL06E4:01"
MatchProduct "06CB:7A13" # all matching patterns work as expected
Option "Tapping" "on" # enables tapping
Option "ClickMethod" "clickfinger" # replaces synaptics tapping setup
Option "NaturalScrolling" "true" # replaces scrolling setup above
EndSection