[folks] Include required Telepathy Connection ContactInfo features.



commit 978c4d71d2136ff08e0aac4aae422e0c85a023db
Author: Travis Reitter <travis reitter collabora co uk>
Date:   Thu Oct 6 15:00:46 2011 -0700

    Include required Telepathy Connection ContactInfo features.
    
    These are required to look up the connection's ContactInfoFlags.Can_Set
    and SupportedFields. We need both to determine which ContactInfo fields
    are writeable (for Tpf.Persona.writeable_properties).

 backends/telepathy/lib/tpf-persona-store.vala |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)
---
diff --git a/backends/telepathy/lib/tpf-persona-store.vala b/backends/telepathy/lib/tpf-persona-store.vala
index 3f8c6ce..20b315f 100644
--- a/backends/telepathy/lib/tpf-persona-store.vala
+++ b/backends/telepathy/lib/tpf-persona-store.vala
@@ -62,6 +62,12 @@ public class Tpf.PersonaStore : Folks.PersonaStore
         ContactFeature.CONTACT_INFO
       };
 
+  private static GLib.Quark[] _connection_features =
+      {
+        TelepathyGLib.Connection.get_feature_quark_contact_info (),
+        0
+      };
+
   private const string[] _always_writeable_properties =
     {
       "is-favourite"
@@ -581,12 +587,13 @@ public class Tpf.PersonaStore : Folks.PersonaStore
                   this._logger = null;
                 }
 
-              /* Ensure the account's prepared first. */
-              yield this.account.prepare_async (null);
-
               this.account.notify["connection"].connect (
                   this._notify_connection_cb);
 
+              /* Ensure the connection is prepared as necessary. */
+              yield this.account.connection.prepare_async (
+                  this._connection_features);
+
               /* immediately handle accounts which are not currently being
                * disconnected */
               if (this.account.connection != null)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]