summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSeungyoun Ju <sy39.ju@samsung.com>2013-04-09 18:09:57 +0900
committerSeungyoun Ju <sy39.ju@samsung.com>2013-04-09 18:11:32 +0900
commit0d5a600308767351099d7e45bca03ba9ffd3b3b7 (patch)
treea0165cd39e94c714cb812a6ff29885a7fa648e1d /src
parent1d9a2cd447d6ff02091001c9f4d525937ed30e81 (diff)
downloadug-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.c4
-rw-r--r--src/mh_func_onoff.c18
-rw-r--r--src/mh_view_main.c165
-rw-r--r--src/mh_view_wifi_setup.c12
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(&current_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__;