change deprecated API to new
[apps/core/preloaded/settings.git] / setting-fileview / src / setting-fileview-main.c
index 6b2c1a1..77cfb0d 100755 (executable)
@@ -20,6 +20,8 @@
  */
 #include <setting-fileview-main.h>
 
+#define SETTING_FILEVIEW_LEN 20
+
 static int setting_fileview_create(void *cb);
 static int setting_fileview_destroy(void *cb);
 static int setting_fileview_update(void *cb);
@@ -48,34 +50,26 @@ static Eina_Bool __web_on_idle(void *data)
        }
        return FALSE;
 }
-
+#endif
 static void __setting_fileview_policy_navigation_decide(void *data, Evas_Object *webview, void *event_info)
 {
        SETTING_TRACE_BEGIN;
        setting_retm_if(data == NULL, "data is NULL");
        setting_retm_if(event_info == NULL, "event_info is NULL");
 
-       SettingFileviewUG *ad = (SettingFileviewUG *)data;
+       //SettingFileviewUG *ad = (SettingFileviewUG *)data;
 
+       // open url in local window
        Ewk_Policy_Decision *policy_decision = (Ewk_Policy_Decision *)event_info;
-       ewk_policy_decision_ignore(policy_decision);
 
        char *url = (char *)ewk_policy_decision_url_get(policy_decision);
        char *scheme = (char *)ewk_policy_decision_scheme_get(policy_decision);
        SETTING_TRACE("url : %s", url);
        SETTING_TRACE("scheme : %s", scheme);
 
-       int ret = 0;
-       service_h service = NULL;
-       ret = service_create(&service);
-       setting_retm_if(service == NULL, "service is NULL");
-
-       ret = service_set_operation(service, SERVICE_OPERATION_VIEW);
-       ret = service_set_uri(service, url);
-       ret = service_send_launch_request(service, NULL, NULL);
-       ret = service_destroy(service);
+       /* if not launch broswer, do not call ewk_policy_decision_ignore */
+       //ewk_policy_decision_ignore(policy_decision);
 }
-#endif
 
 static int setting_fileview_create(void *cb)
 {
@@ -96,20 +90,25 @@ static int setting_fileview_create(void *cb)
                                        NULL, ad, &scroller,
                                        &(ad->navi_bar));
 
-       //Evas *evas = evas_object_evas_get(ad->win_get);
-       //Evas_Object *webview = ewk_view_add(evas);
-       //ad->webkit = webview;
+       Evas *evas = evas_object_evas_get(ad->win_get);
+       Evas_Object *webview = ewk_view_add(evas);
+       ad->webkit = webview;
 
        SETTING_TRACE("ad->input_file:%s", ad->input_file);
-       //ewk_view_uri_set(ad->webkit, ad->input_file);
+       ewk_view_url_set(webview, ad->input_file);
 
        elm_scroller_bounce_set(scroller, EINA_FALSE, EINA_FALSE);
 
-       //elm_object_content_set(scroller, ad->webkit);
-       //evas_object_show(ad->webkit);
+       elm_object_content_set(scroller, webview);
+       evas_object_show(webview);
        //ecore_idler_add(__web_on_idle, ad);
 
-       //evas_object_smart_callback_add(ad->webkit, "policy,navigation,decide", __setting_fileview_policy_navigation_decide, ad);
+       evas_object_smart_callback_add(webview, "policy,navigation,decide", __setting_fileview_policy_navigation_decide, ad);
+
+       service_h svc;
+       if (service_create(&svc)) {
+               return SETTING_RETURN_FAIL;
+       }
 
        setting_view_fileview_main.is_create = 1;
 
@@ -122,12 +121,17 @@ static int setting_fileview_destroy(void *cb)
        SETTING_TRACE_BEGIN;
        retv_if(cb == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
        SettingFileviewUG *ad = (SettingFileviewUG *) cb;
-       //evas_object_smart_callback_del(ad->webkit, "policy,navigation,decide", __setting_fileview_policy_navigation_decide);
+       evas_object_smart_callback_del(ad->webkit, "policy,navigation,decide", __setting_fileview_policy_navigation_decide);
 
-       //if (ad->webkit) {
-       //      evas_object_del(ad->webkit);
-       //      ad->webkit = NULL;
-       //}
+       if (ad->webkit) {
+               evas_object_del(ad->webkit);
+               ad->webkit = NULL;
+       }
+
+       if (ad->progress_bar) {
+               evas_object_del(ad->progress_bar);
+               ad->progress_bar = NULL;
+       }
 
        if (ad->ly_main != NULL) {
                evas_object_del(ad->ly_main);