Check if the app that requested a token has provided a valid input
serial and a focused surface. Downgrade activation request to urgency
otherwise.
This is mostly in line with what other Wayland compositors decided to
do, and offers a better security than the original logic.
xdg-activation is now too strict in only allowing tokens with a seat to
activate a surface. Clients may rely on this behavior for urgency hints.
The seat argument is still useful in case the client does provide a seat
so we can activate it on the desired seat.
Fixes: 842609da64 (view: make request_activate take a seat, 2022-11-30)