seat: Deactivate devices before sending disable

Previously, seatd would not deactivate devices until the client had
acked the disable. In once instance, this lead to libinput spending
significant time checking and closing each input device.

As a workaround, mimick logind's behavior of deactivating devices first.
The original behavior can be reintroduced if the client-side problem is
fixed.

Closes: https://todo.sr.ht/~kennylevinsen/seatd/5
This commit is contained in:
Kenny Levinsen 2020-08-02 21:40:32 +02:00
parent 5b4d00d6cf
commit b2cbe576d1
4 changed files with 111 additions and 59 deletions

View file

@ -21,6 +21,7 @@ struct client {
struct seat *seat;
int seat_vt;
bool pending_disable;
struct list devices;
};