summaryrefslogtreecommitdiff
path: root/src/widget/mf-ug-genlist.c
diff options
context:
space:
mode:
authorgliang.wang <gliang.wang@samsung.com>2013-04-16 15:59:36 +0800
committergliang.wang <gliang.wang@samsung.com>2013-04-16 15:59:36 +0800
commit2980776fcca4b90a6a50cbdd7acfcc7801cb72d9 (patch)
tree84087d6500433d422c33b5ebbf8a5b5a509e1248 /src/widget/mf-ug-genlist.c
parenta957a0a7a609392ae358efedbe368a099ac8c4d8 (diff)
downloadug-myfile-efl-2980776fcca4b90a6a50cbdd7acfcc7801cb72d9.tar.gz
ug-myfile-efl-2980776fcca4b90a6a50cbdd7acfcc7801cb72d9.tar.bz2
ug-myfile-efl-2980776fcca4b90a6a50cbdd7acfcc7801cb72d9.zip
[SR][Nabi-se][Nabi_SEN_SE-32480] Unable to select more then one file for attachment at Email
Change-Id: I9768f095b10eac39a8c6412aacc136df24fe90ce
Diffstat (limited to 'src/widget/mf-ug-genlist.c')
-rw-r--r--src/widget/mf-ug-genlist.c97
1 files changed, 68 insertions, 29 deletions
diff --git a/src/widget/mf-ug-genlist.c b/src/widget/mf-ug-genlist.c
index e57f78a..ffc2482 100644
--- a/src/widget/mf-ug-genlist.c
+++ b/src/widget/mf-ug-genlist.c
@@ -27,6 +27,8 @@
#define MF_UG_SELECTED_ITEM_BRING_UP_COUNT 7
#define MF_UG_SELECTED_ITEM_BRING_UP_COUNT_MAX 8
+
+#define MF_UG_LIST_PLAY_TIME_OUT 0.5
/******************************
** Prototype : __mf_ug_genlist_is_file_marked
** Description : Samsung
@@ -290,6 +292,33 @@ static Evas_Object *__mf_ug_genlist_create_radio_box(Evas_Object *parent, ugList
}
+static bool __mf_ug_list_play_timer_cb(void *data)
+{
+ ugListItemData *item_data = (ugListItemData *)data;
+ ugData *ugd = (ugData *)item_data->ug_pData;
+
+
+ if (ugd->ug_ListPlay.ug_iPlayState == PLAY_STATE_PLAYING || ugd->ug_ListPlay.ug_iPlayState == PLAY_STATE_PAUSED) {
+ if (g_strcmp0(ugd->ug_ListPlay.ug_pPlayFilePath, item_data->ug_pItemName->str) == 0) {
+ mf_ug_list_play_destory_playing_file(ugd);
+ //mf_ug_list_disable_play_itc(ugd, true);
+ //mf_ug_list_play_update_item_icon(ugd);
+ UG_SAFE_FREE_CHAR(ugd->ug_ListPlay.ug_pPlayFilePath);
+ } else {
+ //mf_ug_list_paly_hide_play_icon(ugd);
+ }
+ }
+ mf_ug_cb_list_play_cb(item_data, NULL, NULL);
+ if (elm_radio_value_get(ugd->ug_MainWindow.ug_pRadioGroup) != item_data->ug_iGroupValue) {
+ ugd->ug_Status.ug_iRadioOn = item_data->ug_iGroupValue;
+ item_data->ug_bChecked = true;
+ elm_radio_value_set(ugd->ug_MainWindow.ug_pRadioGroup, item_data->ug_iGroupValue);
+ }
+
+ item_data->ug_pData->ug_Status.play_timer = NULL;
+ return ECORE_CALLBACK_CANCEL;
+
+}
/******************************
** Prototype : __mf_ug_genlist_radio_box_cb
@@ -314,11 +343,26 @@ static void __mf_ug_genlist_radio_box_cb(void *data, Evas_Object *obj, void *eve
UG_TRACE_BEGIN;
ugListItemData *itemData = (ugListItemData *)data;
ug_mf_retm_if(itemData == NULL, "ugListItemData is NULL");
+ ugData *ugd = (ugData *)itemData->ug_pData;
+ ug_mf_retm_if(ugd == NULL, "ugd is NULL");
itemData->ug_bChecked = true;
itemData->ug_pData->ug_Status.ug_iRadioOn = itemData->ug_iGroupValue;
elm_radio_value_set(itemData->ug_pData->ug_MainWindow.ug_pRadioGroup, itemData->ug_iGroupValue);
mf_ug_ctrl_bar_set_item_disable(itemData->ug_pData);
+
+
+ mf_ug_launch_type launch_type = mf_ug_util_get_file_launch_type(itemData->ug_pItemName->str);
+ if (launch_type == LAUNCH_TYPE_MUSIC) {
+ if (ugd->ug_Status.play_timer == NULL) {
+ ug_error(">>>>>>>>>>>>>> entry list play");
+ ugd->ug_Status.play_timer = ecore_timer_add(MF_UG_LIST_PLAY_TIME_OUT, (Ecore_Task_Cb)__mf_ug_list_play_timer_cb, itemData);
+ } else {
+ ug_error(">>>>>>>>>>>>>> Faild entry list play");
+
+ }
+ }
+
UG_TRACE_END;
}
@@ -698,6 +742,7 @@ static Evas_Object *__mf_ug_genlist_get_gl_icon(void *data, Evas_Object *obj, co
} else {
if (ugd->ug_UiGadget.ug_iSelectMode == MULTI_FILE_MODE
|| ugd->ug_UiGadget.ug_iSelectMode == MULTI_ALL_MODE
+ || ugd->ug_UiGadget.ug_iSelectMode == IMPORT_PATH_SELECT_MODE
|| ugd->ug_UiGadget.ug_iSelectMode == IMPORT_MODE) {
selected_box = __mf_ug_genlist_add_checkbox(listItemData, obj);
} else if (ugd->ug_UiGadget.ug_iSelectMode == SINGLE_FILE_MODE
@@ -707,6 +752,7 @@ static Evas_Object *__mf_ug_genlist_get_gl_icon(void *data, Evas_Object *obj, co
selected_box = __mf_ug_genlist_add_radio_box(listItemData, obj);
}
}
+ evas_object_propagate_events_set(selected_box, EINA_FALSE);
return selected_box;
} else if (!strcmp(part, "elm.icon.2")) {
__mf_ug_genlist_get_thumbnail(listItemData);
@@ -870,6 +916,7 @@ static void __mf_ug_genlist_del_gl(void *data, Evas_Object *obj)
** Modification : Created function
**
******************************/
+
void mf_ug_genlist_selected_gl(void *data, Evas_Object *obj, void *event_info)
{
UG_TRACE_BEGIN;
@@ -893,29 +940,25 @@ void mf_ug_genlist_selected_gl(void *data, Evas_Object *obj, void *event_info)
if (ugd->ug_UiGadget.ug_iSelectMode == EXPORT_MODE || ugd->ug_UiGadget.ug_iSelectMode == SAVE_MODE) {
return;
}
-
if (ugd->ug_UiGadget.ug_iSelectMode == SINGLE_FILE_MODE || ugd->ug_UiGadget.ug_iSelectMode == SINGLE_ALL_MODE) {
- if (elm_radio_value_get(ugd->ug_MainWindow.ug_pRadioGroup) != selected->ug_iGroupValue) {
- ugd->ug_Status.ug_iRadioOn = selected->ug_iGroupValue;
- selected->ug_bChecked = true;
- elm_radio_value_set(ugd->ug_MainWindow.ug_pRadioGroup, selected->ug_iGroupValue);
- }
-
mf_ug_launch_type launch_type = mf_ug_util_get_file_launch_type(selected->ug_pItemName->str);
if (launch_type == LAUNCH_TYPE_MUSIC) {
- if (ugd->ug_ListPlay.ug_iPlayState == PLAY_STATE_PLAYING || ugd->ug_ListPlay.ug_iPlayState == PLAY_STATE_PAUSED) {
- if (g_strcmp0(ugd->ug_ListPlay.ug_pPlayFilePath, selected->ug_pItemName->str) == 0) {
- mf_ug_list_play_destory_playing_file(ugd);
- //mf_ug_list_disable_play_itc(ugd, true);
- //mf_ug_list_play_update_item_icon(ugd);
- UG_SAFE_FREE_CHAR(ugd->ug_ListPlay.ug_pPlayFilePath);
- } else {
- //mf_ug_list_paly_hide_play_icon(ugd);
- }
+ if (ugd->ug_Status.play_timer == NULL) {
+ ug_error(">>>>>>>>>>>>>> entry list play");
+ ugd->ug_Status.play_timer = ecore_timer_add(MF_UG_LIST_PLAY_TIME_OUT, (Ecore_Task_Cb)__mf_ug_list_play_timer_cb, selected);
+ } else {
+ ug_error(">>>>>>>>>>>>>> Faild entry list play");
+
+ }
+ } else {
+ if (elm_radio_value_get(ugd->ug_MainWindow.ug_pRadioGroup) != selected->ug_iGroupValue) {
+ ugd->ug_Status.ug_iRadioOn = selected->ug_iGroupValue;
+ selected->ug_bChecked = true;
+ elm_radio_value_set(ugd->ug_MainWindow.ug_pRadioGroup, selected->ug_iGroupValue);
}
- mf_ug_cb_list_play_cb(selected, NULL, NULL);
}
+
} else {
if (selected->ug_bChecked == 0) {
selected->ug_bChecked = 1;
@@ -1128,6 +1171,7 @@ Evas_Object *__mf_ug_genlist_create_gl(void *data)
if (ugd->ug_UiGadget.ug_iSelectMode == MULTI_FILE_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == SINGLE_FILE_MODE ||
+ ugd->ug_UiGadget.ug_iSelectMode == IMPORT_PATH_SELECT_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == IMPORT_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == EXPORT_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == SAVE_MODE ||
@@ -1403,9 +1447,6 @@ Evas_Object *mf_ug_genlist_create_content_list_view(void *data)
ugd->ug_Status.ug_iRadioOn = 0;
ugd->ug_Status.ug_bNoContentFlag = false;
- genlist = __mf_ug_genlist_create_gl(ugd);
-
- ugd->ug_MainWindow.ug_pNaviGenlist = genlist;
GString *fullpath = g_string_new(ugd->ug_Status.ug_pPath->str);
@@ -1446,7 +1487,6 @@ Evas_Object *mf_ug_genlist_create_content_list_view(void *data)
if ((dir_list_len == 0 && filter_file_list_len == 0)) {
ug_debug("=========================================== create the no content view");
- Evas_Object *layout;
Evas_Object *nocontent = NULL;
nocontent = elm_layout_add(ugd->ug_MainWindow.ug_pMainLayout);
@@ -1455,18 +1495,16 @@ Evas_Object *mf_ug_genlist_create_content_list_view(void *data)
ugd->ug_Status.ug_bNoContentFlag = true;
- elm_scroller_bounce_set(genlist, EINA_FALSE, EINA_FALSE);
-
- layout = elm_layout_add(ugd->ug_MainWindow.ug_pMainLayout);
- elm_layout_file_set(layout, UG_EDJ_NAVIGATIONBAR, UG_GRP_NO_CONTENT);
- elm_object_part_content_set(layout, "myfile.noContent.upper", genlist);
- elm_object_part_content_set(layout, "myfile.noContent.content", nocontent);
mf_ug_util_add_dir_watch(fullpath->str, ugd);
g_string_free(fullpath, true);
fullpath = NULL;
- return layout;
+ return nocontent;
}
+
+ genlist = __mf_ug_genlist_create_gl(ugd);
+
+ ugd->ug_MainWindow.ug_pNaviGenlist = genlist;
ugFsNodeInfo *pNode = NULL;
Eina_List *l = NULL;
@@ -1474,8 +1512,9 @@ Evas_Object *mf_ug_genlist_create_content_list_view(void *data)
count++;
-if (ugd->ug_UiGadget.ug_iSelectMode == MULTI_FILE_MODE ||
+ if (ugd->ug_UiGadget.ug_iSelectMode == MULTI_FILE_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == SINGLE_FILE_MODE ||
+ ugd->ug_UiGadget.ug_iSelectMode == IMPORT_PATH_SELECT_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == IMPORT_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == EXPORT_MODE ||
ugd->ug_UiGadget.ug_iSelectMode == SAVE_MODE ||