After testing on an all-in-one system with a multitouch screen and a mouse, these were the results:
touchpad/singletouch-automated fail touchpad/multitouch-automated pass touchpad/multitouch-manual uninitiated touchscreen/nontouch-automated fail touchscreen/multitouch-automated pass touchscreen/multitouch-manual uninitiated
The problem is that both the touchpad and the touchscreen were being filtered as the same device by this command:
xinput_resource | filter_templates -w 'class=XITouchClass' -w 'touch_mode=dependent' -b 'name=Virtual core pointer'| grep 'name:'
and this command:
xinput_resource | filter_templates -w 'class=XITouchClass' -w 'touch_mode=direct' -b 'name=Virtual core pointer'| grep 'name:'
The reason is that the whitelist arguments seem to be or'ed instead of and'ed. So, these commands were changed to:
xinput_resource | filter_templates -w 'class=XITouchClass' | grep -q 'touch_mode: dependent'
and this command respectively:
xinput_resource | filter_templates -w 'class=XITouchClass' | grep -q 'touch_mode: direct'
Since grep is now used in quiet mode, there's really no reason to blacklist the Virtual core pointer device anymore.
« Back to merge proposal
After testing on an all-in-one system with a multitouch screen and a mouse, these were the results:
touchpad/ singletouch- automated fail multitouch- automated pass multitouch- manual uninitiated nontouch- automated fail multitouch- automated pass multitouch- manual uninitiated
touchpad/
touchpad/
touchscreen/
touchscreen/
touchscreen/
The problem is that both the touchpad and the touchscreen were being filtered as the same device by this command:
xinput_resource | filter_templates -w 'class= XITouchClass' -w 'touch_ mode=dependent' -b 'name=Virtual core pointer'| grep 'name:'
and this command:
xinput_resource | filter_templates -w 'class= XITouchClass' -w 'touch_mode=direct' -b 'name=Virtual core pointer'| grep 'name:'
The reason is that the whitelist arguments seem to be or'ed instead of and'ed. So, these commands were changed to:
xinput_resource | filter_templates -w 'class= XITouchClass' | grep -q 'touch_mode: dependent'
and this command respectively:
xinput_resource | filter_templates -w 'class= XITouchClass' | grep -q 'touch_mode: direct'
Since grep is now used in quiet mode, there's really no reason to blacklist the Virtual core pointer device anymore.