backends/native: Add udev abstraction layer
To be used to signal devices added, hotplugs and other udev events. Currently the only event emitted is when a device is added. https://gitlab.gnome.org/GNOME/mutter/issues/548 https://gitlab.gnome.org/GNOME/mutter/merge_requests/525
This commit is contained in:

committed by
Georges Basile Stavracas Neto

parent
11e2005563
commit
73e8127d5d
@ -64,6 +64,7 @@ struct _MetaBackendNative
|
||||
MetaBackend parent;
|
||||
|
||||
MetaLauncher *launcher;
|
||||
MetaUdev *udev;
|
||||
MetaBarrierManagerNative *barrier_manager;
|
||||
};
|
||||
|
||||
@ -81,6 +82,7 @@ meta_backend_native_finalize (GObject *object)
|
||||
{
|
||||
MetaBackendNative *native = META_BACKEND_NATIVE (object);
|
||||
|
||||
g_clear_object (&native->udev);
|
||||
meta_launcher_free (native->launcher);
|
||||
|
||||
G_OBJECT_CLASS (meta_backend_native_parent_class)->finalize (object);
|
||||
@ -516,6 +518,8 @@ meta_backend_native_initable_init (GInitable *initable,
|
||||
GCancellable *cancellable,
|
||||
GError **error)
|
||||
{
|
||||
MetaBackendNative *native = META_BACKEND_NATIVE (initable);
|
||||
|
||||
if (!meta_is_stage_views_enabled ())
|
||||
{
|
||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||
@ -523,6 +527,8 @@ meta_backend_native_initable_init (GInitable *initable,
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
native->udev = meta_udev_new ();
|
||||
|
||||
return initable_parent_iface->init (initable, cancellable, error);
|
||||
}
|
||||
|
||||
@ -585,6 +591,12 @@ meta_backend_native_get_launcher (MetaBackendNative *native)
|
||||
return native->launcher;
|
||||
}
|
||||
|
||||
MetaUdev *
|
||||
meta_backend_native_get_udev (MetaBackendNative *native)
|
||||
{
|
||||
return native->udev;
|
||||
}
|
||||
|
||||
gboolean
|
||||
meta_activate_vt (int vt, GError **error)
|
||||
{
|
||||
|
Reference in New Issue
Block a user