static void shell_status_menu_init (ShellStatusMenu *status) { ShellStatusMenuPrivate *priv; status->priv = priv = G_TYPE_INSTANCE_GET_PRIVATE (status, SHELL_TYPE_STATUS_MENU, ShellStatusMenuPrivate); g_object_set (G_OBJECT (status), "orientation", BIG_BOX_ORIENTATION_HORIZONTAL, NULL); priv->client = gconf_client_get_default (); priv->user_icon = CLUTTER_TEXTURE (clutter_texture_new ()); big_box_append (BIG_BOX (status), CLUTTER_ACTOR (status->priv->user_icon), 0); priv->name_box = BIG_BOX (big_box_new (BIG_BOX_ORIENTATION_VERTICAL)); g_object_set (G_OBJECT (priv->name_box), "y-align", BIG_BOX_ALIGNMENT_CENTER, NULL); big_box_append (BIG_BOX (status), CLUTTER_ACTOR (priv->name_box), BIG_BOX_PACK_EXPAND); priv->name = CLUTTER_TEXT (clutter_text_new ()); big_box_append (BIG_BOX (priv->name_box), CLUTTER_ACTOR (priv->name), BIG_BOX_PACK_EXPAND); priv->manager = gdm_user_manager_ref_default (); setup_current_user (status); create_sub_menu (status); }
static gboolean load_users (GdmUserChooserWidget *widget) { if (widget->priv->show_normal_users) { widget->priv->manager = gdm_user_manager_ref_default (); g_signal_connect (widget->priv->manager, "user-added", G_CALLBACK (on_user_added), widget); g_signal_connect (widget->priv->manager, "user-removed", G_CALLBACK (on_user_removed), widget); g_signal_connect (widget->priv->manager, "users-loaded", G_CALLBACK (on_users_loaded), widget); g_signal_connect (widget->priv->manager, "user-is-logged-in-changed", G_CALLBACK (on_user_is_logged_in_changed), widget); g_signal_connect (widget->priv->manager, "user-login-frequency-changed", G_CALLBACK (on_user_login_frequency_changed), widget); } else { gdm_chooser_widget_loaded (GDM_CHOOSER_WIDGET (widget)); } widget->priv->load_idle_id = 0; return FALSE; }