compositor: let the shells create the screenshooter
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index b4cd93c..59fa99c 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -6030,6 +6030,8 @@
 		create_keyboard_focus_listener(seat);
 	}
 
+	screenshooter_create(ec);
+
 	shell_add_bindings(ec, shell);
 
 	shell_fade_init(shell);
diff --git a/src/compositor.c b/src/compositor.c
index 47a806e..5405faa 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -3672,7 +3672,6 @@
 	if (weston_compositor_xkb_init(ec, &xkb_names) < 0)
 		return -1;
 
-	screenshooter_create(ec);
 	text_backend_init(ec);
 
 	wl_data_device_manager_init(ec->wl_display);
diff --git a/src/screenshooter.c b/src/screenshooter.c
index 29f2af2..02146c8 100644
--- a/src/screenshooter.c
+++ b/src/screenshooter.c
@@ -585,7 +585,7 @@
 	free(shooter);
 }
 
-void
+WL_EXPORT void
 screenshooter_create(struct weston_compositor *ec)
 {
 	struct screenshooter *shooter;