+
+ if (priv->n_contacts > 0) {
+ gtk_widget_hide (GTK_WIDGET (priv->label));
+ gtk_widget_show (GTK_WIDGET (priv->view));
+ } else {
+ gtk_widget_show (GTK_WIDGET (priv->label));
+ gtk_widget_hide (GTK_WIDGET (priv->view));
+ }
+}
+
+static GList *
+get_all_contacts (EBook *ebook)
+{
+ GError *error = NULL;
+ EBookQuery *query;
+ GList *contacts;
+
+ ebook = e_book_new_system_addressbook (&error);
+ if (!ebook) {
+ g_warning ("Error opening system address book: %s", error->message);
+ g_error_free (error);
+ return NULL;
+ }
+
+ if (!e_book_open (ebook, TRUE, &error)) {
+ g_warning ("Error opening system address book: %s", error->message);
+ g_error_free (error);
+ return NULL;
+ }
+
+ query = e_book_query_any_field_contains ("");
+
+ if (!e_book_get_contacts (ebook, query, &contacts, &error)) {
+ g_warning ("Error getting contacts: %s", error->message);
+ g_error_free (error);
+ return NULL;
+ }
+
+ return contacts;