desktop-shell: Properly handle seat hotplugging

Previously, desktop-shell would only create its internal shell_seat object
for each seat available when the desktop-shell module is loaded.  This is a
problem any time seats are created dynamically.  In particular, the Wayland
and RDP backends create seats on an as-needed basis and they weren't
getting picked up proprely by desktop-shell.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=77649
diff --git a/desktop-shell/shell.h b/desktop-shell/shell.h
index 09f8b79..6e63785 100644
--- a/desktop-shell/shell.h
+++ b/desktop-shell/shell.h
@@ -199,6 +199,7 @@
 
 	struct weston_layer minimized_layer;
 
+	struct wl_listener seat_create_listener;
 	struct wl_listener output_create_listener;
 	struct wl_listener output_move_listener;
 	struct wl_list output_list;