struct ds_tizen_screen *screen,
struct wl_listener *listener);
+WL_EXPORT void
+ds_tizen_screen_add_assign_surface_listener(
+ struct ds_tizen_screen *screen,
+ struct wl_listener *listener);
WL_EXPORT void
ds_tizen_splitscreen_add_destroy_listener(
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(wtz-blender-server)
BuildRequires: pkgconfig(wtz-blur-server)
+BuildRequires: pkgconfig(wtz-shell-server)
+BuildRequires: pkgconfig(wtz-shell-client)
+BuildRequires: pkgconfig(wtz-screen-server)
+BuildRequires: pkgconfig(wtz-screen-client)
%description
Wayland Compositor Library for Tizen
dependency('scaler-server', required: true),
dependency('tizen-extension-server', required: true),
dependency('xkbcommon', required: true),
+ dependency('wtz-shell-server', required: true),
dependency('wtz-screen-server', required: true),
dependency('wtz-blender-server', required: true),
dependency('wtz-blur-server', required: true),
struct {
struct wl_signal destroy;
struct wl_signal get_splitscreen;
+ struct wl_signal assign_surface;
} events;
};
wl_signal_emit(&screen_client->screen->events.get_splitscreen, splitscreen);
}
+static void
+screen_handle_assign_surface(struct wl_client *client,
+ struct wl_resource *screen_client_resource,
+ struct wl_resource *wtz_surf)
+{
+ struct ds_tizen_screen_client *screen_client;
+ struct ds_tizen_screen *screen;
+
+ screen_client = wl_resource_get_user_data(screen_client_resource);
+ screen = screen_client->screen;
+
+ wl_signal_emit(&screen->events.assign_surface, wtz_surf);
+}
+
static void
screen_handle_destroy(struct wl_client *wl_client,
struct wl_resource *resource)
{
.destroy = screen_handle_destroy,
.get_splitscreen = screen_handle_get_splitscreen,
+ .assign_surface = screen_handle_assign_surface,
};
static void
wl_signal_init(&screen->events.destroy);
wl_signal_init(&screen->events.get_splitscreen);
+ wl_signal_init(&screen->events.assign_surface);
ds_inf("Global created: tizen_screen(%p)", screen);
wl_signal_add(&screen->events.get_splitscreen, listener);
}
+WL_EXPORT void
+ds_tizen_screen_add_assign_surface_listener(
+ struct ds_tizen_screen *screen,
+ struct wl_listener *listener)
+{
+ wl_signal_add(&screen->events.assign_surface, listener);
+}
+
WL_EXPORT void
ds_tizen_splitscreen_add_destroy_listener(
struct ds_tizen_splitscreen *splitscreen,