static void meta_stage_finalize (GObject *object) { MetaStage *stage = META_STAGE (object); MetaStagePrivate *priv = meta_stage_get_instance_private (stage); meta_overlay_free (&priv->cursor_overlay); }
static void meta_stage_deactivate (ClutterStage *actor) { MetaStage *stage = META_STAGE (actor); MetaStagePrivate *priv = meta_stage_get_instance_private (stage); CLUTTER_STAGE_CLASS (meta_stage_parent_class)->deactivate (actor); priv->is_active = FALSE; }
static void meta_stage_paint (ClutterActor *actor) { MetaStage *stage = META_STAGE (actor); MetaStagePrivate *priv = meta_stage_get_instance_private (stage); CLUTTER_ACTOR_CLASS (meta_stage_parent_class)->paint (actor); meta_overlay_paint (&priv->cursor_overlay); }
static void queue_redraw (MetaCursorRenderer *renderer) { MetaCursorRendererPrivate *priv = meta_cursor_renderer_get_instance_private (renderer); MetaBackend *backend = meta_get_backend (); ClutterActor *stage = meta_backend_get_stage (backend); CoglTexture *texture; /* During early initialization, we can have no stage */ if (!stage) return; if (priv->displayed_cursor && !priv->handled_by_backend) texture = meta_cursor_reference_get_cogl_texture (priv->displayed_cursor, NULL, NULL); else texture = NULL; meta_stage_set_cursor (META_STAGE (stage), texture, &priv->current_rect); }