From 26fdda4fd1fe049fa3a9ec09bde612b253e7c991 Mon Sep 17 00:00:00 2001
From: Tristan Matthews <tristan.matthews@savoirfairelinux.com>
Date: Wed, 7 Nov 2012 14:32:55 -0500
Subject: [PATCH] * #17184: daemon should have no mention of the addressbook

Address books are client specific.
---
 daemon/src/config/yamlparser.cpp              |  8 --
 daemon/src/config/yamlparser.h                |  3 -
 .../dbus/configurationmanager-introspec.xml   | 26 -------
 daemon/src/dbus/configurationmanager.cpp      | 19 -----
 daemon/src/dbus/configurationmanager.h        |  6 --
 daemon/src/managerimpl.cpp                    | 39 +---------
 daemon/src/managerimpl.h                      | 26 -------
 daemon/src/preferences.cpp                    | 54 --------------
 daemon/src/preferences.h                      | 73 -------------------
 daemon/test/sflphoned-sample.yml              |  8 --
 gnome/src/config/addressbook-config.c         | 32 ++------
 gnome/src/contacts/addressbook.h              |  4 +-
 gnome/src/contacts/searchbar.c                | 17 +----
 .../dbus/configurationmanager-introspec.xml   | 32 ++------
 gnome/src/dbus/dbus.c                         | 38 ----------
 gnome/src/dbus/dbus.h                         | 16 ----
 plugins/addressbook/evolution/addressbook.c   | 21 +-----
 plugins/addressbook/evolution/addressbook.h   |  4 +-
 plugins/addressbook/evolution/eds.c           |  2 +-
 19 files changed, 24 insertions(+), 404 deletions(-)

diff --git a/daemon/src/config/yamlparser.cpp b/daemon/src/config/yamlparser.cpp
index aea67fb690..f69643a206 100644
--- a/daemon/src/config/yamlparser.cpp
+++ b/daemon/src/config/yamlparser.cpp
@@ -48,7 +48,6 @@ YamlParser::YamlParser(FILE *fd) : fd_(fd)
     , eventIndex_(0)
     , accountSequence_(NULL)
     , preferenceNode_(NULL)
-    , addressbookNode_(NULL)
     , audioNode_(NULL)
 #ifdef SFL_VIDEO
     , videoNode_(NULL)
@@ -85,12 +84,6 @@ YamlParser::getPreferenceNode()
     CHECK_AND_RETURN(preferenceNode_);
 }
 
-MappingNode *
-YamlParser::getAddressbookNode()
-{
-    CHECK_AND_RETURN(addressbookNode_);
-}
-
 MappingNode *
 YamlParser::getAudioNode()
 {
@@ -413,7 +406,6 @@ void YamlParser::mainNativeDataMapping(MappingNode *map)
     std::map<std::string, YamlNode*> &mapping = map->getMapping();
 
     accountSequence_    = static_cast<SequenceNode*>(mapping["accounts"]);
-    addressbookNode_    = static_cast<MappingNode *>(mapping["addressbook"]);
     audioNode_          = static_cast<MappingNode *>(mapping["audio"]);
 #ifdef SFL_VIDEO
     videoNode_          = static_cast<MappingNode *>(mapping["video"]);
diff --git a/daemon/src/config/yamlparser.h b/daemon/src/config/yamlparser.h
index 73f4b0442b..e0b26cd75c 100644
--- a/daemon/src/config/yamlparser.h
+++ b/daemon/src/config/yamlparser.h
@@ -73,8 +73,6 @@ class YamlParser {
 
         MappingNode *getPreferenceNode();
 
-        MappingNode *getAddressbookNode();
-
         MappingNode *getAudioNode();
 
 #ifdef SFL_VIDEO
@@ -132,7 +130,6 @@ class YamlParser {
 
         SequenceNode *accountSequence_;
         MappingNode *preferenceNode_;
-        MappingNode *addressbookNode_;
         MappingNode *audioNode_;
 #ifdef SFL_VIDEO
         MappingNode *videoNode_;
diff --git a/daemon/src/dbus/configurationmanager-introspec.xml b/daemon/src/dbus/configurationmanager-introspec.xml
index a632474986..bb94d171d5 100644
--- a/daemon/src/dbus/configurationmanager-introspec.xml
+++ b/daemon/src/dbus/configurationmanager-introspec.xml
@@ -416,32 +416,6 @@
            </arg>
        </method>
 
-       <!-- Addressbook configuration -->
-       <method name="getAddressbookSettings" tp:name-for-bindings="getAddressbookSettings">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringInt"/>
-           <arg type="a{si}" name="settings" direction="out">
-           </arg>
-       </method>
-
-       <method name="setAddressbookSettings" tp:name-for-bindings="setAddressbookSettings">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringInt"/>
-           <arg type="a{si}" name="settings" direction="in">
-           </arg>
-       </method>
-
-       <!-- Addressbook list -->
-       <method name="getAddressbookList" tp:name-for-bindings="getAddressbookList">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-           <arg type="as" name="settings" direction="out">
-           </arg>
-       </method>
-
-       <method name="setAddressbookList" tp:name-for-bindings="setAddressbookList">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="VectorString"/>
-           <arg type="as" name="settings" direction="in">
-           </arg>
-       </method>
-
        <!-- Hook configuration -->
        <method name="getHookSettings" tp:name-for-bindings="getHookSettings">
            <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
diff --git a/daemon/src/dbus/configurationmanager.cpp b/daemon/src/dbus/configurationmanager.cpp
index 02f6d571ce..bf22dd8fca 100644
--- a/daemon/src/dbus/configurationmanager.cpp
+++ b/daemon/src/dbus/configurationmanager.cpp
@@ -420,25 +420,6 @@ int32_t ConfigurationManager::getMailNotify()
     return Manager::instance().getMailNotify();
 }
 
-std::map<std::string, int32_t> ConfigurationManager::getAddressbookSettings()
-{
-    return Manager::instance().getAddressbookSettings();
-}
-
-void ConfigurationManager::setAddressbookSettings(const std::map<std::string, int32_t>& settings)
-{
-    Manager::instance().setAddressbookSettings(settings);
-}
-
-std::vector<std::string> ConfigurationManager::getAddressbookList()
-{
-    return Manager::instance().getAddressbookList();
-}
-
-void ConfigurationManager::setAddressbookList(const std::vector<std::string>& list)
-{
-    Manager::instance().setAddressbookList(list);
-}
 
 std::map<std::string, std::string> ConfigurationManager::getHookSettings()
 {
diff --git a/daemon/src/dbus/configurationmanager.h b/daemon/src/dbus/configurationmanager.h
index ee55a1221a..4260541e78 100644
--- a/daemon/src/dbus/configurationmanager.h
+++ b/daemon/src/dbus/configurationmanager.h
@@ -115,12 +115,6 @@ class ConfigurationManager
         int32_t getMailNotify();
         void setMailNotify();
 
-
-        std::map<std::string, int32_t> getAddressbookSettings();
-        void setAddressbookSettings(const std::map<std::string, int32_t>& settings);
-        std::vector< std::string > getAddressbookList();
-        void setAddressbookList(const std::vector< std::string >& list);
-
         void setAccountsOrder(const std::string& order);
 
         std::map<std::string, std::string> getHookSettings();
diff --git a/daemon/src/managerimpl.cpp b/daemon/src/managerimpl.cpp
index 3fea396299..faddf561a0 100644
--- a/daemon/src/managerimpl.cpp
+++ b/daemon/src/managerimpl.cpp
@@ -84,7 +84,7 @@
 #include <sys/stat.h>  // mkdir(2)
 
 ManagerImpl::ManagerImpl() :
-    preferences(), voipPreferences(), addressbookPreference(),
+    preferences(), voipPreferences(),
     hookPreference(),  audioPreference(), shortcutPreferences(),
     hasTriedToRegister_(false), audioCodecFactory(), dbus_(), config_(),
     currentCallId_(), currentCallMutex_(), audiodriver_(0), dtmfKey_(),
@@ -1282,7 +1282,6 @@ void ManagerImpl::saveConfig()
 
         preferences.serialize(emitter);
         voipPreferences.serialize(emitter);
-        addressbookPreference.serialize(emitter);
         hookPreference.serialize(emitter);
         audioPreference.serialize(emitter);
 #ifdef SFL_VIDEO
@@ -2653,7 +2652,6 @@ void ManagerImpl::loadAccountMap(Conf::YamlParser &parser)
     // build preferences
     preferences.unserialize(*parser.getPreferenceNode());
     voipPreferences.unserialize(*parser.getVoipPreferenceNode());
-    addressbookPreference.unserialize(*parser.getAddressbookNode());
     hookPreference.unserialize(*parser.getHookNode());
     audioPreference.unserialize(*parser.getAudioNode());
     shortcutPreferences.unserialize(*parser.getShortcutNode());
@@ -2774,41 +2772,6 @@ ManagerImpl::getAllAccounts() const
 }
 
 
-std::map<std::string, int32_t> ManagerImpl::getAddressbookSettings() const
-{
-    std::map<std::string, int32_t> settings;
-
-    settings["ADDRESSBOOK_ENABLE"] = addressbookPreference.getEnabled();
-    settings["ADDRESSBOOK_MAX_RESULTS"] = addressbookPreference.getMaxResults();
-    settings["ADDRESSBOOK_DISPLAY_CONTACT_PHOTO"] = addressbookPreference.getPhoto();
-    settings["ADDRESSBOOK_DISPLAY_PHONE_BUSINESS"] = addressbookPreference.getBusiness();
-    settings["ADDRESSBOOK_DISPLAY_PHONE_HOME"] = addressbookPreference.getHome();
-    settings["ADDRESSBOOK_DISPLAY_PHONE_MOBILE"] = addressbookPreference.getMobile();
-
-    return settings;
-}
-
-void ManagerImpl::setAddressbookSettings(const std::map<std::string, int32_t>& settings)
-{
-    addressbookPreference.setEnabled(settings.find("ADDRESSBOOK_ENABLE")->second == 1);
-    addressbookPreference.setMaxResults(settings.find("ADDRESSBOOK_MAX_RESULTS")->second);
-    addressbookPreference.setPhoto(settings.find("ADDRESSBOOK_DISPLAY_CONTACT_PHOTO")->second == 1);
-    addressbookPreference.setBusiness(settings.find("ADDRESSBOOK_DISPLAY_PHONE_BUSINESS")->second == 1);
-    addressbookPreference.setHone(settings.find("ADDRESSBOOK_DISPLAY_PHONE_HOME")->second == 1);
-    addressbookPreference.setMobile(settings.find("ADDRESSBOOK_DISPLAY_PHONE_MOBILE")->second == 1);
-}
-
-void ManagerImpl::setAddressbookList(const std::vector<std::string>& list)
-{
-    addressbookPreference.setList(ManagerImpl::join_string(list));
-    saveConfig();
-}
-
-std::vector<std::string> ManagerImpl::getAddressbookList() const
-{
-    return split_string(addressbookPreference.getList());
-}
-
 void ManagerImpl::setIPToIPForCall(const std::string& callID, bool IPToIP)
 {
     if (not isIPToIP(callID)) // no IPToIP calls with the same ID
diff --git a/daemon/src/managerimpl.h b/daemon/src/managerimpl.h
index 0bbf3bc302..ea00f01cb6 100644
--- a/daemon/src/managerimpl.h
+++ b/daemon/src/managerimpl.h
@@ -111,11 +111,6 @@ class ManagerImpl {
          */
         VoipPreference voipPreferences;
 
-        /**
-         * Addressbook related preferences
-         */
-        AddressbookPreference addressbookPreference;
-
         /**
          * Hook preferences
          */
@@ -681,27 +676,6 @@ class ManagerImpl {
          */
         void setMailNotify();
 
-
-        /**
-         * Addressbook configuration
-         */
-        std::map<std::string, int32_t> getAddressbookSettings() const;
-
-        /**
-         * Addressbook configuration
-         */
-        void setAddressbookSettings(const std::map<std::string, int32_t>& settings);
-
-        /**
-         * Addressbook list
-         */
-        void setAddressbookList(const std::vector<  std::string >& list);
-
-        /**
-         * Addressbook list
-         */
-        std::vector <std::string> getAddressbookList() const;
-
         /**
          * Get the audio manager
          * @return int The audio manager
diff --git a/daemon/src/preferences.cpp b/daemon/src/preferences.cpp
index e5b9cb8d97..c68b2c1301 100644
--- a/daemon/src/preferences.cpp
+++ b/daemon/src/preferences.cpp
@@ -69,15 +69,6 @@ static const char * const PULSE_LENGTH_KEY = "pulseLength";
 static const char * const SYMMETRIC_RTP_KEY = "symmetric";
 static const char * const ZID_FILE_KEY = "zidFile";
 
-// addressbook preferences
-static const char * const PHOTO_KEY = "photo";
-static const char * const ENABLED_KEY = "enabled";
-static const char * const LIST_KEY = "list";
-static const char * const MAX_RESULTS_KEY = "maxResults";
-static const char * const BUSINESS_KEY = "business";
-static const char * const HOME_KEY = "home";
-static const char * const MOBILE_KEY = "mobile";
-
 // hooks preferences
 static const char * const IAX2_ENABLED_KEY = "iax2Enabled";
 static const char * const NUMBER_ADD_PREFIX_KEY = "numberAddPrefix";
@@ -224,51 +215,6 @@ void VoipPreference::unserialize(const Conf::YamlNode &map)
     map.getValue(ZID_FILE_KEY, &zidFile_);
 }
 
-AddressbookPreference::AddressbookPreference() : photo_(true)
-    , enabled_(true)
-    , list_("")
-    , maxResults_(25)
-    , business_(true)
-    , home_(true)
-    , mobile_(true)
-{}
-
-void AddressbookPreference::serialize(Conf::YamlEmitter &emitter)
-{
-    Conf::MappingNode preferencemap(NULL);
-
-    Conf::ScalarNode photo(photo_);
-    Conf::ScalarNode enabled(enabled_);
-    Conf::ScalarNode list(list_);
-    std::stringstream maxresultstr;
-    maxresultstr << maxResults_;
-    Conf::ScalarNode maxResults(maxresultstr.str());
-    Conf::ScalarNode business(business_);
-    Conf::ScalarNode home(home_);
-    Conf::ScalarNode mobile(mobile_);
-
-    preferencemap.setKeyValue(PHOTO_KEY, &photo);
-    preferencemap.setKeyValue(ENABLED_KEY, &enabled);
-    preferencemap.setKeyValue(LIST_KEY, &list);
-    preferencemap.setKeyValue(MAX_RESULTS_KEY, &maxResults);
-    preferencemap.setKeyValue(BUSINESS_KEY, &business);
-    preferencemap.setKeyValue(HOME_KEY, &home);
-    preferencemap.setKeyValue(MOBILE_KEY, &mobile);
-
-    emitter.serializePreference(&preferencemap, "addressbook");
-}
-
-void AddressbookPreference::unserialize(const Conf::YamlNode &map)
-{
-    map.getValue(PHOTO_KEY, &photo_);
-    map.getValue(ENABLED_KEY, &enabled_);
-    map.getValue(LIST_KEY, &list_);
-    map.getValue(MAX_RESULTS_KEY, &maxResults_);
-    map.getValue(BUSINESS_KEY, &business_);
-    map.getValue(HOME_KEY, &home_);
-    map.getValue(MOBILE_KEY, &mobile_);
-}
-
 HookPreference::HookPreference() :
     iax2Enabled_(false)
     , numberAddPrefix_("")
diff --git a/daemon/src/preferences.h b/daemon/src/preferences.h
index 3151b36a75..51f67926e7 100644
--- a/daemon/src/preferences.h
+++ b/daemon/src/preferences.h
@@ -192,79 +192,6 @@ class VoipPreference : public Serializable {
         std::string zidFile_;
 };
 
-class AddressbookPreference : public Serializable {
-    public:
-        AddressbookPreference();
-
-        virtual void serialize(Conf::YamlEmitter &emitter);
-        virtual void unserialize(const Conf::YamlNode &map);
-
-        bool getPhoto() const {
-            return photo_;
-        }
-
-        void setPhoto(bool p) {
-            photo_ = p;
-        }
-
-        bool getEnabled() const {
-            return enabled_;
-        }
-
-        void setEnabled(bool e) {
-            enabled_ = e;
-        }
-
-        std::string getList() const {
-            return list_;
-        }
-
-        void setList(const std::string &l) {
-            list_ = l;
-        }
-
-        int getMaxResults() const {
-            return maxResults_;
-        }
-
-        void setMaxResults(int r) {
-            maxResults_ = r;
-        }
-
-        bool getBusiness() const {
-            return business_;
-        }
-
-        void setBusiness(bool b) {
-            business_ = b;
-        }
-
-        bool getHome() const {
-            return home_;
-        }
-        void setHone(bool h) {
-            home_ = h;
-        }
-
-        bool getMobile() const {
-            return mobile_;
-        }
-        void setMobile(bool m) {
-            mobile_ = m;
-        }
-
-    private:
-
-        bool photo_;
-        bool enabled_;
-        std::string list_;
-        int maxResults_;
-        bool business_;
-        bool home_;
-        bool mobile_;
-};
-
-
 class pjsip_msg;
 
 class HookPreference : public Serializable {
diff --git a/daemon/test/sflphoned-sample.yml b/daemon/test/sflphoned-sample.yml
index 711f05c559..7a26859331 100644
--- a/daemon/test/sflphoned-sample.yml
+++ b/daemon/test/sflphoned-sample.yml
@@ -119,14 +119,6 @@ voipPreferences:
   pulseLength: 250
   symmetric: true
   zidFile: true
-addressbook:
-  business: true
-  enabled: true
-  home: true
-  list:
-  maxResults: 25
-  mobile: true
-  photo: true
 hooks:
   iax2Enabled: false
   numberAddPrefix:
diff --git a/gnome/src/config/addressbook-config.c b/gnome/src/config/addressbook-config.c
index b390a4ae5a..a75860719e 100644
--- a/gnome/src/config/addressbook-config.c
+++ b/gnome/src/config/addressbook-config.c
@@ -68,21 +68,7 @@ AddressBook_Config *addressbook_config_load_parameters()
         .search_phone_mobile = 1,
     };
 
-    static AddressBook_Config config;
-
-    GHashTable *params = dbus_get_addressbook_settings();
-
-    if (params) {
-        config.enable = (size_t)(g_hash_table_lookup(params, ADDRESSBOOK_ENABLE));
-        config.max_results = (size_t)(g_hash_table_lookup(params, ADDRESSBOOK_MAX_RESULTS));
-        config.display_contact_photo = (size_t)(g_hash_table_lookup(params, ADDRESSBOOK_DISPLAY_CONTACT_PHOTO));
-        config.search_phone_business = (size_t)(g_hash_table_lookup(params, ADDRESSBOOK_DISPLAY_PHONE_BUSINESS));
-        config.search_phone_home = (size_t)(g_hash_table_lookup(params, ADDRESSBOOK_DISPLAY_PHONE_HOME));
-        config.search_phone_mobile = (size_t)(g_hash_table_lookup(params, ADDRESSBOOK_DISPLAY_PHONE_MOBILE));
-    } else
-        config = defconfig;
-
-    return &config;
+    return &defconfig;
 }
 
 void
@@ -105,8 +91,6 @@ addressbook_config_save_parameters(void)
     g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_MOBILE,
                          (gpointer)(size_t) addressbook_config->search_phone_mobile);
 
-    dbus_set_addressbook_settings(params);
-
     update_searchbar_addressbook_list();
 
     // Decrement the reference count
@@ -274,9 +258,6 @@ addressbook_config_book_active_toggled(
         list[i] = g_ptr_array_index(array, i);
     g_ptr_array_free(array, TRUE);
 
-    // Call daemon to store in config file
-    dbus_set_addressbook_list(list);
-
     // free the list, but not its elements as they live in the tree model
     g_free(list);
 }
@@ -288,21 +269,18 @@ addressbook_config_fill_book_list()
     GSList *book_list_iterator;
     GtkListStore *store;
     book_data_t *book_data;
-    gchar **book_list;
 
     if (!addrbook)
         return;
 
-    book_list = dbus_get_addressbook_list();
-    GSList *books_data = addrbook->get_books_data(book_list);
+    GSList *books_data = addrbook->get_books_data();
 
-    if (!books_data) {
-        DEBUG("No valid books data (%s:%d)", __FILE__, __LINE__);
-    }
+    if (!books_data)
+        DEBUG("No valid books data");
 
     // Get model of view and clear it
     if (!(store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(book_tree_view))))) {
-        DEBUG("Could not find model from treeview (%s:%d)", __FILE__, __LINE__);
+        DEBUG("Could not find model from treeview");
         return;
     }
 
diff --git a/gnome/src/contacts/addressbook.h b/gnome/src/contacts/addressbook.h
index 0d3b0ab6a8..692e4dde02 100644
--- a/gnome/src/contacts/addressbook.h
+++ b/gnome/src/contacts/addressbook.h
@@ -78,11 +78,11 @@ typedef struct _AddressBook_Config {
 typedef struct AddrBookHandle AddrBookHandle;
 
 struct AddrBookHandle {
-    void (*init) (gchar **);
+    void (*init) ();
     gboolean (*is_ready) (void);
     gboolean (*is_active) (void);
     void (*search) (void (*search_cb)(GList *, gpointer), GtkEntry *, AddressBook_Config *);
-    GSList *(*get_books_data)(gchar **);
+    GSList *(*get_books_data)();
     book_data_t *(*get_book_data_by_uid)(gchar *);
     void (*set_current_book)(gchar *);
     void (*set_search_type)(AddrbookSearchType);
diff --git a/gnome/src/contacts/searchbar.c b/gnome/src/contacts/searchbar.c
index aa2acada4f..6b11640b0b 100644
--- a/gnome/src/contacts/searchbar.c
+++ b/gnome/src/contacts/searchbar.c
@@ -113,10 +113,8 @@ void update_searchbar_addressbook_list()
     book_data_t *book_data;
     GSList *books_data = NULL;
 
-    gchar **book_names = dbus_get_addressbook_list();
-
-    if (addrbook && g_strv_length(book_names) > 0)
-        books_data = addrbook->get_books_data(book_names);
+    if (addrbook)
+        books_data = addrbook->get_books_data();
 
     if (books_data == NULL) {
         ERROR("Searchbar: No books data found");
@@ -366,17 +364,11 @@ GtkWidget* contacts_searchbar_new()
     if (!addrbook)
         return NULL;
 
-    gchar **book_list = dbus_get_addressbook_list();
-    if (g_strv_length(book_list) == 0) {
-        DEBUG("Address book list is empty");
-        return NULL;
-    }
-
-    addrbook->init(book_list);
+    addrbook->init();
 
     GSList *book_list_iterator;
     book_data_t *book_data;
-    GSList *books_data = addrbook->get_books_data(book_list);
+    GSList *books_data = addrbook->get_books_data();
 
     // Populate menu
     int count = 0;
@@ -457,7 +449,6 @@ GtkWidget* contacts_searchbar_new()
     gtk_box_pack_start(GTK_BOX(ret), addressbookentry, TRUE, TRUE, 0);
 
     g_free(tooltip_text);
-    g_strfreev(book_list);
 
     return ret;
 }
diff --git a/gnome/src/dbus/configurationmanager-introspec.xml b/gnome/src/dbus/configurationmanager-introspec.xml
index 7efc7a85f8..bb94d171d5 100644
--- a/gnome/src/dbus/configurationmanager-introspec.xml
+++ b/gnome/src/dbus/configurationmanager-introspec.xml
@@ -6,6 +6,12 @@
             Used to handle the configuration stuff: accounts settings, account registration, user preferences, ...
         </tp:docstring>
 
+        <method name="getAccountTemplate" tp:name-for-bindings="getAccountTemplate">
+            <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
+            <arg type="a{ss}" name="details" direction="out" tp:type="String_String_Map">
+            </arg>
+        </method>
+
         <method name="getAccountDetails" tp:name-for-bindings="getAccountDetails">
             <tp:docstring>
                 Get all parameters of the specified account.
@@ -410,32 +416,6 @@
            </arg>
        </method>
 
-       <!-- Addressbook configuration -->
-       <method name="getAddressbookSettings" tp:name-for-bindings="getAddressbookSettings">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringInt"/>
-           <arg type="a{si}" name="settings" direction="out">
-           </arg>
-       </method>
-
-       <method name="setAddressbookSettings" tp:name-for-bindings="setAddressbookSettings">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="MapStringInt"/>
-           <arg type="a{si}" name="settings" direction="in">
-           </arg>
-       </method>
-
-       <!-- Addressbook list -->
-       <method name="getAddressbookList" tp:name-for-bindings="getAddressbookList">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="VectorString"/>
-           <arg type="as" name="settings" direction="out">
-           </arg>
-       </method>
-
-       <method name="setAddressbookList" tp:name-for-bindings="setAddressbookList">
-           <annotation name="com.trolltech.QtDBus.QtTypeName.In0" value="VectorString"/>
-           <arg type="as" name="settings" direction="in">
-           </arg>
-       </method>
-
        <!-- Hook configuration -->
        <method name="getHookSettings" tp:name-for-bindings="getHookSettings">
            <annotation name="com.trolltech.QtDBus.QtTypeName.Out0" value="MapStringString"/>
diff --git a/gnome/src/dbus/dbus.c b/gnome/src/dbus/dbus.c
index 34c6acbc59..a4bf9e0a71 100644
--- a/gnome/src/dbus/dbus.c
+++ b/gnome/src/dbus/dbus.c
@@ -1793,44 +1793,6 @@ dbus_get_video_device_rate_list(const gchar *dev, const gchar *channel, const gc
 }
 #endif
 
-GHashTable *
-dbus_get_addressbook_settings(void)
-{
-    GError *error = NULL;
-    GHashTable *results = NULL;
-    org_sflphone_SFLphone_ConfigurationManager_get_addressbook_settings(config_proxy, &results, &error);
-    check_error(error);
-
-    return results;
-}
-
-void
-dbus_set_addressbook_settings(GHashTable *settings)
-{
-    GError *error = NULL;
-    org_sflphone_SFLphone_ConfigurationManager_set_addressbook_settings(config_proxy, settings, &error);
-    check_error(error);
-}
-
-gchar **
-dbus_get_addressbook_list(void)
-{
-    GError *error = NULL;
-    gchar **array = NULL;
-    org_sflphone_SFLphone_ConfigurationManager_get_addressbook_list(config_proxy, &array, &error);
-    check_error(error);
-
-    return array;
-}
-
-void
-dbus_set_addressbook_list(const gchar **list)
-{
-    GError *error = NULL;
-    org_sflphone_SFLphone_ConfigurationManager_set_addressbook_list(config_proxy, list, &error);
-
-    check_error(error);
-}
 
 GHashTable *
 dbus_get_hook_settings(void)
diff --git a/gnome/src/dbus/dbus.h b/gnome/src/dbus/dbus.h
index b97e127ab3..7e332f77aa 100644
--- a/gnome/src/dbus/dbus.h
+++ b/gnome/src/dbus/dbus.h
@@ -468,22 +468,6 @@ void dbus_set_is_always_recording(gboolean);
  */
 gboolean dbus_get_is_always_recording(void);
 
-/**
- * Encapsulate all the address book-related configuration
- * Get the configuration
- */
-GHashTable* dbus_get_addressbook_settings(void);
-
-/**
- * Encapsulate all the address book-related configuration
- * Set the configuration
- */
-void dbus_set_addressbook_settings(GHashTable *);
-
-gchar **dbus_get_addressbook_list(void);
-
-void dbus_set_addressbook_list(const gchar **list);
-
 /**
  * Resolve the local address given an interface name
  */
diff --git a/plugins/addressbook/evolution/addressbook.c b/plugins/addressbook/evolution/addressbook.c
index 197c6102af..986190dafc 100644
--- a/plugins/addressbook/evolution/addressbook.c
+++ b/plugins/addressbook/evolution/addressbook.c
@@ -63,26 +63,12 @@ addressbook_is_active()
     return books_active();
 }
 
-/**
- * Get active addressbook from config.
- */
-static void
-addressbook_config_books(gchar **book_list)
-{
-    for (gchar **book = book_list; book && *book; book++) {
-        book_data_t *book_data = books_get_book_data_by_uid(*book);
-        if (book_data)
-            book_data->active = TRUE;
-    }
-}
-
 /**
  * Good method to get books_data
  */
 GSList *
-addressbook_get_books_data(gchar **book_list)
+addressbook_get_books_data()
 {
-    addressbook_config_books(book_list);
     determine_default_addressbook();
 
     return get_books_data();
@@ -91,7 +77,7 @@ addressbook_get_books_data(gchar **book_list)
 book_data_t *
 addressbook_get_book_data_by_uid(gchar *uid)
 {
-    return books_get_book_data_by_uid (uid);
+    return books_get_book_data_by_uid(uid);
 }
 
 /**
@@ -99,10 +85,9 @@ addressbook_get_book_data_by_uid(gchar *uid)
  * Set active/inactive status depending on config.
  */
 void
-addressbook_init(gchar **book_list)
+addressbook_init()
 {
     fill_books_data();
-    addressbook_config_books(book_list);
     determine_default_addressbook();
 
     // Call books initialization
diff --git a/plugins/addressbook/evolution/addressbook.h b/plugins/addressbook/evolution/addressbook.h
index 89732b2871..84c82f86c7 100644
--- a/plugins/addressbook/evolution/addressbook.h
+++ b/plugins/addressbook/evolution/addressbook.h
@@ -90,7 +90,7 @@ typedef struct _AddressBook_Config {
 /**
  * Initialize addressbook
  */
-void addressbook_init(gchar **book_list);
+void addressbook_init();
 
 /**
  * Return addressbook state
@@ -116,7 +116,7 @@ void addressbook_search(void (*search_cb)(GList *, gpointer), GtkEntry *, Addres
 /**
  * Get a list of addressbook book
  */
-GSList *addressbook_get_books_data(gchar **book_list);
+GSList *addressbook_get_books_data();
 
 book_data_t *addressbook_get_book_data_by_uid(gchar *);
 
diff --git a/plugins/addressbook/evolution/eds.c b/plugins/addressbook/evolution/eds.c
index e6e54a11a3..a7d992ab3a 100644
--- a/plugins/addressbook/evolution/eds.c
+++ b/plugins/addressbook/evolution/eds.c
@@ -380,7 +380,7 @@ static book_data_t *
 create_book_data_from_source(ESource *source, ESourceGroup *group)
 {
     book_data_t *book_data = g_new0(book_data_t, 1);
-    book_data->active = FALSE;
+    book_data->active = TRUE;
     book_data->name = g_strdup(e_source_peek_name(source));
     book_data->uid = g_strdup(e_source_peek_uid(source));
 
-- 
GitLab