aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Withnall <philip.withnall@collabora.co.uk>2010-07-21 18:57:08 +0800
committerPhilip Withnall <philip.withnall@collabora.co.uk>2010-07-21 19:13:26 +0800
commit5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f (patch)
treecc63b7c6252fb2b0e54d70660487b1683ba037c9
parent5f58a8e1491eb0a2c44bbcd73674cf88877500e3 (diff)
downloadgsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.tar
gsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.tar.gz
gsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.tar.bz2
gsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.tar.lz
gsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.tar.xz
gsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.tar.zst
gsoc2013-empathy-5ee7ffd39ff228c35d0fb85aa7d55bbfe044e73f.zip
Re-add support for the "People Nearby" group
-rw-r--r--libempathy-gtk/empathy-individual-store.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/libempathy-gtk/empathy-individual-store.c b/libempathy-gtk/empathy-individual-store.c
index 84fcbe289..da590608a 100644
--- a/libempathy-gtk/empathy-individual-store.c
+++ b/libempathy-gtk/empathy-individual-store.c
@@ -349,6 +349,7 @@ individual_store_add_individual (EmpathyIndividualStore *self,
EmpathyContact *contact;
TpConnection *connection;
EmpathyIndividualManagerFlags flags = 0;
+ gchar *protocol_name;
priv = GET_PRIV (self);
@@ -368,18 +369,23 @@ individual_store_add_individual (EmpathyIndividualStore *self,
flags = empathy_individual_manager_get_flags_for_connection (manager,
connection);
+ tp_connection_parse_object_path (connection, &protocol_name, NULL);
+
if (groups == NULL)
{
GtkTreeIter iter_group, *parent;
parent = &iter_group;
- /* TODO: implement */
- DEBUG ("forcing the People Nearby group even when 'show "
- "groups' is off is unimplemented");
-
if (!priv->show_groups)
parent = NULL;
+ else if (!tp_strdiff (protocol_name, "local-xmpp"))
+ {
+ /* these are People Nearby */
+ individual_store_get_group (self,
+ EMPATHY_INDIVIDUAL_STORE_PEOPLE_NEARBY, &iter_group, NULL, NULL,
+ TRUE);
+ }
else
{
individual_store_get_group (self,
@@ -391,6 +397,8 @@ individual_store_add_individual (EmpathyIndividualStore *self,
individual, flags);
}
+ g_free (protocol_name);
+
/* Else add to each group. */
for (l = groups; l; l = l->next)
{