wl_signal_add(&backend->events.new_input, listener);
}
-void
+WL_EXPORT void
ds_backend_init(struct ds_backend *backend,
struct wl_display *display,
const struct ds_backend_interface *iface)
wl_signal_init(&backend->events.new_input);
}
-void
+WL_EXPORT void
ds_backend_finish(struct ds_backend *backend)
{
wl_signal_emit(&backend->events.destroy, backend);
wl_signal_add(&seat->keyboard.events.focus_change, listener);
}
-void
+WL_EXPORT void
ds_seat_keyboard_start_grab(struct ds_seat *seat,
struct ds_seat_keyboard_grab *grab)
{
wl_signal_emit(&seat->events.keyboard_grab_begin, grab);
}
-struct ds_seat_keyboard_grab *
+WL_EXPORT struct ds_seat_keyboard_grab *
ds_seat_create_keyboard_grab(struct ds_seat *seat,
const struct ds_keyboard_grab_interface *iface, void *data)
{
return grab;
}
-void
+WL_EXPORT void
ds_seat_keyboard_destroy_grab(struct ds_seat_keyboard_grab *grab)
{
free(grab);
}
-void *
+WL_EXPORT void *
ds_seat_keyboard_grab_get_data(struct ds_seat_keyboard_grab *grab)
{
return grab->data;
}
-void
+WL_EXPORT void
ds_seat_keyboard_end_grab(struct ds_seat *seat)
{
struct ds_seat_keyboard *keyboard = &seat->keyboard;