summaryrefslogtreecommitdiff
path: root/src/contacts-store.vala
diff options
context:
space:
mode:
authorErick Pérez Castellanos <erick.red@gmail.com>2013-08-04 12:04:39 -0400
committerErick Pérez Castellanos <erick.red@gmail.com>2013-08-09 08:59:27 -0400
commit4cdd94011fa672c582ec5fcd19272f00f1554dcc (patch)
treeb7c4b914751f5756bc3782de9c5a9cf6942459a4 /src/contacts-store.vala
parentb1b9eb20bc19c2c611c68eeac7499d80a2faca2b (diff)
downloadgnome-contacts-4cdd94011fa672c582ec5fcd19272f00f1554dcc.tar.gz
ContactsStore: add eds backend changes notification
Added ContactsStore:eds_persona_store_changed signal to notify of a change in the eds backend
Diffstat (limited to 'src/contacts-store.vala')
-rw-r--r--src/contacts-store.vala13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/contacts-store.vala b/src/contacts-store.vala
index 6f51913..108b795 100644
--- a/src/contacts-store.vala
+++ b/src/contacts-store.vala
@@ -28,6 +28,8 @@ public class Contacts.Store : GLib.Object {
public signal void quiescent ();
public signal void prepared ();
+ public signal void eds_persona_store_changed ();
+
public IndividualAggregator aggregator { get; private set; }
public BackendStore backend_store { get; private set; }
Gee.ArrayList<Contact> contacts;
@@ -141,6 +143,17 @@ public class Contacts.Store : GLib.Object {
read_dont_suggest_db ();
backend_store = BackendStore.dup ();
+ backend_store.backend_available.connect ((backend) => {
+ if (backend.name == "eds") {
+ backend.persona_store_added.connect (() => {
+ eds_persona_store_changed ();
+ });
+ backend.persona_store_removed.connect (() => {
+ eds_persona_store_changed ();
+ });
+ }
+ });
+
aggregator = new IndividualAggregator ();
aggregator.notify["is-quiescent"].connect ( (obj, pspec) => {
// We seem to get this before individuals_changed, so hack around it