클릭 및 자연스러운 스크롤과 같은 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 동안 터치패드가 예상대로 작동합니다. 다른 세션에서는 터치패드가 다른 입력 이벤트에 바인딩됩니다. 그래서 공급업체/장치 문자열 일치를 시도했는데 공급업체 문자열을 통해 두 번째 터치패드를 비활성화하면 완벽하게 작동하지만 이제 터치패드가 전혀 감지되지 않습니다. 또한 구성 파일에 주석 처리된 일치 패턴을 시도했습니다.
또한 드라이버를 시냅틱에서 최신 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