Use system config before setting autofill service to use autofill manager API 04/196504/3
authorJihoon Kim <jihoon48.kim@samsung.com>
Wed, 2 Jan 2019 02:08:50 +0000 (11:08 +0900)
committerJihoon Kim <jihoon48.kim@samsung.com>
Wed, 2 Jan 2019 02:13:44 +0000 (11:13 +0900)
Change-Id: I79001586f7d31ecaa5c9b615d17870d4efa6f359
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
src/autofill-daemon.c
src/autofill_config.c
src/autofill_config.h

index 5967d6c44b8fd8e17a54b4b9b8e93c33d24f6645..749c287fb4378b52cd4f146843ec5836cb819765 100644 (file)
@@ -636,7 +636,7 @@ static char * __manager_get_autofill_service_cb(rpc_port_stub_AutofillManagerPor
     }
 
     char *app_id = NULL;
-    autofill_config_get_autofill_service_app_id(&app_id);
+    autofill_config_get_autofill_service_app_id(&app_id, NULL);
 
     LOGD("app id : %s", app_id);
 
@@ -717,7 +717,8 @@ static int connect_service()
     }
 
     char *active_autofill_service_id = NULL;
-    autofill_config_get_autofill_service_app_id(&active_autofill_service_id);
+    bool sys_config = false;
+    autofill_config_get_autofill_service_app_id(&active_autofill_service_id, &sys_config);
     LOGD("autofill service : '%s'", active_autofill_service_id);
 
     if (!active_autofill_service_id) {
@@ -725,7 +726,9 @@ static int connect_service()
     }
 
     if (active_autofill_service_id) {
-        autofill_config_set_autofill_service_app_id(active_autofill_service_id);
+        if (!sys_config)
+            autofill_config_set_autofill_service_app_id(active_autofill_service_id);
+
         service_id_len = strlen(active_autofill_service_id);
 
         if (service_id_len > 0) {
index 5430b6051b273405478bcdd4deec2a3917e9537f..778d8266e82b45f2248556b8d27ee06759a25f4a 100644 (file)
@@ -26,7 +26,7 @@
 #define SETTING_ACTIVE_AUTOFILL_SERVICE "ActiveAutofillService"
 #define AUTOFILL_SYSTEM_CONFIG_FILE "/etc/autofill/config"
 
-bool autofill_config_get_autofill_service_app_id(char **app_id)
+bool autofill_config_get_autofill_service_app_id(char **app_id, bool *sys_config)
 {
     char *active_autofill_service_id = NULL;
     FILE *pFile = NULL;
@@ -36,6 +36,9 @@ bool autofill_config_get_autofill_service_app_id(char **app_id)
     bool ret = false;
     char strTemp[1024];
 
+    if (sys_config)
+        *sys_config = false;
+
     if (preference_get_string(SETTING_ACTIVE_AUTOFILL_SERVICE, &active_autofill_service_id) == PREFERENCE_ERROR_NONE) {
         LOGD("preference active autofill service : %s", active_autofill_service_id);
         *app_id = active_autofill_service_id;
@@ -75,6 +78,8 @@ bool autofill_config_get_autofill_service_app_id(char **app_id)
                     if (app_id && value_str) {
                         *app_id = strdup(value_str);
                         ret = true;
+                        if (sys_config)
+                            *sys_config = true;
                     }
 
                     eina_strbuf_free(sb_value);
index 57eb00e21ed66107abf7d4a12639dbb1c1234cdc..4abf71c6bc1d1c675a39a4a380426f59ebc322b4 100644 (file)
@@ -25,7 +25,7 @@
 extern "C" {
 #endif
 
-bool autofill_config_get_autofill_service_app_id(char **app_id);
+bool autofill_config_get_autofill_service_app_id(char **app_id, bool *sys_config);
 bool autofill_config_set_autofill_service_app_id(const char *app_id);
 
 /**