compositor: Add create_surface_signal
authorKristian Høgsberg <krh@bitplanet.net>
Mon, 7 Apr 2014 05:04:50 +0000 (22:04 -0700)
committerKristian Høgsberg <krh@bitplanet.net>
Mon, 7 Apr 2014 05:22:04 +0000 (22:22 -0700)
This signal is emitted when a client creates a surface, not for internal
surfaces.

src/compositor.c
src/compositor.h

index a298fb8..ea27be4 100644 (file)
@@ -2183,6 +2183,8 @@ compositor_create_surface(struct wl_client *client,
        }
        wl_resource_set_implementation(surface->resource, &surface_interface,
                                       surface, destroy_surface);
+
+       wl_signal_emit(&ec->create_surface_signal, surface);
 }
 
 static void
@@ -3613,6 +3615,7 @@ weston_compositor_init(struct weston_compositor *ec,
        ec->config = config;
        ec->wl_display = display;
        wl_signal_init(&ec->destroy_signal);
+       wl_signal_init(&ec->create_surface_signal);
        wl_signal_init(&ec->activate_signal);
        wl_signal_init(&ec->transform_signal);
        wl_signal_init(&ec->kill_signal);
index 15d6e03..af41b00 100644 (file)
@@ -574,6 +574,7 @@ struct weston_compositor {
        struct weston_config *config;
 
        /* surface signals */
+       struct wl_signal create_surface_signal;
        struct wl_signal activate_signal;
        struct wl_signal transform_signal;