mirror of
https://github.com/brl/mutter.git
synced 2024-11-26 10:00:45 -05:00
stage-manager: Store the stage manager into the main context
Use the main context to store the stage manager singleton, instead of a static pointer inside clutter-stage-manager.c.
This commit is contained in:
parent
e7720c4156
commit
f1ebfe30ce
@ -40,6 +40,7 @@
|
|||||||
#include "clutter-layout-manager.h"
|
#include "clutter-layout-manager.h"
|
||||||
#include "clutter-master-clock.h"
|
#include "clutter-master-clock.h"
|
||||||
#include "clutter-settings.h"
|
#include "clutter-settings.h"
|
||||||
|
#include "clutter-stage-manager.h"
|
||||||
#include "clutter-stage.h"
|
#include "clutter-stage.h"
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
@ -124,6 +125,9 @@ struct _ClutterMainContext
|
|||||||
/* the main windowing system backend */
|
/* the main windowing system backend */
|
||||||
ClutterBackend *backend;
|
ClutterBackend *backend;
|
||||||
|
|
||||||
|
/* the object holding all the stage instances */
|
||||||
|
ClutterStageManager *stage_manager;
|
||||||
|
|
||||||
/* the main event queue */
|
/* the main event queue */
|
||||||
GQueue *events_queue;
|
GQueue *events_queue;
|
||||||
|
|
||||||
|
@ -178,12 +178,12 @@ clutter_stage_manager_init (ClutterStageManager *stage_manager)
|
|||||||
ClutterStageManager *
|
ClutterStageManager *
|
||||||
clutter_stage_manager_get_default (void)
|
clutter_stage_manager_get_default (void)
|
||||||
{
|
{
|
||||||
static ClutterStageManager *stage_manager = NULL;
|
ClutterMainContext *context = _clutter_context_get_default ();
|
||||||
|
|
||||||
if (G_UNLIKELY (stage_manager == NULL))
|
if (G_UNLIKELY (context->stage_manager == NULL))
|
||||||
stage_manager = g_object_new (CLUTTER_TYPE_STAGE_MANAGER, NULL);
|
context->stage_manager = g_object_new (CLUTTER_TYPE_STAGE_MANAGER, NULL);
|
||||||
|
|
||||||
return stage_manager;
|
return context->stage_manager;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user