if test "x$have_meego" = "xyes"; then
AC_DEFINE(HAVE_MEEGO, 1, [Define if you have meego])
+ chain_enable_favourite_contacts="yes"
fi
else
have_meego="no"
AC_SUBST(MEEGO_CFLAGS)
AC_SUBST(MEEGO_LIBS)
+# -----------------------------------------------------------
+# favourite contacts support
+# -----------------------------------------------------------
+AC_ARG_ENABLE(favourite_contacts,
+ AS_HELP_STRING([--enable-favourite-contacts=@<:no/yes@:>@],
+ [Enable favourite contacts]), ,
+ enable_favourite_contacts=no)
+
+if test "x$enable_favourite_contacts" != "xno" -o "x$chain_enable_favourite_contacts" == "xyes"; then
+ PKG_CHECK_MODULES(TELEPATHY_LOGGER,
+ [
+ libtelepathy-logger
+ ], have_telepathy_logger="yes", have_telepathy_logger="no")
+
+ if test "x$have_telepathy_logger" = "xyes"; then
+ have_favourite_contacts="yes"
+ AC_DEFINE(HAVE_FAVOURITE_CONTACTS, 1, [Define if you want favourite contacts support])
+ fi
+else
+ have_favourite_contacts="no"
+fi
+
+if test "x$enable_favourite_contacts" = "xyes" -a "x$have_favourite_contacts" != "xyes"; then
+ AC_MSG_ERROR([Couldn't find favourite contacts dependencies.])
+fi
+
+AM_CONDITIONAL(HAVE_FAVOURITE_CONTACTS, test "x$have_telepathy_logger" = "xyes")
+AC_SUBST(FAVOURITE_CONTACTS_CFLAGS)
+AC_SUBST(FAVOURITE_CONTACTS_LIBS)
+
# -----------------------------------------------------------
# nautilus-sendto
# -----------------------------------------------------------
Location awareness (Geoclue): ${have_geoclue}
Adium themes (Webkit).......: ${have_webkit}
Meego widgets ..............: ${have_meego}
+ Favourite contacts .........: ${have_favourite_contacts}
Control center embedding....: ${have_control_center_embedding}
Logging:
$(LIBNOTIFY_CFLAGS) \
$(ENCHANT_CFLAGS) \
$(LIBCHAMPLAIN_CFLAGS) \
+ $(FAVOURITE_CONTACTS_CFLAGS) \
$(GEOCLUE_CFLAGS) \
$(MEEGO_CFLAGS) \
$(WEBKIT_CFLAGS) \
$(TPL_LIBS) \
$(ENCHANT_LIBS) \
$(LIBCHAMPLAIN_LIBS) \
+ $(FAVOURITE_CONTACTS_LIBS) \
$(GEOCLUE_LIBS) \
$(MEEGO_LIBS) \
$(WEBKIT_LIBS) \
EMPATHY_CONTACT_LIST_STORE_COL_IS_SEPARATOR, TRUE,
-1);
+#if HAVE_FAVOURITE_CONTACTS
/* add a second separator for the favourite contacts group, to
* always be sorted at the end. This will provide a visual
* distinction between the end of the favourites and the
EMPATHY_CONTACT_LIST_STORE_COL_IS_SEPARATOR, TRUE,
-1);
}
+#endif /* HAVE_FAVOURITE_CONTACTS */
if (iter_separator_to_set) {
*iter_separator_to_set = iter_separator;
/* Separator, favourites group, or other group? */
if (is_separator_a || is_separator_b) {
if (is_separator_a) {
+#if HAVE_FAVOURITE_CONTACTS
/* sort the special favourites group 2nd separator at
* the end */
if (!g_strcmp0 (name_a, EMPATHY_GROUP_FAVOURITES)) {
} else {
ret_val = -1;
}
+#else
+ ret_val = -1;
+#endif /* HAVE_FAVOURITE_CONTACTS */
} else if (is_separator_b) {
+#if HAVE_FAVOURITE_CONTACTS
if (!g_strcmp0 (name_b, EMPATHY_GROUP_FAVOURITES)) {
ret_val = -1;
} else {
ret_val = 1;
}
+#else
+ ret_val = 1;
+#endif /* HAVE_FAVOURITE_CONTACTS */
}
+#if HAVE_FAVOURITE_CONTACTS
} else if (!contact_a && !g_strcmp0 (name_a,
EMPATHY_GROUP_FAVOURITES)) {
ret_val = -1;
} else if (!contact_b && !g_strcmp0 (name_b,
EMPATHY_GROUP_FAVOURITES)) {
ret_val = 1;
+#endif /* HAVE_FAVOURITE_CONTACTS */
} else if (!contact_a && contact_b) {
ret_val = 1;
} else if (contact_a && !contact_b) {
if (is_separator_a || is_separator_b) {
if (is_separator_a) {
+#if HAVE_FAVOURITE_CONTACTS
/* sort the special favourites group 2nd separator at
* the end */
if (!g_strcmp0 (name_a, EMPATHY_GROUP_FAVOURITES)) {
} else {
ret_val = -1;
}
+#else
+ ret_val = -1;
+#endif /* HAVE_FAVOURITE_CONTACTS */
} else if (is_separator_b) {
+#if HAVE_FAVOURITE_CONTACTS
if (!g_strcmp0 (name_b, EMPATHY_GROUP_FAVOURITES)) {
ret_val = -1;
} else {
ret_val = 1;
}
+#else
+ ret_val = 1;
+#endif /* HAVE_FAVOURITE_CONTACTS */
}
+#if HAVE_FAVOURITE_CONTACTS
} else if (!contact_a && !g_strcmp0 (name_a,
EMPATHY_GROUP_FAVOURITES)) {
ret_val = -1;
} else if (!contact_b && !g_strcmp0 (name_b,
EMPATHY_GROUP_FAVOURITES)) {
ret_val = 1;
+#endif /* HAVE_FAVOURITE_CONTACTS */
} else if (!contact_a && contact_b) {
ret_val = 1;
} else if (contact_a && !contact_b) {
g_object_unref (contact);
}
+#if HAVE_FAVOURITE_CONTACTS
static void
contact_list_view_favourite_toggled_cb (
EmpathyCellRendererActivatable *cell,
g_object_unref (contact);
}
+#endif /* HAVE_FAVOURITE_CONTACTS */
static void
contact_list_view_cell_set_background (EmpathyContactListView *view,
EMPATHY_CONTACT_LIST_STORE_COL_NAME, &name,
-1);
+#if HAVE_FAVOURITE_CONTACTS
if (is_group && !g_strcmp0 (name, EMPATHY_GROUP_FAVOURITES)) {
g_free (name);
name = g_strdup (_(EMPATHY_GROUP_FAVOURITES));
}
+#endif /* HAVE_FAVOURITE_CONTACTS */
g_object_set (cell,
"show-status", show_status,
contact_list_view_cell_set_background (view, cell, is_group, is_active);
}
+#if HAVE_FAVOURITE_CONTACTS
static void
contact_list_view_favourite_cell_data_func (
GtkTreeViewColumn *tree_column,
contact_list_view_cell_set_background (view, cell, is_group, is_active);
}
+#endif /* HAVE_FAVOURITE_CONTACTS */
static void
contact_list_view_row_expand_or_collapse_cb (EmpathyContactListView *view,
col = gtk_tree_view_column_new ();
+#if HAVE_FAVOURITE_CONTACTS
/* Favourite Icon */
cell = empathy_cell_renderer_activatable_new ();
gtk_tree_view_column_pack_start (col, cell, FALSE);
g_signal_connect (cell, "path-activated",
G_CALLBACK (contact_list_view_favourite_toggled_cb),
view);
+#endif
/* State */
cell = gtk_cell_renderer_pixbuf_new ();
-DG_LOG_DOMAIN=\"empathy\" \
$(TPL_CFLAGS) \
$(LIBEMPATHY_CFLAGS) \
+ $(FAVOURITE_CONTACTS_CFLAGS) \
$(GEOCLUE_CFLAGS) \
$(NETWORK_MANAGER_CFLAGS) \
$(CONNMAN_CFLAGS) \
libempathy_la_LIBADD = \
$(top_builddir)/extensions/libemp-extensions.la \
$(LIBEMPATHY_LIBS) \
+ $(FAVOURITE_CONTACTS_LIBS) \
$(GEOCLUE_LIBS) \
$(TPL_LIBS) \
$(NETWORK_MANAGER_LIBS) \
empathy_contact_list_contact_is_favourite (EmpathyContactList *list,
EmpathyContact *contact)
{
+#if HAVE_FAVOURITE_CONTACTS
GList *groups, *l;
groups = empathy_contact_list_get_groups (list, contact);
for (l = groups; l; l = l->next)
if (!g_strcmp0 (l->data, EMPATHY_GROUP_FAVOURITES))
return TRUE;
+#endif /* HAVE_FAVOURITE_CONTACTS */
return FALSE;
}