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->kms);
|
||||||
g_clear_object (&priv->udev);
|
g_clear_object (&priv->udev);
|
||||||
g_clear_object (&priv->device_pool);
|
g_clear_object (&priv->device_pool);
|
||||||
g_clear_pointer (&priv->launcher, meta_launcher_free);
|
g_clear_object (&priv->launcher);
|
||||||
}
|
}
|
||||||
|
|
||||||
static ClutterBackend *
|
static ClutterBackend *
|
||||||
|
@ -39,8 +39,9 @@
|
|||||||
|
|
||||||
struct _MetaLauncher
|
struct _MetaLauncher
|
||||||
{
|
{
|
||||||
MetaBackend *backend;
|
GObject parent;
|
||||||
|
|
||||||
|
MetaBackend *backend;
|
||||||
MetaDBusLogin1Session *session_proxy;
|
MetaDBusLogin1Session *session_proxy;
|
||||||
MetaDBusLogin1Seat *seat_proxy;
|
MetaDBusLogin1Seat *seat_proxy;
|
||||||
char *seat_id;
|
char *seat_id;
|
||||||
@ -48,12 +49,41 @@ struct _MetaLauncher
|
|||||||
gboolean session_active;
|
gboolean session_active;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
G_DEFINE_FINAL_TYPE (MetaLauncher,
|
||||||
|
meta_launcher,
|
||||||
|
G_TYPE_OBJECT)
|
||||||
|
|
||||||
const char *
|
const char *
|
||||||
meta_launcher_get_seat_id (MetaLauncher *launcher)
|
meta_launcher_get_seat_id (MetaLauncher *launcher)
|
||||||
{
|
{
|
||||||
return launcher->seat_id;
|
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
|
static gboolean
|
||||||
find_systemd_session (char **session_id,
|
find_systemd_session (char **session_id,
|
||||||
GError **error)
|
GError **error)
|
||||||
@ -413,7 +443,7 @@ meta_launcher_new (MetaBackend *backend,
|
|||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
|
||||||
self = g_new0 (MetaLauncher, 1);
|
self = g_object_new (META_TYPE_LAUNCHER, NULL);
|
||||||
self->backend = backend;
|
self->backend = backend;
|
||||||
self->session_proxy = g_object_ref (session_proxy);
|
self->session_proxy = g_object_ref (session_proxy);
|
||||||
self->session_active = TRUE;
|
self->session_active = TRUE;
|
||||||
@ -436,15 +466,6 @@ fail:
|
|||||||
return NULL;
|
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
|
gboolean
|
||||||
meta_launcher_activate_vt (MetaLauncher *launcher,
|
meta_launcher_activate_vt (MetaLauncher *launcher,
|
||||||
signed char vt,
|
signed char vt,
|
||||||
|
@ -21,7 +21,12 @@
|
|||||||
|
|
||||||
#include "backends/meta-backend-types.h"
|
#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;
|
typedef struct _MetaDBusLogin1Session MetaDBusLogin1Session;
|
||||||
|
|
||||||
MetaLauncher *meta_launcher_new (MetaBackend *backend,
|
MetaLauncher *meta_launcher_new (MetaBackend *backend,
|
||||||
@ -29,8 +34,6 @@ MetaLauncher *meta_launcher_new (MetaBackend *backend,
|
|||||||
const char *custom_seat_id,
|
const char *custom_seat_id,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
|
||||||
void meta_launcher_free (MetaLauncher *self);
|
|
||||||
|
|
||||||
gboolean meta_launcher_activate_vt (MetaLauncher *self,
|
gboolean meta_launcher_activate_vt (MetaLauncher *self,
|
||||||
signed char vt,
|
signed char vt,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user