launcher: Turn MetaLauncher into a GObject
This will be useful later when refactoring MetaLauncher. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4130>
This commit is contained in:
parent
9eb29974f1
commit
6c5f552088
@ -115,7 +115,7 @@ meta_backend_native_dispose (GObject *object)
|
||||
g_clear_object (&priv->kms);
|
||||
g_clear_object (&priv->udev);
|
||||
g_clear_object (&priv->device_pool);
|
||||
g_clear_pointer (&priv->launcher, meta_launcher_free);
|
||||
g_clear_object (&priv->launcher);
|
||||
}
|
||||
|
||||
static ClutterBackend *
|
||||
|
@ -39,8 +39,9 @@
|
||||
|
||||
struct _MetaLauncher
|
||||
{
|
||||
MetaBackend *backend;
|
||||
GObject parent;
|
||||
|
||||
MetaBackend *backend;
|
||||
MetaDBusLogin1Session *session_proxy;
|
||||
MetaDBusLogin1Seat *seat_proxy;
|
||||
char *seat_id;
|
||||
@ -48,12 +49,41 @@ struct _MetaLauncher
|
||||
gboolean session_active;
|
||||
};
|
||||
|
||||
G_DEFINE_FINAL_TYPE (MetaLauncher,
|
||||
meta_launcher,
|
||||
G_TYPE_OBJECT)
|
||||
|
||||
const char *
|
||||
meta_launcher_get_seat_id (MetaLauncher *launcher)
|
||||
{
|
||||
return launcher->seat_id;
|
||||
}
|
||||
|
||||
static void
|
||||
meta_launcher_dispose (GObject *object)
|
||||
{
|
||||
MetaLauncher *launcher = META_LAUNCHER (object);
|
||||
|
||||
g_clear_pointer (&launcher->seat_id, g_free);
|
||||
g_clear_object (&launcher->seat_proxy);
|
||||
g_clear_object (&launcher->session_proxy);
|
||||
|
||||
G_OBJECT_CLASS (meta_launcher_parent_class)->dispose (object);
|
||||
}
|
||||
|
||||
static void
|
||||
meta_launcher_class_init (MetaLauncherClass *klass)
|
||||
{
|
||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||
|
||||
object_class->dispose = meta_launcher_dispose;
|
||||
}
|
||||
|
||||
static void
|
||||
meta_launcher_init (MetaLauncher *launcher)
|
||||
{
|
||||
}
|
||||
|
||||
static gboolean
|
||||
find_systemd_session (char **session_id,
|
||||
GError **error)
|
||||
@ -413,7 +443,7 @@ meta_launcher_new (MetaBackend *backend,
|
||||
goto fail;
|
||||
}
|
||||
|
||||
self = g_new0 (MetaLauncher, 1);
|
||||
self = g_object_new (META_TYPE_LAUNCHER, NULL);
|
||||
self->backend = backend;
|
||||
self->session_proxy = g_object_ref (session_proxy);
|
||||
self->session_active = TRUE;
|
||||
@ -436,15 +466,6 @@ fail:
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void
|
||||
meta_launcher_free (MetaLauncher *self)
|
||||
{
|
||||
g_free (self->seat_id);
|
||||
g_clear_object (&self->seat_proxy);
|
||||
g_clear_object (&self->session_proxy);
|
||||
g_free (self);
|
||||
}
|
||||
|
||||
gboolean
|
||||
meta_launcher_activate_vt (MetaLauncher *launcher,
|
||||
signed char vt,
|
||||
|
@ -21,7 +21,12 @@
|
||||
|
||||
#include "backends/meta-backend-types.h"
|
||||
|
||||
typedef struct _MetaLauncher MetaLauncher;
|
||||
#define META_TYPE_LAUNCHER (meta_launcher_get_type ())
|
||||
G_DECLARE_FINAL_TYPE (MetaLauncher,
|
||||
meta_launcher,
|
||||
META, LAUNCHER,
|
||||
GObject)
|
||||
|
||||
typedef struct _MetaDBusLogin1Session MetaDBusLogin1Session;
|
||||
|
||||
MetaLauncher *meta_launcher_new (MetaBackend *backend,
|
||||
@ -29,8 +34,6 @@ MetaLauncher *meta_launcher_new (MetaBackend *backend,
|
||||
const char *custom_seat_id,
|
||||
GError **error);
|
||||
|
||||
void meta_launcher_free (MetaLauncher *self);
|
||||
|
||||
gboolean meta_launcher_activate_vt (MetaLauncher *self,
|
||||
signed char vt,
|
||||
GError **error);
|
||||
|
Loading…
x
Reference in New Issue
Block a user