Xfce Forum

Sub domains
 

You are not logged in.

#1 2021-11-11 22:17:38

david784
Member
Registered: 2019-05-09
Posts: 3

[solved] trouble with touchscreen and xfce panel

I'm running a clean arch xfce install on two computers, using the same install script.

On one (a Dell Inspiron), when I touch the network or bluetooth icon in the xfce panel status tray, the menus open and I can touch options inside of them.

The other (an HP Envy), when I touch the screen the menus open only for as long as I keep my finger on the screen, and as soon as I remove my finger the menus close.

But only with some of the controls. It happens with everything in the status tray, and also with pulseaudio and power manager, and notifications. But the clock stays open if I touch on it, as does the "action buttons" and whisker menu.

The menus work fine with mouse clicks, so it's only a minor inconvenience. However I've gotten pretty used to starting/stopping VPNs using touch, so I'd really like to be able to fix it.

I've checked using both xinput test, both look pretty much identical

$ xinput test 9
motion a[0]=57147 a[1]=369 
button press   1 a[0]=57147 a[1]=369 
motion a[0]=57147 a[1]=369 
button release 1 a[0]=57147 a[1]=369 
motion a[0]=58300 a[1]=584 

Then I checked using evtest, and there were a few differences. I'm removing most of the MSC_TIMESTAMP and other clutter.

This is the evtest log for the HP:

Event: time 1636666949.835564, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value 490
Event: time 1636666949.835564, type 3 (EV_ABS), code 53 (ABS_MT_POSITION_X), value 3532
Event: time 1636666949.835564, type 3 (EV_ABS), code 60 (ABS_MT_TOOL_X), value 3532
Event: time 1636666949.835564, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 2
Event: time 1636666949.835564, type 3 (EV_ABS), code 49 (ABS_MT_TOUCH_MINOR), value 1
Event: time 1636666949.835564, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1636666949.835564, type 3 (EV_ABS), code 0 (ABS_X), value 3532
Event: time 1636666949.835564, type 4 (EV_MSC), code 5 (MSC_TIMESTAMP), value 0
...
Event: time 1636666949.895813, type 3 (EV_ABS), code 49 (ABS_MT_TOUCH_MINOR), value 2
...
Event: time 1636666949.982354, type 3 (EV_ABS), code 49 (ABS_MT_TOUCH_MINOR), value 1
Event: time 1636666949.999536, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 0
Event: time 1636666949.999536, type 3 (EV_ABS), code 49 (ABS_MT_TOUCH_MINOR), value 0
Event: time 1636666949.999536, type 4 (EV_MSC), code 5 (MSC_TIMESTAMP), value 164200
Event: time 1636666949.999536, -------------- SYN_REPORT ------------
Event: time 1636666950.007973, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1636666950.007973, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0

And this is the Dell:

Event: time 1636666904.522318, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 3
Event: time 1636666904.522318, type 3 (EV_ABS), code 49 (ABS_MT_TOUCH_MINOR), value 2
Event: time 1636666904.522318, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 1
Event: time 1636666904.522318, type 3 (EV_ABS), code 0 (ABS_X), value 3074
Event: time 1636666904.522318, type 3 (EV_ABS), code 1 (ABS_Y), value 20
...
Event: time 1636666904.616402, type 3 (EV_ABS), code 52 (ABS_MT_ORIENTATION), value 0
Event: time 1636666904.616402, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 2
Event: time 1636666904.616402, type 4 (EV_MSC), code 5 (MSC_TIMESTAMP), value 94300
Event: time 1636666904.616402, -------------- SYN_REPORT ------------
Event: time 1636666904.627172, type 3 (EV_ABS), code 48 (ABS_MT_TOUCH_MAJOR), value 0
Event: time 1636666904.627172, type 3 (EV_ABS), code 49 (ABS_MT_TOUCH_MINOR), value 0
Event: time 1636666904.627172, type 4 (EV_MSC), code 5 (MSC_TIMESTAMP), value 104800
Event: time 1636666904.627172, -------------- SYN_REPORT ------------
Event: time 1636666904.637288, type 3 (EV_ABS), code 57 (ABS_MT_TRACKING_ID), value -1
Event: time 1636666904.637288, type 1 (EV_KEY), code 330 (BTN_TOUCH), value 0

Is it because of the slightly different TOUCH_MAJOR and TOUCH_MINOR values? Or are those irrelevant, like touch pressure values or something?

They're both using the libinput driver. Here's the HP:

$ xinput list-props 9
Device 'ELAN2514:00 04F3:2AF0':
	Device Enabled (157):	1
	Coordinate Transformation Matrix (159):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Calibration Matrix (295):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Calibration Matrix Default (296):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Send Events Modes Available (278):	1, 0
	libinput Send Events Mode Enabled (279):	0, 0
	libinput Send Events Mode Enabled Default (280):	0, 0
	Device Node (281):	"/dev/input/event5"
	Device Product ID (282):	1267, 10992

And this is the Dell. Slightly different Elan models, but settings are identical

$ xinput list-props 14
Device 'ELAN2097:00 04F3:2364':
	Device Enabled (186):	1
	Coordinate Transformation Matrix (188):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Calibration Matrix (358):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Calibration Matrix Default (359):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Send Events Modes Available (306):	1, 0
	libinput Send Events Mode Enabled (307):	0, 0
	libinput Send Events Mode Enabled Default (308):	0, 0
	Device Node (309):	"/dev/input/event14"
	Device Product ID (310):	1267, 9060

Both systems are using the latest packages.

Any ideas on what might be causing this, or what else I might check? I had Fedora 33 on the HP laptop before, also with xfce, and the panels stayed open after touch...it's only since I installed arch that it's started doing this.

Last edited by david784 (2021-11-12 23:06:24)

Offline

#2 2021-11-12 23:13:33

david784
Member
Registered: 2019-05-09
Posts: 3

Re: [solved] trouble with touchscreen and xfce panel

It turns out I hadn't looked at the package list closely enough, and I hadn't run a pacman update on the Dell. Rolling back the following versions solved the problem, now the HP system touch works as desired:

bubblewrap 0.5.0-1 -> 0.5.0-1
xf86-input-libinput 1.2.0-2 -> 1.2.0-1
xorg-server 21.1.1-3 -> 1.20.13-3
xorg-server-common 21.1.1-3 -> 1.20.13-3

I think it's mainly the xorg-server and common...the bubblewrap was a dependency, and the libinput was necessary because without it all libinput devices locked up on boot.

Offline

#3 2021-11-12 23:21:43

ToZ
Administrator
From: Canada
Registered: 2011-06-02
Posts: 11,486

Re: [solved] trouble with touchscreen and xfce panel

Thanks for posting back the solution. There must be a bug in xorg-xserver that is causing this.


Please remember to mark your thread [SOLVED] to make it easier for others to find
--- How To Ask For Help | FAQ | Developer Wiki  |  Community | Contribute ---

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.011 seconds, 7 queries executed - Memory usage: 539.13 KiB (Peak: 542.62 KiB) ]