Upon looking at the code in evdev, it's clear the third button emulation is completely non-functional for multitouch devices.
The emulation is triggered by calling Evdev3BEmuFilterEvent() from EvdevPostQueuedEvents() in evdev.c. This is done for events of type EV_QUEUE_BTN only. With a multitouch touchscreen, events of this type aren't generated. Instead, the events are EV_QUEUE_TOUCH, which will never trigger the 3BEmu code.
These touch events don't work the same way as button events, so it's not a simple matter of passing them to Evdev3BEmuFilterEvent() too.
Upon looking at the code in evdev, it's clear the third button emulation is completely non-functional for multitouch devices.
The emulation is triggered by calling Evdev3BEmuFilte rEvent( ) from EvdevPostQueued Events( ) in evdev.c. This is done for events of type EV_QUEUE_BTN only. With a multitouch touchscreen, events of this type aren't generated. Instead, the events are EV_QUEUE_TOUCH, which will never trigger the 3BEmu code.
These touch events don't work the same way as button events, so it's not a simple matter of passing them to Evdev3BEmuFilte rEvent( ) too.