fixed bug of app-control that didn't work with font-size
authorMyoungJune Park <mj2004.park@samsung.com>
Wed, 29 Aug 2012 04:26:07 +0000 (13:26 +0900)
committerMyoungJune Park <mj2004.park@samsung.com>
Wed, 29 Aug 2012 04:26:07 +0000 (13:26 +0900)
com.samsung.setting.xml
packaging/settings.spec
resource/ug-setting-font-efl.xml
setting-font/include/setting-font.h
setting-font/src/setting-font-font-size.c
setting-font/src/setting-font-main.c
setting-font/src/setting-font.c

index 1efbf7b..5f80614 100644 (file)
        </ui-application>
        <ui-application appid="setting-font-efl" exec="/opt/ug/bin/setting-font-efl" type="capp" nodisplay="true" taskmanage="false">
                        <icon>ug-setting-font-efl.png</icon>
-                       <label>Setting Font Type Panel</label>
-                       <label xml:lang="en-us">Setting Font Type Panel</label>
+                       <label>Setting Font Type and Size Panel</label>
+                       <label xml:lang="en-us">Setting Font Type and Size Panel</label>
        </ui-application>
-    <ui-application appid="setting-accessibility-efl" exec="/opt/ug/bin/setting-accessibility-efl" type="capp" nodisplay="true" taskmanage="false">
-            <icon>ug-setting-accessibility-efl.png</icon>
-            <label>Setting Font Size Panel</label>
-            <label xml:lang="en-us">Setting Font Size panel</label>
-    </ui-application>
 </manifest>
 
index 6f61d12..2262bb5 100755 (executable)
@@ -416,7 +416,7 @@ sync
 
 mkdir -p /opt/ug/bin/
 ln -sf /usr/bin/ug-client /opt/ug/bin/setting-font-efl
-ln -sf /usr/bin/ug-client /opt/ug/bin/setting-accessibility-efl
+ln -sf /usr/bin/ug-client /opt/ug/bin/setting-accessibility-efl
 
 %files -n settings
 %manifest settings.manifest
index ce7e413..a2ed34f 100644 (file)
@@ -3,7 +3,7 @@
         <label>setting-font-efl</label>
         <author email="mj2004.park@samsung.com" href="www.samsung.com">MyoungJune Park</author>
         <description>Setting Font Panel</description>
-        <ui-application appid="setting-font-efl" exec="/opt/ug/bin/setting-font-efl">
+       <ui-application appid="setting-font-efl" exec="/opt/ug/bin/setting-font-efl" type="capp" nodisplay="true" taskmanage="false">
                 <icon>ug-setting-font-efl.png</icon>
                 <label>Setting Font Type Panel</label>
                 <label xml:lang="en-us">Setting Font Type Panel</label>
index 8d6d1c8..8492348 100755 (executable)
@@ -35,6 +35,7 @@ typedef enum
 {
        FONT_SIZE_AND_FONT_SEL_UG,
        FONT_SEL_VIEW_APPCONTROL,
+       FONT_SIZE_VIEW_APPCONTROL,
 }FontUGViewMode;
 
 
@@ -70,9 +71,12 @@ struct _SettingFontUG {
        Setting_GenGroupItem_Data *font_type;
        Setting_GenGroupItem_Data *font_size;
 
+       // font type
        int prev_font;
        char *font_name;
 
+       int *ret_font_size;
+
        FontUGViewMode viewmode;
 
        // Font Size & Sel
index 4f95376..bb1571d 100644 (file)
@@ -228,7 +228,6 @@ static void __font_size_ask_reboot_resp_cb(void *data, Evas_Object * obj,
        int err = -1;
        int ret = -1;
        if (POPUP_RESPONSE_OK == response_type) {
-               //set_font_dpi(list_item->chk_status);
                ret = setting_set_int_slp_key(INT_SLP_SETTING_ACCESSIBILITY_FONT_SIZE, list_item->chk_status, &err);
                setting_retm_if(ret == -1, "Failed to set vconf");
 
index aa2b713..9eba3d2 100755 (executable)
@@ -157,50 +157,51 @@ static void __setting_font_main_genlist_item_create(void *data)
 
        SettingFontUG *ad = (SettingFontUG *)data;
        Elm_Object_Item *item = NULL;
-       item = elm_genlist_item_append(ad->genlist, &(ad->itc_seperator), NULL, NULL,
-                               ELM_GENLIST_ITEM_NONE, NULL, NULL);
-       elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       char *font_type_name = NULL;
-       font_type_name = cur_font_get();
-
-       ad->font_type = setting_create_Gendial_exp_parent_field(ad->genlist,
-                                                   &(ad->itc_2text_3_parent),
-                                                   NULL, NULL,
-                                                   SWALLOW_Type_INVALID,
-                                                   SETTING_FONT_TYPE_STR,
-                                                   font_type_name);
-       if (ad->font_type) {
-               ad->font_type->userdata = ad;
-       } else {
-               SETTING_TRACE_ERROR("ad->font_type is NULL");
-       }
-       G_FREE(ad->font_name);
-       ad->font_name = g_strdup(font_type_name);
-       G_FREE(font_type_name);
 
-       if (ad->viewmode == FONT_SEL_VIEW_APPCONTROL)
-               return;
-       //--------------------------------------------------------------------
-
-       // [UI] Font Size
-       int value = -1;
-       int err = -1;
-       int ret = setting_get_int_slp_key(INT_SLP_SETTING_ACCESSIBILITY_FONT_SIZE, &value, &err);
-       if (ret != 0) {
-               SETTING_TRACE_ERROR("get vconf failed");
+       if (ad->viewmode == FONT_SIZE_AND_FONT_SEL_UG || ad->viewmode == FONT_SEL_VIEW_APPCONTROL)              // font type only
+       {
+               // [UI] Font Type
+               item = elm_genlist_item_append(ad->genlist, &(ad->itc_seperator), NULL, NULL,
+                                       ELM_GENLIST_ITEM_NONE, NULL, NULL);
+               elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+               char *font_type_name = NULL;
+               font_type_name = cur_font_get();
+
+               ad->font_type = setting_create_Gendial_exp_parent_field(ad->genlist,
+                                                               &(ad->itc_2text_3_parent),
+                                                               NULL, NULL,
+                                                               SWALLOW_Type_INVALID,
+                                                               SETTING_FONT_TYPE_STR,
+                                                               font_type_name);
+               if (ad->font_type) {
+                       ad->font_type->userdata = ad;
+               } else {
+                       SETTING_TRACE_ERROR("ad->font_type is NULL");
+               }
+               G_FREE(ad->font_name);
+               ad->font_name = g_strdup(font_type_name);
+               G_FREE(font_type_name);
        }
 
-       ad->font_size = setting_create_Gendial_field_def(ad->genlist, &(ad->itc_2text_2),
-                               __setting_font_main_genlist_sel_cb,
-                               ad, SWALLOW_Type_INVALID, NULL,
-                               NULL, value, SETTING_FONT_SIZE_STR,
-                               __setting_font_main_get_font_size(value), NULL);
-       if (ad->font_size) {
-               ad->font_size->userdata = ad;
-       } else {
-               SETTING_TRACE_ERROR("ad->font_size is NULL");
-       }
+       if (ad->viewmode == FONT_SIZE_AND_FONT_SEL_UG || ad->viewmode == FONT_SIZE_VIEW_APPCONTROL)             // font size only
+       {
+               int err = -1;
+               // [UI] Font Size
+               int ret = setting_get_int_slp_key(INT_SLP_SETTING_ACCESSIBILITY_FONT_SIZE, &ad->ret_font_size, &err);
+               if (ret != 0) {
+                       SETTING_TRACE_ERROR("get vconf failed");
+               }
+
+               ad->font_size = setting_create_Gendial_field_def(ad->genlist, &(ad->itc_2text_2),
+                                       __setting_font_main_genlist_sel_cb,
+                                       ad, SWALLOW_Type_INVALID, NULL,
+                                       NULL, ad->ret_font_size, SETTING_FONT_SIZE_STR,
+                                       __setting_font_main_get_font_size(ad->ret_font_size), NULL);
+               if (ad->font_size) {
+                       ad->font_size->userdata = ad;
+               } else {
+                       SETTING_TRACE_ERROR("ad->font_size is NULL");
+               }
 
 #if DISABlED_CODE
        setting_create_Gendial_field_def(ad->genlist, &(ad->itc_bg_1icon), NULL,
@@ -208,6 +209,7 @@ static void __setting_font_main_genlist_item_create(void *data)
                                         NULL, NULL, 0, SETTING_FONT_SIZE_DESC, NULL,
                                         NULL);
 #endif
+       }
 }
 
 
@@ -497,7 +499,25 @@ static void __setting_font_main_click_softkey_back_cb(void *data, Evas_Object *o
                ug_send_result(ad->ug, svc);
                service_destroy(svc);
        }
+       else if (ad->viewmode == FONT_SIZE_VIEW_APPCONTROL)
+       {
+               service_h svc;
+               if (service_create(&svc))
+                       return;
+
+               int err;
+               int ret = setting_set_int_slp_key(INT_SLP_SETTING_ACCESSIBILITY_FONT_SIZE, &ad->ret_font_size, &err);
 
+               service_add_extra_data(svc, "category", "FontSize");
+               service_add_extra_data(svc, "FontSize", ad->ret_font_size);
+
+               SETTING_TRACE(" SERVICE_ADD_EXTRA : %s %s","category", "FontSize");
+               SETTING_TRACE(" SERVICE_ADD_EXTRA : %s %s","FontSize", ad->ret_font_size);
+
+
+               ug_send_result(ad->ug, svc);
+               service_destroy(svc);
+       }
        /* Send destroy request */
        ug_destroy_me(ad->ug);
 }
index d4073ca..c8f7d72 100755 (executable)
@@ -43,6 +43,7 @@ setting_view *__get_font_view_to_load(void *data,service_h service)
                return &setting_view_font_main;
        } else if (0 == safeStrCmp(category, "FontSize")) {
                SETTING_TRACE("category = %s", category);
+               fontUG->viewmode = FONT_SIZE_VIEW_APPCONTROL;
                setting_view_node_table_register(&setting_view_font_font_size, NULL);
                return &setting_view_font_font_size;
        }else {