psm(4): Fix wrong key-release event occuring after trackpoint use.

Some models of laptops e.g. "X1 Carbon 3rd Gen Thinkpad" have LRM buttons
wired as so called "Synaptic touchpads extended buttons" rather thah real
trackpoint buttons. Handle this case with merging of events from both
sources.

PR:		245877
Reported by:	Raichoo <raichoo@googlemail.com>
MFC after:	1 week
This commit is contained in:
Vladimir Kondratyev 2020-04-26 20:06:08 +00:00
parent 702995b2a5
commit 1130dff9d2

View File

@ -3371,7 +3371,7 @@ proc_synaptics(struct psm_softc *sc, packetbuf_t *pb, mousestatus_t *ms,
evdev_push_rel(sc->evdev_r, REL_X, *x);
evdev_push_rel(sc->evdev_r, REL_Y, -*y);
evdev_push_mouse_btn(sc->evdev_r,
guest_buttons);
guest_buttons | sc->extended_buttons);
evdev_sync(sc->evdev_r);
}
#endif