diff --git a/src/backends/native/meta-seat-impl.c b/src/backends/native/meta-seat-impl.c index e430bf790..61548d2f3 100644 --- a/src/backends/native/meta-seat-impl.c +++ b/src/backends/native/meta-seat-impl.c @@ -3985,12 +3985,17 @@ meta_seat_impl_new (MetaSeatNative *seat_native, const char *seat_id, MetaSeatNativeFlag flags) { - return g_initable_new (META_TYPE_SEAT_IMPL, - NULL, NULL, - "seat", seat_native, - "seat-id", seat_id, - "flags", flags, - NULL); + return g_object_new (META_TYPE_SEAT_IMPL, + "seat", seat_native, + "seat-id", seat_id, + "flags", flags, + NULL); +} + +void +meta_seat_impl_setup (MetaSeatImpl *seat_impl) +{ + g_initable_init (G_INITABLE (seat_impl), NULL, NULL); } static gboolean diff --git a/src/backends/native/meta-seat-impl.h b/src/backends/native/meta-seat-impl.h index dced4d1b5..56eb5d228 100644 --- a/src/backends/native/meta-seat-impl.h +++ b/src/backends/native/meta-seat-impl.h @@ -127,6 +127,8 @@ MetaSeatImpl * meta_seat_impl_new (MetaSeatNative *seat_native, const char *seat_id, MetaSeatNativeFlag flags); +void meta_seat_impl_setup (MetaSeatImpl *seat_impl); + void meta_seat_impl_start (MetaSeatImpl *seat_impl); void meta_seat_impl_destroy (MetaSeatImpl *seat_impl); diff --git a/src/backends/native/meta-seat-native.c b/src/backends/native/meta-seat-native.c index ed3842bcf..2b907b699 100644 --- a/src/backends/native/meta-seat-native.c +++ b/src/backends/native/meta-seat-native.c @@ -143,6 +143,7 @@ meta_seat_native_constructed (GObject *object) MetaSeatNative *seat = META_SEAT_NATIVE (object); seat->impl = meta_seat_impl_new (seat, seat->seat_id, seat->flags); + meta_seat_impl_setup (seat->impl); g_signal_connect (seat->impl, "kbd-a11y-flags-changed", G_CALLBACK (proxy_kbd_a11y_flags_changed), seat); g_signal_connect (seat->impl, "kbd-a11y-mods-state-changed",