diff options
author | Seungyoun Ju <sy39.ju@samsung.com> | 2013-04-09 18:09:57 +0900 |
---|---|---|
committer | Seungyoun Ju <sy39.ju@samsung.com> | 2013-04-09 18:11:32 +0900 |
commit | 0d5a600308767351099d7e45bca03ba9ffd3b3b7 (patch) | |
tree | a0165cd39e94c714cb812a6ff29885a7fa648e1d /src | |
parent | 1d9a2cd447d6ff02091001c9f4d525937ed30e81 (diff) | |
download | ug-mobile-ap-0d5a600308767351099d7e45bca03ba9ffd3b3b7.tar.gz ug-mobile-ap-0d5a600308767351099d7e45bca03ba9ffd3b3b7.tar.bz2 ug-mobile-ap-0d5a600308767351099d7e45bca03ba9ffd3b3b7.zip |
Below changes are applied
- Maximum connection information is displayed
- Implement connection timer
- UX Change : Data usage and Connected device
- Change ug name & Support appsvc
- Translation data is updated
Change-Id: I1f9303e23e4650df2f864b23f6d6306a654e1347
Diffstat (limited to 'src')
-rw-r--r-- | src/mh_common_utility.c | 4 | ||||
-rw-r--r-- | src/mh_func_onoff.c | 18 | ||||
-rw-r--r-- | src/mh_view_main.c | 165 | ||||
-rw-r--r-- | src/mh_view_wifi_setup.c | 12 |
4 files changed, 142 insertions, 57 deletions
diff --git a/src/mh_common_utility.c b/src/mh_common_utility.c index b39eea2..d1a4969 100644 --- a/src/mh_common_utility.c +++ b/src/mh_common_utility.c @@ -325,14 +325,14 @@ Eina_Bool _create_popup(mh_appdata_t *ad) btn = elm_button_add(ad->popup); elm_object_style_set(btn, "popup_button/default"); - elm_object_text_set(btn, S_("IDS_COM_SK_YES")); + elm_object_text_set(btn, S_("IDS_COM_SK_OK")); elm_object_part_content_set(ad->popup, "button1", btn); evas_object_smart_callback_add(btn, "clicked", __popup_resp_yes, (void *)ad); btn = elm_button_add(ad->popup); elm_object_style_set(btn, "popup_button/default"); - elm_object_text_set(btn, S_("IDS_COM_SK_NO")); + elm_object_text_set(btn, S_("IDS_COM_SK_CANCEL")); elm_object_part_content_set(ad->popup, "button2", btn); evas_object_smart_callback_add(btn, "clicked", __popup_resp_no, (void *)ad); diff --git a/src/mh_func_onoff.c b/src/mh_func_onoff.c index 118f9a4..20f74cc 100644 --- a/src/mh_func_onoff.c +++ b/src/mh_func_onoff.c @@ -17,6 +17,7 @@ * */ +#include <stdlib.h> #include <wifi-direct.h> #include "mh_func_onoff.h" @@ -139,15 +140,21 @@ static bool __is_connected_cellular_net(mh_appdata_t *ad) static int __create_wifi_hotspot_on_popup(mh_appdata_t *ad) { + char *fmt; char *str; bool wifi_state = false; wifi_is_activated(&wifi_state); if (wifi_state == true || _is_wifi_direct_on() == true) - str = _("IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"); + fmt = _("IDS_ST_BODY_WI_FI_NETWORK_WILL_BE_DISCONNECTED_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_THE_MAXIMUM_NUMBER_OF_TETHERED_DEVICES_ALLOWED_IS_PD"); else - str = _("IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"); + fmt = _("IDS_ST_BODY_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_THE_MAXIMUM_NUMBER_OF_TETHERED_DEVICES_ALLOWED_IS_PD"); + + str = malloc(MH_LABEL_LENGTH_MAX); + snprintf(str, MH_LABEL_LENGTH_MAX, fmt, TETHERING_WIFI_MAX_CONNECTED_STA); _prepare_popup(MH_POP_WIFI_ON_CONF, str); + free(str); + _create_popup(ad); return 0; @@ -157,8 +164,13 @@ static int __create_bt_tethering_on_popup(mh_appdata_t *ad) { char *str; - str = _("IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"); + str = malloc(MH_LABEL_LENGTH_MAX); + snprintf(str, MH_LABEL_LENGTH_MAX, + _("IDS_ST_BODY_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_THE_MAXIMUM_NUMBER_OF_TETHERED_DEVICES_ALLOWED_IS_PD"), + TETHERING_BT_MAX_CONNECTED_STA); _prepare_popup(MH_POP_BT_ON_CONF, str); + free(str); + _create_popup(ad); return 0; diff --git a/src/mh_view_main.c b/src/mh_view_main.c index badd2b9..37c31b3 100644 --- a/src/mh_view_main.c +++ b/src/mh_view_main.c @@ -17,6 +17,7 @@ * */ +#include <time.h> #include "mh_view_main.h" static void _gl_device_item_sel(void *data, Evas_Object *obj, void *event_info); @@ -124,9 +125,11 @@ static void __genlist_update_device_item(mh_appdata_t *ad, int no_of_dev) itc, ad, NULL, ad->main.usage_item, item_flags, _gl_device_item_sel, NULL); if (item == NULL) { - ERR("elm_genlist_item_insert_before is failed\n"); + ERR("elm_genlist_item_insert_before is failed.\n"); return; } + elm_object_item_signal_emit(item, "elm,state,top", ""); + ad->main.device_item = item; if (no_of_dev == 0) { @@ -184,6 +187,11 @@ Eina_Bool ap_update_data_packet_usage(mh_appdata_t *ad) return EINA_FALSE; } + if (ad->main.usage_item == NULL) { + DBG("usage_item is removed\n"); + return EINA_TRUE; + } + elm_genlist_item_update(ad->main.usage_item); return EINA_TRUE; @@ -410,8 +418,6 @@ void _update_main_view(mh_appdata_t *ad) ad->main.hotspot_mode = _get_vconf_hotspot_mode(); state = ad->main.hotspot_mode; - ap_update_data_device(ad); - wifi_state = (Eina_Bool)(state & VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI); bt_state = (Eina_Bool)(state & VCONFKEY_MOBILE_HOTSPOT_MODE_BT); usb_state = (Eina_Bool)(state & VCONFKEY_MOBILE_HOTSPOT_MODE_USB); @@ -440,7 +446,34 @@ void _update_main_view(mh_appdata_t *ad) } if (wifi_state || bt_state || usb_state) { + if (ad->main.usage_item == NULL) { + item = elm_genlist_item_insert_before(ad->main.genlist, + ad->main.usage_itc, ad, NULL, + ad->main.sp_item[3], + ELM_GENLIST_ITEM_NONE, NULL, NULL); + elm_genlist_item_select_mode_set(item, + ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); + ad->main.usage_item = item; + } + + if (ad->main.device_item == NULL) { + ap_update_data_device(ad); + } + _start_update_data_packet_usage(ad); + } else { + _stop_update_data_packet_usage(ad); + + if (ad->main.device_item) { + elm_genlist_item_subitems_clear(ad->main.device_item); + elm_object_item_del(ad->main.device_item); + ad->main.device_item = NULL; + } + + if (ad->main.usage_item) { + elm_object_item_del(ad->main.usage_item); + ad->main.usage_item = NULL; + } } if (wifi_state || bt_state) { @@ -672,7 +705,7 @@ static void __back_btn_cb(void *data, Evas_Object *obj, void *event_info) static char *__get_wifi_label(void *data, Evas_Object *obj, const char *part) { if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -690,7 +723,7 @@ static Evas_Object *__get_wifi_icon(void *data, Evas_Object *obj, } if (strcmp(part, "elm.icon") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -737,7 +770,7 @@ static char *__get_setup_label(void *data, Evas_Object *obj, const char *part) } if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -747,7 +780,7 @@ static char *__get_setup_label(void *data, Evas_Object *obj, const char *part) static char *__get_bt_label(void *data, Evas_Object *obj, const char *part) { if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -763,7 +796,7 @@ static Evas_Object *__get_bt_icon(void *data, Evas_Object *obj, const char *part Evas_Object *progressbar = NULL; if (strcmp(part, "elm.icon") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -809,7 +842,7 @@ static Evas_Object *__get_bt_icon(void *data, Evas_Object *obj, const char *part static char *__get_usb_label(void *data, Evas_Object *obj, const char *part) { if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -826,7 +859,7 @@ static Evas_Object *__get_usb_icon(void *data, Evas_Object *obj, Evas_Object *progressbar = NULL; if (strcmp(part, "elm.icon") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -882,7 +915,7 @@ static char *__get_help_label(void *data, Evas_Object *obj, const char *part) int wifi_state = VCONFKEY_MOBILE_HOTSPOT_MODE_NONE; if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param : %s\n", part); + DBG("Unknown part : %s\n", part); return NULL; } @@ -947,7 +980,7 @@ static char *__get_connected_device_label(void *data, Evas_Object *obj, const char *part) { if (strcmp(part, "elm.text.1") != 0 && strcmp(part, "elm.text.2") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -977,7 +1010,7 @@ static char *__get_usage_label(void *data, Evas_Object *obj, const char *part) } if (strcmp(part, "elm.text.1") != 0 && strcmp(part, "elm.text.2") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -1026,6 +1059,37 @@ static char *__get_usage_label(void *data, Evas_Object *obj, const char *part) return strdup(label); } +static char *__get_diff_time(time_t connection_time) +{ + time_t current_time; + char buf[MH_LABEL_LENGTH_MAX] = {0, }; + int day; + int hour; + int min; + int sec; + double diff; + + time(¤t_time); + diff = difftime(current_time, connection_time); + day = diff / (60 * 60 * 24); + diff = diff - (day * 60 * 60 * 24); + hour = diff / (60 * 60); + diff = diff - (hour * 60 * 60); + min = diff / 60; + diff = diff - (min * 60); + sec = diff; + + if (day > 0) + hour = hour + day * 24; + + if (hour > 0) + snprintf(buf, sizeof(buf), "%02d : %02d : %02d", hour, min, sec); + else + snprintf(buf, sizeof(buf), "%02d : %02d", min, sec); + + return g_strdup(buf); +} + static char *__gl_get_dev_label(void *data, Evas_Object *obj, const char *part) { if (data == NULL || part == NULL) { @@ -1035,8 +1099,9 @@ static char *__gl_get_dev_label(void *data, Evas_Object *obj, const char *part) tethering_client_h client = (tethering_client_h)data; char *name = NULL; + time_t tm; - if (!strcmp(part, "elm.text")) { + if (!strcmp(part, "elm.text.1")) { tethering_client_get_name(client, &name); DBG("Device name : %s\n", name); @@ -1045,6 +1110,9 @@ static char *__gl_get_dev_label(void *data, Evas_Object *obj, const char *part) } return name; + } else if (!strcmp(part, "elm.text.2")) { + tethering_client_get_time(client, &tm); + return __get_diff_time(tm); } return NULL; @@ -1241,24 +1309,21 @@ static void __set_genlist_itc(mh_appdata_t *ad) ad->main.usage_itc->func.del = NULL; ad->main.dev_itc[TETHERING_TYPE_WIFI] = elm_genlist_item_class_new(); - ad->main.dev_itc[TETHERING_TYPE_WIFI]->item_style = - "dialogue/1text.1icon/expandable2"; + ad->main.dev_itc[TETHERING_TYPE_WIFI]->item_style = "dialogue/2text.1icon.2"; ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.text_get = __gl_get_dev_label; ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.content_get = __gl_get_dev_wifi_icon; ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.state_get = NULL; ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.del = NULL; ad->main.dev_itc[TETHERING_TYPE_USB] = elm_genlist_item_class_new(); - ad->main.dev_itc[TETHERING_TYPE_USB]->item_style = - "dialogue/1text.1icon/expandable2"; + ad->main.dev_itc[TETHERING_TYPE_USB]->item_style = "dialogue/2text.1icon.2"; ad->main.dev_itc[TETHERING_TYPE_USB]->func.text_get = __gl_get_dev_label; ad->main.dev_itc[TETHERING_TYPE_USB]->func.content_get = __gl_get_dev_usb_icon; ad->main.dev_itc[TETHERING_TYPE_USB]->func.state_get = NULL; ad->main.dev_itc[TETHERING_TYPE_USB]->func.del = NULL; ad->main.dev_itc[TETHERING_TYPE_BT] = elm_genlist_item_class_new(); - ad->main.dev_itc[TETHERING_TYPE_BT]->item_style = - "dialogue/1text.1icon/expandable2"; + ad->main.dev_itc[TETHERING_TYPE_BT]->item_style = "dialogue/2text.1icon.2"; ad->main.dev_itc[TETHERING_TYPE_BT]->func.text_get = __gl_get_dev_label; ad->main.dev_itc[TETHERING_TYPE_BT]->func.content_get = __gl_get_dev_bt_icon; ad->main.dev_itc[TETHERING_TYPE_BT]->func.state_get = NULL; @@ -1270,6 +1335,11 @@ static void __set_genlist_itc(mh_appdata_t *ad) static void __gl_realized(void *data, Evas_Object *obj, void *event_info) { + if (data == NULL || event_info == NULL) { + ERR("Invalid param\n"); + return; + } + mh_appdata_t *ad = (mh_appdata_t *)data; Elm_Object_Item *item = (Elm_Object_Item *)event_info; Evas_Object *ao; @@ -1277,37 +1347,40 @@ static void __gl_realized(void *data, Evas_Object *obj, void *event_info) char str[MH_LABEL_LENGTH_MAX] = {0, }; int i = 0; - if (item == ad->main.wifi_item || item == ad->main.bt_item || item == ad->main.device_item) - elm_object_item_signal_emit(item, "elm,state,top", ""); - else if (item == ad->main.setup_item || item == ad->main.usage_item || item == ad->main.usb_item) - elm_object_item_signal_emit(item, "elm,state,bottom", ""); - - for (i = 0; i < 4; i++) { - if (item == ad->main.sp_item[i]) - elm_object_item_access_unregister(item); - } - if (item == ad->main.wifi_item || item == ad->main.bt_item || item == ad->main.usb_item) { ao = elm_object_item_access_object_get(item); btn = elm_object_item_part_content_get(item, "on&off"); snprintf(str, sizeof(str), "%s, %s", "On/off button", (elm_check_state_get(btn) ? "On" : "Off")); elm_access_info_set(ao, ELM_ACCESS_CONTEXT_INFO, str); + + if (item == ad->main.wifi_item || item == ad->main.bt_item) { + elm_object_item_signal_emit(item, "elm,state,top", ""); + } else if (item == ad->main.usb_item) { + elm_object_item_signal_emit(item, "elm,state,bottom", ""); + } } else if (item == ad->main.setup_item) { ao = elm_object_item_access_object_get(item); elm_access_info_set(ao, ELM_ACCESS_CONTEXT_INFO, "Item"); + + elm_object_item_signal_emit(item, "elm,state,bottom", ""); + } else if (item == ad->main.usage_item) { + elm_object_item_signal_emit(item, "elm,state,bottom", ""); } else if (item == ad->main.device_item) { ao = elm_object_item_access_object_get(item); snprintf(str, sizeof(str), "%s, %s", "Expandable list", "Double tap to open list"); elm_access_info_set(ao, ELM_ACCESS_CONTEXT_INFO, str); - } - if (ad->main.device_item == elm_genlist_item_parent_get(item)) { - if (ad->clients.number == elm_genlist_item_index_get(item) - 9) - elm_object_item_signal_emit(item, "elm,state,bottom", ""); - else - elm_object_item_signal_emit(item, "elm,state,center", ""); + elm_object_item_signal_emit(item, "elm,state,top", ""); + } else if (ad->main.device_item != NULL && + ad->main.device_item == elm_genlist_item_parent_get(item)) { + elm_object_item_signal_emit(item, "elm,state,center", ""); + } else { + for (i = 0; i < 4; i++) { + if (item == ad->main.sp_item[i]) + elm_object_item_access_unregister(item); + } } return; @@ -1321,9 +1394,6 @@ static void __create_inner_contents(mh_appdata_t *ad) int i = 0; __read_setting(ad); - if (ad->main.hotspot_mode != VCONFKEY_MOBILE_HOTSPOT_MODE_NONE) - _start_update_data_packet_usage(ad); - ad->main.genlist = elm_genlist_add(ad->naviframe); elm_genlist_mode_set(ad->main.genlist, ELM_LIST_COMPRESS); evas_object_smart_callback_add(ad->main.genlist, "realized", __gl_realized, ad); @@ -1378,13 +1448,18 @@ static void __create_inner_contents(mh_appdata_t *ad) elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); ad->main.sp_item[i++] = item; - item = elm_genlist_item_append(ad->main.genlist, ad->main.usage_itc, - ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); - elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); - ad->main.usage_item = item; + if (ad->main.hotspot_mode != VCONFKEY_MOBILE_HOTSPOT_MODE_NONE) { + item = elm_genlist_item_append(ad->main.genlist, ad->main.usage_itc, + ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); + elm_genlist_item_select_mode_set(item, + ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); + ad->main.usage_item = item; - /* Insert "Connected devices" item */ - ap_update_data_device(ad); + /* Insert "Connected devices" item */ + ap_update_data_device(ad); + + _start_update_data_packet_usage(ad); + } item = elm_genlist_item_append(ad->main.genlist, ad->main.end_sp_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); diff --git a/src/mh_view_wifi_setup.c b/src/mh_view_wifi_setup.c index a9ed253..457543f 100644 --- a/src/mh_view_wifi_setup.c +++ b/src/mh_view_wifi_setup.c @@ -114,7 +114,7 @@ static char *__gl_hide_label_get(void *data, Evas_Object *obj, const char *part) } if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -132,7 +132,7 @@ static char *__gl_security_label_get(void *data, Evas_Object *obj, const char *p } if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -150,7 +150,7 @@ static char *__gl_name_label_get(void *data, Evas_Object *obj, const char *part) } if (strcmp(part, "elm.text") != 0) { - ERR("Invalid param : %s\n", part); + DBG("Unknown part : %s\n", part); return NULL; } @@ -196,7 +196,7 @@ static Evas_Object *__gl_hide_icon_get(void *data, Evas_Object *obj, } if (strcmp(part, "elm.icon") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -215,7 +215,6 @@ static Evas_Object *__gl_hide_icon_get(void *data, Evas_Object *obj, elm_check_state_set(btn, ad->setup.visibility ? EINA_FALSE : EINA_TRUE); evas_object_smart_callback_add(btn, "changed", __hide_btn_changed_cb, (void *)ad); - ad->setup.hide_btn = btn; __MOBILE_AP_FUNC_EXIT__; @@ -233,7 +232,7 @@ static Evas_Object *__gl_security_icon_get(void *data, Evas_Object *obj, } if (strcmp(part, "elm.icon") != 0) { - ERR("Invalid param\n"); + DBG("Unknown part : %s\n", part); return NULL; } @@ -251,7 +250,6 @@ static Evas_Object *__gl_security_icon_get(void *data, Evas_Object *obj, EINA_FALSE : EINA_TRUE); evas_object_smart_callback_add(btn, "changed", __security_btn_changed_cb, (void *)ad); - ad->setup.security_btn = btn; __MOBILE_AP_FUNC_EXIT__; |