desktop-shell: resize background and panel surfaces on output resize v4

When an output is resized (permanent mode switch), we should also notify the
shell client so that the panel and background fits to the new screen dimensions.

Signed-off-by: David Fort <contact@hardening-consulting.com>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
diff --git a/desktop-shell/shell.h b/desktop-shell/shell.h
index b430fa2..a5fe194 100644
--- a/desktop-shell/shell.h
+++ b/desktop-shell/shell.h
@@ -114,6 +114,12 @@
 	struct exposay_output eoutput;
 	struct wl_listener    destroy_listener;
 	struct wl_list        link;
+
+	struct weston_surface *panel_surface;
+	struct wl_listener panel_surface_listener;
+
+	struct weston_surface *background_surface;
+	struct wl_listener background_surface_listener;
 };
 
 struct desktop_shell {
@@ -122,6 +128,7 @@
 	struct wl_listener idle_listener;
 	struct wl_listener wake_listener;
 	struct wl_listener transform_listener;
+	struct wl_listener resized_listener;
 	struct wl_listener destroy_listener;
 	struct wl_listener show_input_panel_listener;
 	struct wl_listener hide_input_panel_listener;