We can centralize all output-related surface events from there.
Closes: https://github.com/swaywm/sway/issues/7120
When removing outputs, it is possible to end up in a situation where none of the session lock client's surfaces have keyboard focus, resulting in it not receiving keyboard events. Track the focused surface and update it as needed on surface destroy.