#include <libempathy/empathy-chatroom-manager.h>
#include <libempathy/empathy-chatroom.h>
#include <libempathy/empathy-contact-list.h>
-#include <libempathy/empathy-contact-manager.h>
#include <libempathy/empathy-gsettings.h>
#include <libempathy/empathy-individual-manager.h>
#include <libempathy/empathy-gsettings.h>
#include <libempathy/empathy-tp-contact-factory.h>
#include <libempathy-gtk/empathy-contact-dialogs.h>
-#include <libempathy-gtk/empathy-contact-list-store.h>
-#include <libempathy-gtk/empathy-contact-list-view.h>
#include <libempathy-gtk/empathy-live-search.h>
#include <libempathy-gtk/empathy-contact-blocking-dialog.h>
#include <libempathy-gtk/empathy-contact-search-dialog.h>
#include <libempathy-gtk/empathy-gtk-enum-types.h>
#include <libempathy-gtk/empathy-individual-dialogs.h>
#include <libempathy-gtk/empathy-individual-store.h>
+#include <libempathy-gtk/empathy-individual-store-manager.h>
#include <libempathy-gtk/empathy-individual-view.h>
#include <libempathy-gtk/empathy-new-message-dialog.h>
#include <libempathy-gtk/empathy-new-call-dialog.h>
#define GET_PRIV(self) ((EmpathyMainWindowPriv *)((EmpathyMainWindow *) self)->priv)
struct _EmpathyMainWindowPriv {
- EmpathyContactList *contact_manager;
EmpathyIndividualStore *individual_store;
EmpathyIndividualView *individual_view;
TpAccountManager *account_manager;
}
static void
-main_window_row_activated_cb (EmpathyContactListView *view,
+main_window_row_activated_cb (EmpathyIndividualView *view,
GtkTreePath *path,
GtkTreeViewColumn *col,
EmpathyMainWindow *window)
EmpathyMainWindowPriv *priv = GET_PRIV (window);
GtkWidget *hbox, *image, *label, *button;
- hbox = gtk_hbox_new (FALSE, 6);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
/* protocol icon */
image = gtk_image_new ();
g_object_unref (priv->account_manager);
g_object_unref (priv->individual_store);
- g_object_unref (priv->contact_manager);
g_object_unref (priv->sound_mgr);
- g_hash_table_destroy (priv->errors);
- g_hash_table_destroy (priv->auths);
+ g_hash_table_unref (priv->errors);
+ g_hash_table_unref (priv->auths);
/* disconnect all handlers of status-changed signal */
g_hash_table_iter_init (&iter, priv->status_changed_handlers);
g_signal_handler_disconnect (TP_ACCOUNT (key),
GPOINTER_TO_UINT (value));
- g_hash_table_destroy (priv->status_changed_handlers);
+ g_hash_table_unref (priv->status_changed_handlers);
g_signal_handlers_disconnect_by_func (priv->event_manager,
main_window_event_added_cb,
EmpathyMainWindow *window)
{
EmpathyMainWindowPriv *priv = GET_PRIV (window);
- EmpathyContactListStoreSort value;
+ EmpathyIndividualStoreSort value;
GSList *group;
GType type;
GEnumClass *enum_class;
* so it's got a race condition between its signal handlers and its
* finalization. The class is planned to be removed, so we won't fix
* this before then. */
- priv->contact_manager = EMPATHY_CONTACT_LIST (
- empathy_contact_manager_dup_singleton ());
individual_manager = empathy_individual_manager_dup_singleton ();
- priv->individual_store = empathy_individual_store_new (
- individual_manager);
+ priv->individual_store = EMPATHY_INDIVIDUAL_STORE (
+ empathy_individual_store_manager_new (individual_manager));
g_object_unref (individual_manager);
/* For the moment, we disallow Persona drops onto the main contact list (e.g. from things such as
* drop, so allowing them would achieve nothing except confusion. */
priv->individual_view = empathy_individual_view_new (
priv->individual_store,
- EMPATHY_INDIVIDUAL_VIEW_FEATURE_ALL ^ EMPATHY_INDIVIDUAL_VIEW_FEATURE_PERSONA_DROP,
- EMPATHY_INDIVIDUAL_FEATURE_ALL);
+ /* EmpathyIndividualViewFeatureFlags */
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_GROUPS_SAVE |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_GROUPS_RENAME |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_GROUPS_REMOVE |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_GROUPS_CHANGE |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_INDIVIDUAL_REMOVE |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_INDIVIDUAL_DROP |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_INDIVIDUAL_DRAG |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_INDIVIDUAL_TOOLTIP |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_INDIVIDUAL_CALL |
+ EMPATHY_INDIVIDUAL_VIEW_FEATURE_FILE_DROP,
+ /* EmpathyIndividualFeatureFlags */
+ EMPATHY_INDIVIDUAL_FEATURE_CHAT |
+ EMPATHY_INDIVIDUAL_FEATURE_CALL |
+ EMPATHY_INDIVIDUAL_FEATURE_EDIT |
+ EMPATHY_INDIVIDUAL_FEATURE_INFO |
+ EMPATHY_INDIVIDUAL_FEATURE_LINK |
+ EMPATHY_INDIVIDUAL_FEATURE_SMS |
+ EMPATHY_INDIVIDUAL_FEATURE_CALL_PHONE);
gtk_widget_show (GTK_WIDGET (priv->individual_view));
gtk_container_add (GTK_CONTAINER (sw),