diff options
author | Chun-wei Fan <fanchunwei@src.gnome.org> | 2011-11-15 14:20:22 +0800 |
---|---|---|
committer | Chun-wei Fan <fanchunwei@src.gnome.org> | 2011-11-15 14:20:22 +0800 |
commit | 8d0c68347a4ee33bb77c7c21760b63f15db9cf26 (patch) | |
tree | ed825bfd723eb0616a36f8c759c2308ccec51f7b | |
parent | 96d4e527ea8bf0e7fd238ba6cafd578f86fea27f (diff) | |
parent | b281f2090a8fb042cb471611eab54c26ceba8074 (diff) | |
download | clutter-8d0c68347a4ee33bb77c7c21760b63f15db9cf26.tar.gz |
Merge branch 'master' into msvc-support-master
-rw-r--r-- | clutter/clutter-master-clock.c | 10 | ||||
-rw-r--r-- | clutter/clutter-private.h | 7 | ||||
-rw-r--r-- | clutter/clutter-stage-manager.c | 8 |
3 files changed, 15 insertions, 10 deletions
diff --git a/clutter/clutter-master-clock.c b/clutter/clutter-master-clock.c index 21a86d579..2f2debda4 100644 --- a/clutter/clutter-master-clock.c +++ b/clutter/clutter-master-clock.c @@ -95,8 +95,6 @@ static gboolean clutter_clock_dispatch (GSource *source, GSourceFunc callback, gpointer user_data); -static ClutterMasterClock *default_clock = NULL; - static GSourceFuncs clock_funcs = { clutter_clock_prepare, clutter_clock_check, @@ -461,12 +459,12 @@ clutter_master_clock_init (ClutterMasterClock *self) ClutterMasterClock * _clutter_master_clock_get_default (void) { - if (G_LIKELY (default_clock != NULL)) - return default_clock; + ClutterMainContext *context = _clutter_context_get_default (); - default_clock = g_object_new (CLUTTER_TYPE_MASTER_CLOCK, NULL); + if (G_UNLIKELY (context->master_clock == NULL)) + context->master_clock = g_object_new (CLUTTER_TYPE_MASTER_CLOCK, NULL); - return default_clock; + return context->master_clock; } /* diff --git a/clutter/clutter-private.h b/clutter/clutter-private.h index 017d54e7a..30ea65fa3 100644 --- a/clutter/clutter-private.h +++ b/clutter/clutter-private.h @@ -40,6 +40,7 @@ #include "clutter-layout-manager.h" #include "clutter-master-clock.h" #include "clutter-settings.h" +#include "clutter-stage-manager.h" #include "clutter-stage.h" G_BEGIN_DECLS @@ -124,6 +125,12 @@ struct _ClutterMainContext /* the main windowing system backend */ ClutterBackend *backend; + /* the object holding all the stage instances */ + ClutterStageManager *stage_manager; + + /* the clock driving all the frame operations */ + ClutterMasterClock *master_clock; + /* the main event queue */ GQueue *events_queue; diff --git a/clutter/clutter-stage-manager.c b/clutter/clutter-stage-manager.c index 26e58ccd9..a6005944f 100644 --- a/clutter/clutter-stage-manager.c +++ b/clutter/clutter-stage-manager.c @@ -178,12 +178,12 @@ clutter_stage_manager_init (ClutterStageManager *stage_manager) ClutterStageManager * clutter_stage_manager_get_default (void) { - static ClutterStageManager *stage_manager = NULL; + ClutterMainContext *context = _clutter_context_get_default (); - if (G_UNLIKELY (stage_manager == NULL)) - stage_manager = g_object_new (CLUTTER_TYPE_STAGE_MANAGER, NULL); + if (G_UNLIKELY (context->stage_manager == NULL)) + context->stage_manager = g_object_new (CLUTTER_TYPE_STAGE_MANAGER, NULL); - return stage_manager; + return context->stage_manager; } /** |