MF_CHECK(ap);
char *p = NULL;
Eina_List *list;
+ if (!ap->history) {
+ return;
+ }
EINA_LIST_FOREACH(ap->history, list, p) {
if (p) {
SAFE_FREE_CHAR(p);
{
struct appdata *ap = (struct appdata *) data;
ap->mf_MainWindow.pProgressPopup =
- mf_popup_create_progress_pb_popup(ap, MF_LABEL_DECOMPRESS,
- MF_LABEL_DECOMPRESSING, 10,
- mf_callback_compress_cancel_cb,
- ap);;
+ mf_popup_create_progress_pb_popup(ap, MF_LABEL_DECOMPRESS,
+ MF_LABEL_DECOMPRESSING, 10,
+ mf_callback_compress_cancel_cb,
+ ap);;
evas_object_show(ap->mf_MainWindow.pProgressPopup);
}
ap->mf_FileOperation.sync_pipe =
- ecore_pipe_add(__mf_decompress_pipe_cb, ap);
+ ecore_pipe_add(__mf_decompress_pipe_cb, ap);
//pthread_t thread;
ret = pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create(&ap->thread1, &attr,
- (void *) &mf_callback_decompress_cb, (void *) ap);
+ (void *) &mf_callback_decompress_cb, (void *) ap);
pthread_detach(ap->thread1);
}
skeletonLength = strlen(skeleton);
if (i18n_ustring_copy_ua_n(customSkeleton, skeleton, skeletonLength) ==
NULL) {
+ g_free(skeleton);
return MYFILE_ERR_INVALID_ARG;
}
retcode = i18n_udatepg_create(region, &generator);
if (generator == NULL) {
+ g_free(skeleton);
return MYFILE_ERR_INVALID_ARG;
}
i18n_udatepg_destroy(ap->mf_Status.generator);
ap->mf_Status.generator = NULL;
}
+ g_free(skeleton);
return MYFILE_ERR_INVALID_ARG;
}
i18n_udate_destroy(ap->mf_Status.formatter);
ap->mf_Status.formatter = NULL;
}
+ g_free(skeleton);
return MYFILE_ERR_INVALID_ARG;
}
ap->mf_Status.generator = generator;
ap->mf_Status.formatter = formatter;
ap->mf_Status.flagIcuInit = TRUE;
SAFE_FREE_CHAR(region);
+ g_free(skeleton);
MF_TRACE_END;
return MYFILE_ERR_NONE;
}
}
}
-void *initialization(void *data)
+bool initialization(void *data)
{
struct appdata *ap = (struct appdata *) data;
int ret = 0;
/*Create content frame of Main Layout */
ret = media_content_connect();
- mf_retvm_if(ret < 0, NULL, "Fail to media_content_connect()");
+ if (ret < 0) {
+ mf_debug("failed to connect to media_content");
+ return FALSE;
+ }
ret = mf_fs_monitor_create(ap);
- mf_retvm_if(ret < 0, NULL, "Fail to mf_fs_monitor_create()");
+ if (ret < 0) {
+ mf_debug("failed to connect to media_content");
+ return FALSE;
+ }
+ ap->mf_Status.app_init_idler = NULL;
ap->mf_Status.app_init_idler =
- ecore_idler_add((Ecore_Task_Cb) __mf_main_app_init_idler_cb, ap);
+ ecore_idler_add((Ecore_Task_Cb) __mf_main_app_init_idler_cb, ap);
initialization_done = 1;
- return NULL;
+ return TRUE;
}
Eina_Bool my_idle_enterer_cb(void *data)
MF_TRACE_BEGIN;
t_start;
struct appdata *ap = (struct appdata *) data;
- initialization(data);
+ bool ret = initialization(data);
+ if (!ret) {
+ return FALSE;
+ }
if (!mf_reg_db_update_noti(ap)) {
mf_debug("update noti registered sucess");
mf_callback_profile_changed_cb, ap);
ap->mf_Status.b_run_background = false;
+ char *first_item = strdup("main_view");
+ if (!first_item) {
+ return false;
+ }
- ap->history = eina_list_prepend(ap->history, strdup("main_view"));
+ ap->history = eina_list_prepend(ap->history, first_item);
mf_initialize_datacontrol_consumer(ap);
mf_media_content_disconnect();
+ if (!ap->mf_Status.app_init_idler) {
+ return;
+ }
+
SAFE_FREE_OBJ(ap->mf_MainWindow.pProgressPopup);
media_content_remove_db_updated_cb(ap->noti_handle);
mf_category_list_destory();
- mf_callback_unregister_mmc_state_cb();
+ if (ap->mf_Status.app_init_idler) {
+ mf_callback_unregister_mmc_state_cb();
+ }
#ifdef MYFILE_USB_OTG
mf_callback_unregister_otg_state_cb();
mf_otg_finalize();
#endif
- if (ap->mf_Status.search_handler) {
- mf_search_finalize(&ap->mf_Status.search_handler);
- }
+ mf_search_finalize(&ap->mf_Status.search_handler);
mf_edit_folder_list_clear();
mf_edit_file_list_clear();
}
Elm_Object_Item *it = NULL;
- /*if (first_index_item) {
- it = elm_genlist_item_insert_before(genlist, &root_category_itc, ap, NULL, first_index_item, ELM_GENLIST_ITEM_NONE, NULL, NULL);
- } else { */
+
it = elm_genlist_item_prepend(genlist, &root_category_itc, ap, NULL,
ELM_GENLIST_ITEM_NONE, NULL, NULL);
- //}
+
elm_genlist_item_show(it, ELM_GENLIST_ITEM_SCROLLTO_TOP);
MF_TRACE_END;
return it;
/*create detail layout */
category_state = mf_category_create(ap);
- /*
- Evas_Object *bx = elm_box_add(ap->mf_MainWindow.pNaviLayout);
- evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, 0);
- evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, 0);
- evas_object_size_hint_min_set(bx, 720, -1);
- elm_box_pack_end(bx, category);
-
- Evas_Object *scroller = elm_scroller_add(ap->mf_MainWindow.pNaviLayout);
- elm_scroller_bounce_set(scroller, EINA_TRUE, EINA_FALSE);
- elm_scroller_policy_set(scroller,ELM_SCROLLER_POLICY_AUTO,ELM_SCROLLER_POLICY_AUTO);
- elm_object_content_set(scroller, bx);
- elm_object_scroll_lock_x_set(scroller,EINA_TRUE);
- evas_object_show(scroller);
-
- root_category = category;
- box_root_category = bx;
- mf_mw_root_category_refresh(ap);
- //return category;
- */
+
MF_TRACE_END;
return category_state;
}
struct appdata *ap = (struct appdata *) data;
Evas_Object *genlist = ap->mf_MainWindow.pNaviGenlist;
- //category_index_item = __mf_root_view_group_index_create(ap, genlist, MF_LABEL_CATEGORY);
int changed_angle = elm_win_rotation_get(ap->mf_MainWindow.pWindow);
mf_debug("changed_angle is [%d]", changed_angle);
const char *text)
{
mfItemData_s *m_TempItem = NULL;
- //struct appdata *ap = (struct appdata *)data;
-
mf_genlist_create_data(&m_TempItem, text, data);
+ if (!m_TempItem) {
+ return NULL;
+ }
m_TempItem->item =
elm_genlist_item_append(genlist, &index_itc, m_TempItem, NULL,
ELM_GENLIST_ITEM_NONE, NULL, NULL);
shortcut_list, NULL);
}
-static bool __mf_add_storage_info_to_list(media_storage_h storage,
- void *data)
-{
- struct appdata *ap = (struct appdata *) data;
- char *base_dir = NULL;
- //char *icon_path = NULL;
- char *storage_name = NULL;
- char *storage_uuid = NULL;
-// long long int total = 0;
-// long long int occupied = 0;
-// double totalG = 0;
-// double occupiedG = 0;
- media_content_storage_e storage_type;
-
- media_storage_get_type(storage, &storage_type);
-
- if (storage_type == MEDIA_CONTENT_STORAGE_CLOUD) {
- media_storage_get_id(storage, &storage_uuid);
- media_storage_get_name(storage, &storage_name);
- media_storage_get_path(storage, &base_dir);
-// totalG = total / GIGABYTE;
-// occupiedG = occupied / GIGABYTE;
-
- //mf_error("storage_loaded - %s, %s, %s, %s, %5.2f/%5.2f GB, %d", storage_name, storage_uuid, base_dir, icon_path, occupiedG, totalG, storage_type);
- storage_info *const pNode_cloud_storage =
- calloc(1, sizeof(storage_info));
- if (!pNode_cloud_storage) {
- mf_error("no memory allocated");
- SAFE_FREE_CHAR(storage_uuid);
- SAFE_FREE_CHAR(storage_name);
- SAFE_FREE_CHAR(base_dir);
- return TRUE;
- }
-
- pNode_cloud_storage->root_name = storage_name;
- pNode_cloud_storage->type = STORAGE_TYPE_STORAGE;
-
- pNode_cloud_storage->uuid = storage_uuid;
- pNode_cloud_storage->root_path = base_dir;
-
-// pNode_cloud_storage->total = totalG;
-// pNode_cloud_storage->occupied = occupiedG;
-// pNode_cloud_storage->icon_path = icon_path;
-
- ap->storage_list =
- eina_list_append(ap->storage_list, pNode_cloud_storage);
- }
- SAFE_FREE_CHAR(storage_uuid);
- SAFE_FREE_CHAR(storage_name);
- SAFE_FREE_CHAR(base_dir);
- return TRUE;
-}
-
-static int __mf_root_view_cloud_storage(void *data)
-{
- mf_retvm_if(data == NULL, -1, "data is NULL");
- struct appdata *ap = (struct appdata *) data;
- Evas_Object *genlist = ap->mf_MainWindow.pNaviGenlist;
-
- if (!ap->storage_list) {
- int ret =
- media_storage_foreach_storage_from_db(NULL,
- __mf_add_storage_info_to_list,
- data);
- if (ret != MEDIA_CONTENT_ERROR_NONE) {
- mf_error("Cannot get clouds, errorcode: %d", ret);
- }
- }
- /*Run once storage list is created. */
- if (ap->storage_list) {
- cloud_index_item =
- __mf_root_view_group_index_create(ap, genlist, MF_LABEL_CLOUD);
- mf_genlist_cloud_content_set(ap, ap->mf_MainWindow.pNaviGenlist,
- ap->storage_list);
- }
- return 0;
-}
-
static Evas_Object *__mf_root_view_content_create(void *data)
{
mf_retvm_if(data == NULL, NULL, "data is NULL");
struct appdata *ap = (struct appdata *) data;
Evas_Object *content = NULL;
-
- //int view_style = mf_view_style_get(ap);
-
content = ap->mf_MainWindow.pNaviGenlist;
__mf_root_view_local_storage_items_append(ap);
- __mf_root_view_cloud_storage(ap);
-
return content;
}
if (ap->mf_Status.more == MORE_DEFAULT) {
if (ap->mf_Status.view_type == mf_view_root) {
Evas_Object *win = ap->mf_MainWindow.pWindow;
-// mf_navi_bar_reset_navi_obj(ap);
elm_win_lower(win);
} else if (ap->mf_Status.view_type == mf_view_root_category) {
if (ap->mf_MainWindow.pProgressPopup) {
genlist = mf_object_create_genlist(ap->mf_MainWindow.pNaviBar);
evas_object_smart_callback_add(genlist, "language,changed",
mf_genlist_gl_lang_changed, data);
- //evas_object_smart_callback_add(genlist, "longpressed", mf_genlist_gl_longpress, ap);
evas_object_smart_callback_add(genlist, "selected",
mf_edit_list_item_sel_cb, ap);
char *real_name = NULL;
mfItemData_s *m_TempItem = NULL;
struct appdata *ap = (struct appdata *) data;
- //int view_style = mf_view_style_get(ap);
- //real_name = g_strconcat(pNode->path, "/", pNode->name, NULL);
real_name = g_strdup(MEMORY_FOLDER);
if (real_name == NULL) {
return;
ap->mf_MainWindow.pNaviGenlist = newContent;
category_item = mf_mw_root_category_item_append(ap);
- //Evas_Object *category = mf_category_create(ap);
-
- //elm_object_part_content_set(ap->mf_MainWindow.pNaviLayout, "category", category);
- //mf_category_refresh(ap);
-
-
__mf_root_group_index_style_set();
__mf_root_view_content_create(ap);