Dell XPS 15의 xorg.conf에서 올바르게 일치하는 터치패드

Dell XPS 15의 xorg.conf에서 올바르게 일치하는 터치패드

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

또한 드라이버를 시냅틱에서 최신 libinput으로 전환했습니다. 이로 인해 문제가 발생합니까?

답변1

확인하면 journalctlX 시작 중에 터치패드가 성공적으로 감지되었음을 알 수 있습니다. 감지되지 않는다는 느낌은 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

관련 정보