x11: Refactor the X11 startup notification bits into src/x11

Only one little bit left in MetaDisplay, because SnStartupSequence
is exposed in API there. These bits will be removed in future
commits.
This commit is contained in:
Carlos Garnacho
2018-08-22 20:57:04 +02:00
committed by Georges Basile Stavracas Neto
parent 576cd08088
commit 26fbd56a95
11 changed files with 422 additions and 351 deletions

View File

@ -28,11 +28,26 @@
#include "core/display-private.h"
#define META_TYPE_STARTUP_NOTIFICATION (meta_startup_notification_get_type ())
#define META_TYPE_STARTUP_SEQUENCE (meta_startup_sequence_get_type ())
typedef struct _MetaStartupSequence MetaStartupSequence;
typedef struct _MetaStartupSequenceClass MetaStartupSequenceClass;
struct _MetaStartupSequenceClass
{
GObjectClass parent_class;
void (* complete) (MetaStartupSequence *sequence);
};
G_DECLARE_FINAL_TYPE (MetaStartupNotification,
meta_startup_notification,
META, STARTUP_NOTIFICATION,
GObject)
G_DECLARE_DERIVABLE_TYPE (MetaStartupSequence,
meta_startup_sequence,
META, STARTUP_SEQUENCE,
GObject)
MetaStartupNotification *
meta_startup_notification_get (MetaDisplay *display);
@ -40,7 +55,12 @@ MetaStartupNotification *
gboolean meta_startup_notification_handle_xevent (MetaStartupNotification *sn,
XEvent *xevent);
void meta_startup_notification_add_sequence (MetaStartupNotification *sn,
MetaStartupSequence *seq);
void meta_startup_notification_remove_sequence (MetaStartupNotification *sn,
MetaStartupSequence *seq);
MetaStartupSequence *
meta_startup_notification_lookup_sequence (MetaStartupNotification *sn,
const gchar *id);
GSList * meta_startup_notification_get_sequences (MetaStartupNotification *sn);