Skip to content
Commit e0c66d42 authored by David Edmundson's avatar David Edmundson Committed by Vlad Zahorodnii
Browse files

Match pointer/keyboard/touch lifespan to Seat lifespan

PointerInterface is a "Server-managed multicasting resource". As in we
have one QObject, managed by the server, but internally it represents
multiple resources from various clients.

We cannot control the lifespan of those resources, they may persist long
after we stop having these capabilities on the seat.

If we delete our pointer object when we stop advertising a pointer
capability we have race conditions with clients calling release, or
potentially even having a seat_get_pointer in flight.

It's easier and safer just to have PointerInterface last as long as the
Seat. If we don't have a mouse no-one should try to bind, and even if
they did or remained bound long after we stop having a mouse it won't do
any harm as there are no mouse events to broadcast.
parent 1a9ab2d4
Pipeline #327738 failed with stage
in 34 minutes and 11 seconds
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment