저는 KDE와 무료 드라이버가 포함된 Live CD를 사용하여 Thinkpad X1 Yoga Gen 6에서 Debian Bullseye를 테스트하고 있습니다(debian-live-11.5.0-amd64-kde+nonfree.iso
). 하드 드라이브를 삭제하기 전에 필요한 모든 것이 제대로 작동하는지 확인하고 싶습니다.
손가락으로 개체나 버튼을 터치할 때 예상대로 클릭되지 않고 대부분만 선택된다는 점을 제외하면 모든 것이 작동하는 것 같습니다. 이는 플라즈마/Qt와 관련된 모든 것에서 발생하는 것 같습니다.
- 플라즈마 패널(앱 실행 프로그램 포함)의 아이콘을 터치하면 커서가 해당 위치에 놓이게 됩니다.
- KDE 응용 프로그램/설정 대화 상자에 있는 버튼을 누르면 선택되지만 클릭하지는 않습니다.
- KDE 응용 프로그램에서 메뉴를 터치하면 확장되지만 메뉴 항목을 터치하면 메뉴 항목만 선택됩니다(예: Konqueror의 파일 -> 새 탭).
상태손가락이 예상대로 작동합니다.:
- 웹페이지의 모든 것(HTML 버튼, YouTube와 같은 HTML5 컨트롤)
- KDE가 아닌 응용 프로그램(예: Firefox)의 모든 것
- 창 제목 표시줄 버튼(최소화/최대화/닫기)모두애플리케이션.
포함된 Wacom 디지털 펜은 항상 예상대로 작동합니다(물체를 터치하면 클릭됨).
관련이 있을 수 있는 몇 가지 정보는 다음과 같습니다.
KDE 플라즈마 버전: 5.20.5
KDE 프레임워크 버전: 5.78.0
Qt 버전: 5.15.2
user@debian:~$ uname -a
Linux debian 5.10.0-18-amd64 #1 SMP Debian 5.10.140-1 (2022-09-02) x86_64 GNU/Linux
user@debian:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
user@debian:~$ sudo Xorg -version
X.Org X Server 1.20.11
X Protocol Version 11, Revision 0
Build Operating System: linux Debian
Current Operating System: Linux debian 5.10.0-18-amd64 #1 SMP Debian 5.10.140-1 (2022-09-02) x86_64
Kernel command line: BOOT_IMAGE=(hd0,gpt4)/live/vmlinuz-5.10.0-18-amd64 boot=live quiet splash fsck.mode=skip persistence --
Build Date: 05 August 2022 08:00:36AM
xorg-server 2:1.20.11-1+deb11u2 (https://www.debian.org/support)
Current version of pixman: 0.40.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
user@debian:~$ lsmod|grep wacom
wacom 131072 0
usbhid 65536 1 wacom
hid 147456 7 i2c_hid,wacom,usbhid,hid_multitouch,hid_sensor_hub,intel_ishtp_hid,hid_generic
관련 dmesg
라인:
user@debian:~$ sudo dmesg|grep -i wacom
[ 2.483787] input: Wacom HID 5278 Pen as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-WACF2200:00/0018:056A:5278.0002/input/input15
[ 2.483979] input: Wacom HID 5278 Finger as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-WACF2200:00/0018:056A:5278.0002/input/input16
[ 2.484211] wacom 0018:056A:5278.0002: hidraw1: I2C HID v1.00 Mouse [WACF2200:00 056A:5278] on i2c-WACF2200:00
user@debian:~$ sudo dmesg|grep -i screen
[ 2.245919] input: WACF2200:00 056A:5278 Touchscreen as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-WACF2200:00/0018:056A:5278.0002/input/input9
xinput
그리고 evdev
:
user@debian:~$ cat /proc/bus/input/devices
[...]
I: Bus=0018 Vendor=056a Product=5278 Version=0100
N: Name="Wacom HID 5278 Pen"
P: Phys=i2c-WACF2200:00
S: Sysfs=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-WACF2200:00/0018:056A:5278.0002/input/input15
U: Uniq=
H: Handlers=mouse2 event7
B: PROP=2
B: EV=1b
B: KEY=1e03 0 0 0 0 0
B: ABS=1000d000003
B: MSC=1
I: Bus=0018 Vendor=056a Product=5278 Version=0100
N: Name="Wacom HID 5278 Finger"
P: Phys=i2c-WACF2200:00
S: Sysfs=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-1/i2c-WACF2200:00/0018:056A:5278.0002/input/input16
U: Uniq=
H: Handlers=mouse3 event8
B: PROP=2
B: EV=b
B: KEY=400 0 0 0 0 0
B: ABS=260800000000003
[...]
user@debian:~$ xinput|grep Wacom
⎜ ↳ Wacom HID 5278 Pen stylus id=13 [slave pointer (2)]
⎜ ↳ Wacom HID 5278 Finger touch id=14 [slave pointer (2)]
⎜ ↳ Wacom HID 5278 Pen eraser id=20 [slave pointer (2)]
user@debian:~$ xinput list-props 14
Device 'Wacom HID 5278 Finger touch':
Device Enabled (188): 1
Coordinate Transformation Matrix (190): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (319): 0
Device Accel Constant Deceleration (320): 1.000000
Device Accel Adaptive Deceleration (321): 1.000000
Device Accel Velocity Scaling (322): 10.000000
Device Node (311): "/dev/input/event8"
Wacom Tablet Area (363): 0, 0, 12064, 7540
Wacom Rotation (364): 0
Wacom Pressurecurve (365): 0, 0, 100, 100
Wacom Serial IDs (366): 21112, 1, 3, 0, 0
Wacom Serial ID binding (367): 0
Wacom Pressure Threshold (368): 0
Wacom Sample and Suppress (369): 2, 4
Wacom Enable Touch (370): 1
Wacom Enable Touch Gesture (372): 1
Wacom Touch Gesture Parameters (373): 530, 235, 250
Wacom Tool Type (374): "TOUCH" (381)
Wacom Button Actions (375): "Wacom button action 0" (376), "Wacom button action 1" (377), "Wacom button action 2" (378)
Wacom button action 0 (376): 1572865
Wacom button action 1 (377): 1572866
Wacom button action 2 (378): 1572867
Device Product ID (312): 1386, 21112
Wacom Debug Levels (380): 0, 0
화면을 터치하면 올바른 이벤트가 생성되는 것 같습니다. 화면을 터치하면 button press 1
및 이 표시됩니다.button release 1
xinput
evtest
user@debian:~$ xinput test 14
motion a[0]=8704 a[1]=4839 a[2]=0 a[3]=0 a[4]=0 a[5]=0
button press 1 a[0]=8704 a[1]=4839 a[2]=0 a[3]=0 a[4]=0 a[5]=0
motion a[0]=8701 a[1]=4836 a[2]=0 a[3]=0 a[4]=0 a[5]=0
button release 1
user@debian:~$ sudo evtest /dev/input/event8
Input driver version is 1.0.1
Input device ID: bus 0x18 vendor 0x56a product 0x5278 version 0x100
Input device name: "Wacom HID 5278 Finger"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 330 (BTN_TOUCH)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 8833
Min 0
Max 12064
Resolution 40
Event code 1 (ABS_Y)
Value 1925
Min 0
Max 7540
Resolution 40
Event code 47 (ABS_MT_SLOT)
Value 0
Min 0
Max 9
Event code 53 (ABS_MT_POSITION_X)
Value 0
Min 0
Max 12064
Resolution 40
Event code 54 (ABS_MT_POSITION_Y)
Value 0
Min 0
Max 7540
Resolution 40
Event code 57 (ABS_MT_TRACKING_ID)
Value 0
Min 0
Max 65535
Properties:
Property type 1 (INPUT_PROP_DIRECT)
Testing ... (interrupt to exit)
Event: time 1668884040.469294, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 770
Event: time 1668884040.469294, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 9293
Event: time 1668884040.469294, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 3886
Event: time 1668884040.469294, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1668884040.469294, type 3 (EV_ABS), code 0 (ABS_X), value 9293
Event: time 1668884040.469294, type 3 (EV_ABS), code 1 (ABS_Y), value 3886
Event: time 1668884040.469294, -------------- SYN_REPORT ------------
Event: time 1668884040.471569, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 9282
Event: time 1668884040.471569, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 3888
Event: time 1668884040.471569, type 3 (EV_ABS), code 0 (ABS_X), value 9282
Event: time 1668884040.471569, type 3 (EV_ABS), code 1 (ABS_Y), value 3888
Event: time 1668884040.471569, -------------- SYN_REPORT ------------
Event: time 1668884040.477811, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 9279
Event: time 1668884040.477811, type 3 (EV_ABS), code 54 (ABS_MT_POSITION_Y), value 3896
Event: time 1668884040.477811, type 3 (EV_ABS), code 0 (ABS_X), value 9279
Event: time 1668884040.477811, type 3 (EV_ABS), code 1 (ABS_Y), value 3896
Event: time 1668884040.477811, -------------- SYN_REPORT ------------
Event: time 1668884040.488292, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1668884040.488292, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0
Event: time 1668884040.488292, -------------- SYN_REPORT ------------
그래서 문제는 플라즈마/KDE/Qt와의 상호작용에 있다고 생각합니다(GTK와 HTML이 예상대로 작동하기 때문입니다).
그래서 내 질문은,Plasma/Qt/KDE가 마우스 왼쪽 클릭으로 화면 터치를 처리하는지 확인하는 방법? 디버깅하는 것을 도와주실 수 있나요?
추신: 기본 멀티 터치 기능: 마우스 오른쪽 버튼 클릭 및 스크롤을 위한 두 손가락; 인치 줌이 작동하지만(키 누르기/떼기 37을 에뮬레이션) 까다로우며 여러 번 시도해야 합니다.
PPS: Wayland가 제스처를 더 잘 지원하는 것 같다고 읽었지만 실제로는 멋진 것이 필요하지 않습니다. 새로운 것을 배우기에는 너무 늙었기 때문에 Xorg를 고수하고 싶습니다. Plasma의 Wayland는너무 어리다.
user@debian:~$ echo $XDG_SESSION_TYPE
x11
편집하다: 더 많은 내용을 읽었으므로 wayland
이제 시도해 볼 의향이 있으며 지금까지의 경험은 혼합되어 있습니다. 핀치 투 줌을 포함한 터치 및 기본 제스처가 작동하지만 이후 일부 펜 기능도 손실됩니다. 잠시 동안 응답성이 저하됩니다. 속도가 느려지고 오류가 발생합니다. 나는 그것에 대해 더 많은 실험을 할 계획입니다. 어쩌면 데비안 불안정 버전이 더 나을 수도 있습니다.
답변1
내 생각엔 내가 가지고 있는 것 같아이 KDE 버그, 기본 설정은 무시하므로이 Qt 버그. 5.23에서 해결된 것으로 표시되었으며 여전히 5.20이 있습니다.
제안된 해결 방법은 터치스크린 제스처를 완전히 포기하는 것인데, 일부는 Qt가 아닌 애플리케이션(오른쪽 클릭 및 두 손가락 스크롤)에서 작동하기 때문에 안타까운 일입니다.
이를 수행하려면 현재 KDE 5.20에서 다음을 수행해야 합니다(오류 페이지의 지침은 약간 오래되었습니다).
sudo apt install kde-config-tablet
- 설정->입력->드로잉 태블릿으로 이동합니다. 제 경우에는 화면이 데이터베이스에 없어서 자동으로 인식이 안 됐는데, 쉽게 추가할 수 있었어요.
- 화면이 나타나면 탭으로 전환하여
Touch
선택을 취소Enable Gestures
하되Enable Touch
열어두세요. - 로그아웃하고 로그인하면 이제 터치 스크린이 예상대로 작동합니다.
Xorg 설정을 수정할 필요가 없습니다.
원하는 경우 동일한 목적을 달성하기 위해 명령줄 대안을 사용할 수 있습니다.
$ xsetwacom --set 'Wacom HID 5278 Finger touch' Gesture off
(장치 이름을 변경해야 할 수도 있습니다. 장치 이름을 확인하세요 xsetwacom --list
.)
또한 Firefox에서 터치스크린을 활성화하고 강제로 사용하려면 Xinput2
다음 줄을 에 추가하세요 /etc/security/pam_env.conf
.
MOZ_USE_XINPUT2 DEFAULT=1
이러한 결합된 설정을 사용하면 손가락 터치 스크롤(한 손가락이면 충분함)을 사용하거나 핀치로 Firefox, Okular, Xournal, Xournal++, Konqueror를 포함한 대부분의 응용 프로그램을 확대/축소할 수 있습니다.
핀치 투 줌 외에도 두 손가락 스크롤이나 마우스 오른쪽 버튼 클릭과 같은 적절한 제스처가 여전히 부족합니다.