seat_get_touch not being called

Pekka Paalanen ppaalanen at gmail.com
Tue Dec 4 00:12:48 PST 2012


On Mon, 3 Dec 2012 20:45:14 +0000
Keller Alexander-B42067 <B42067 at freescale.com> wrote:

> I have been trying to get my touchscreen inputs to work on Wayland, and everytime the screen is touched I get an error saying "couldn't find resource." I get that error because my seat->touch->resource_list is empty, and the function that writes to that list is seat_get_touch is not being called. What is unusual is that when I start the server, the server recognizes that a touch screen is plugged in and my driver is returning all the correct information. I was wondering exactly how the seat_get_touch function gets called so that I can populate the resource_list. Any help on this issue would be appreciated. Thanks for your time.

FWIW, this might be related:
https://bugs.freedesktop.org/show_bug.cgi?id=51909

I have seen the "couldn't find resource" error, but found no ill
effects apart from that bug report.

Scott is right about when seat_get_touch() is called. It is a protocol
handler function, and indeed gets called by libwayland-server as the
action for receiving a wl_seat.get_touch request.

You do know, that Weston does *not* emulate a pointer device for a
touch device? So if a client does not specifically ask for touch
events, it will not get ANY input events from the touchscreen. Like
Scott said, the only touch-enabled client in the weston repository is
simple-touch. The shells and the other clients do not react to touch
events.

To fix that, we need touch support in the toytoolkit, and likely some
additions to the shell plugins.

Therefore it is expected that a touchscreen does nothing, if you don't
run simple-touch at this time.


Thanks,
pq


More information about the wayland-devel mailing list