OK, I bvelieve I've identified the main problem here:

http://cgit.freedesktop.org/xorg/xserver/commit/?id=a986f2f30cbe2a00e72ded7315c4951d7703e549
http://anonscm.debian.org/gitweb/?p=pkg-xorg/xserver/xorg-server.git;a=commitdiff;h=96d8df5bc9d400d55830b23afe5525b222f8dfc7

Due to that commit, the ET_TouchEnd branch of UpdateDeviceState never receives 
the TOUCH_END flag it expects, so it never lifts the button. In fact, there are 
currently only two references to the TOUCH_END macro in the whole upstream xorg 
git tree: one its definition in include/input.h, the other this check in 
Xi/exevents.c. There is noone left ever setting this flag.
http://cgit.freedesktop.org/xorg/xserver/tree/include/input.h?id=a986f2f30cbe2a00e72ded7315c4951d7703e549#n80
http://cgit.freedesktop.org/xorg/xserver/tree/Xi/exevents.c?id=a986f2f30cbe2a00e72ded7315c4951d7703e549#n974

The reodering of events which the commit does will also break the state
reported for the release event. As far as I understand things (and as it
behaves for my regular mouse), the state should reflect the state of
buttons BEFORE the event happened. There is a comment to that effect
somewhere in the X sources. Reordering the calls in ProcessTouchEvent
will cause the state to be already 0 for the release event, where it
should be 0x100 still.

As the original commit originated from Chase Douglas who is a member of
the ubuntu-x-swat team, I suppose he will read this message here and
might provide additional information as to how his change was intended
to work, and whether backing it out of the code will likely break things
for other users. If he doesn't usually follow bug mail, someone please
make him aware of this issue here.

The only remaining problem is the fact that the ButtonPress event has
state 0x100 already, where it should have state 0x000 to match the lack
of pressed buttons preceeding that event. I'll see whether I can
pinpoint that problem as well. If I can, I will attach a patch including
that fix as well. Otherwise a simple reverse application of the commit I
pointed out above will be enough.

@Stefan Krastanov, please see if this fix works for you, otherwise
please open a new bug report for your issue.

-- 
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to xorg-server in Ubuntu.
https://bugs.launchpad.net/bugs/1015183

Title:
  Inconsistent mouse events for Acer T231H multitouch monitor

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1015183/+subscriptions

_______________________________________________
Mailing list: https://launchpad.net/~ubuntu-x-swat
Post to     : ubuntu-x-swat@lists.launchpad.net
Unsubscribe : https://launchpad.net/~ubuntu-x-swat
More help   : https://help.launchpad.net/ListHelp

Reply via email to