#include "vp-file-util.h"
#include "mp-rotate-ctrl.h"
#include "videos-view-mgr.h"
+#include "mp-video-list-view-main.h"
+
+#define GENGRID_ITEM_WIDTH 304 // Width is ICON(280) + LEFT_PADDING(12) RIGHT_PADDING(12)
+#define GENGRID_ITEM_HEIGHT 256 //Height is ICON(160) + TEXT_PART(56) + Bottom_PADDING(40)
+#define BASE_LAYOUT_SWALLOW "elm.content.swallow"
+
+typedef struct _stGengridItemData{
+ Elm_Object_Item *item;
+ Evas_Object *icon;
+ int videoIndex;
+}stGengridItemData;
+
typedef struct {
void *pNaviFrameHandle;
void *pNaviFrameItem;
void *pPreNaviItem;
void *pGenlist;
- Elm_Genlist_Item_Class *pGenListItc;
- Elm_Genlist_Item_Class *pGenListLandscapeItc;
- Elm_Gengrid_Item_Class *pGenGridItc_1;
- Elm_Gengrid_Item_Class *pGenGridItc_2;
+ Elm_Gengrid_Item_Class *pSelectGIC;
MpMediaSvcSortType nSortType;
MpDbUpdateViewLev euLev;
ChangeSelectViewCbFunc pChangeViewUserCbFunc;
} st_SelectViewHandle;
typedef struct {
- Evas_Object *pBox;
Evas_Object *pBaselayout;
} st_SelectViewWidget;
void mp_select_view_naviframe_transition_effect_cb(void *pUserData,
Evas_Object * pObject,
void *pEventInfo);
-static void __mp_select_view_base_layout_del_cb(void *pUserData, Evas * e,
- Evas_Object * pObject,
- void *pEventInfo);
/**
*
VideoLogInfo("");
if (g_pSelectHandle) {
+ mp_util_db_set_update_fun(g_pSelectHandle->euLev, NULL);
evas_object_smart_callback_del(g_pSelectHandle->pNaviFrameHandle,
"transition,finished",
mp_select_view_naviframe_transition_effect_cb);
-
+ MP_DEL_GRID_ITC(g_pSelectHandle->pSelectGIC);
+ elm_gengrid_clear(g_pSelectHandle->pGenlist);
MP_DEL_OBJ(g_pSelectHandle->pGenlist);
- MP_DEL_ITC(g_pSelectHandle->pGenListItc);
MP_FREE_STRING(g_pSelectHandle->pFolderUrl);
- MP_FREE_STRING(g_pSelectHandle);
- }
-
- if (g_pSelectWidget) {
- MP_DEL_OBJ(g_pSelectWidget->pBox);
-
if (g_pSelectWidget->pBaselayout != NULL) {
- evas_object_event_callback_del(g_pSelectWidget->pBaselayout,
- EVAS_CALLBACK_DEL,
- __mp_select_view_base_layout_del_cb);
MP_DEL_OBJ(g_pSelectWidget->pBaselayout);
+ MP_FREE_STRING(g_pSelectWidget);
}
- MP_FREE_STRING(g_pSelectWidget);
- }
-}
-
-/**
- *
- */
-static void __mp_select_view_reset(void)
-{
- VideoLogInfo("");
-
- if (g_pSelectHandle) {
- MP_FREE_STRING(g_pSelectHandle->pFolderUrl);
- mp_util_db_set_update_fun(g_pSelectHandle->euLev, NULL);
- mp_util_db_set_backup_fun(g_pSelectHandle->euLev, NULL);
- evas_object_smart_callback_del(g_pSelectHandle->pNaviFrameHandle,
- "transition,finished",
- mp_select_view_naviframe_transition_effect_cb);
- g_pSelectHandle->pGenlist = NULL;
MP_FREE_STRING(g_pSelectHandle);
}
-
- if (g_pSelectWidget) {
-
- g_pSelectWidget->pBox = NULL;
- g_pSelectWidget->pBaselayout = NULL;
-
- MP_FREE_STRING(g_pSelectWidget);
- }
}
/**
}
mp_widget_ctrl_enable_navi_handle_focus(obj);
+ mp_select_view_destroy();
evas_object_smart_callback_del(obj, "transition,finished",
__mp_select_view_trans_finished_cb);
}
if (pTmpContents) {
- if (pTmpContents == g_pSelectWidget->pBox) {
+ if (pTmpContents == g_pSelectWidget->pBaselayout) {
} else {
VideoLogInfo
("It's not pListShareViaViewTabbarLayout in top screen.");
}
}
-/**
- *
- * @param pUserData
- * @param pObject
- * @param pPart
- * @return
- */
-static char *__mp_select_view_get_label_of_folder_cb(const void *pUserData,
- Evas_Object * pObject,
- const char *pPart)
-{
-
- int nFolderItemIndex = (int) pUserData;
-
- if (!g_strcmp0(pPart, "elm.text.main.left.top")) {
- char *szTitle = NULL;
- szTitle = mp_util_svc_get_video_folder_name(nFolderItemIndex);
-
- char *szTitleUtf8 = elm_entry_utf8_to_markup(szTitle);
-
- MP_FREE_STRING(szTitle);
- return szTitleUtf8;
- } else if (!g_strcmp0(pPart, "elm.text.sub.left.bottom")) {
- char *szFolderPath = NULL;
- szFolderPath = mp_util_svc_get_video_folder_url(nFolderItemIndex);
- char *pDes_path = mp_util_get_dir_by_path(szFolderPath);
- MP_FREE_STRING(szFolderPath);
- char *szFolderUtf8 = elm_entry_utf8_to_markup(pDes_path);
- MP_FREE_STRING(pDes_path);
- return szFolderUtf8;
-
- }
-
- return NULL;
-}
-
-/**
- *
- * @param pUserData
- * @param pObject
- * @param pPart
- * @return
- */
-static Evas_Object *__mp_select_view_get_icon_of_folder_cb(const void
- *pUserData,
- Evas_Object *
- pObject,
- const char
- *pPart)
-{
- int nFolderItemIndex = (int) pUserData;
- VideoLogInfo("Index : %d", nFolderItemIndex);
-
- if (!g_strcmp0(pPart, "elm.icon.1")) {
- VideoLogInfo("pPart: elm.icon.1 - thumbnail");
-
- Evas_Object *pLayout = NULL;
- Evas_Object *pBg = NULL;
- char *pThumbIconUri =
- mp_util_get_folder_thumbnail(nFolderItemIndex,
- mp_sort_ctrl_get_sort_state());
- char edj_path[1024] = { 0 };
-
- char *path = app_get_resource_path();
- snprintf(edj_path, 1024, "%s%s/%s", path, "edje",
- VIDEO_CUSTOM_THEME);
- free(path);
- pLayout = elm_layout_add(pObject);
- elm_layout_file_set(pLayout, edj_path,
- "listview.thumbnail.layout");
-
- if (!pThumbIconUri || !vp_file_exists(pThumbIconUri)) {
- MP_FREE_STRING(pThumbIconUri);
- }
-
- pBg =
- mp_util_create_preload_image(pLayout, pThumbIconUri,
- VIDEO_ICON_WIDTH);
- elm_layout_content_set(pLayout, "elm.thumbnail.icon", pBg);
- if (pBg)
- evas_object_show(pBg);
-
- if (!mp_util_create_folder_sub_icon(pLayout, nFolderItemIndex)) {
- VideoLogWarning
- ("Create sub icon is failed. nFolderItemIndex: %d",
- nFolderItemIndex);
- }
-
- MP_FREE_STRING(pThumbIconUri);
-
- evas_object_show(pLayout);
-
- return pLayout;
- }
-
- return NULL;
-}
-
/**
*
* @return
return g_pSelectHandle->nSortType;
}
-#ifdef VS_FEATURE_LIST_VIEW
-/**
- *
- * @param pUserData
- * @param pObject
- * @param pPart
- * @return
- */
-static char *__mp_select_view_get_label_of_video_item_cb(const void
- *pUserData,
- Evas_Object *
- pObject,
- const char *pPart)
-{
- int nVideoItemIndex = (int) pUserData;
-
- if (!strcmp(pPart, "elm.text.main.left.top")) {
- char *szTitle = mp_util_svc_get_video_title(nVideoItemIndex);
- char *szTitleUtf8 = elm_entry_utf8_to_markup(szTitle);
- if (szTitle) {
- free(szTitle);
- szTitle = NULL;
- }
-
- return szTitleUtf8;
- } else if (!strcmp(pPart, "elm.text.sub.left.bottom")) {
- return mp_util_svc_get_duration_str_time(nVideoItemIndex);
- }
- return NULL;
-}
-
-/**
- *
- * @param pUserData
- * @param pObject
- * @param pPart
- * @return
- */
-static Evas_Object *__mp_select_view_get_icon_of_video_item_cb(const void
- *pUserData,
- Evas_Object
- *pObject,
- const char
- *pPart)
-{
- Evas_Object *pLayout = NULL;
-
- int nVideoItemIndex = (int) pUserData;
- if (!pPart || !pObject) {
- return NULL;
- }
-
- if (!strcmp(pPart, "elm.icon.1")) {
- VideoLogInfo("pPart: elm.icon.1 - thumbnail");
-
- char *pThumbIconUri =
- mp_util_svc_get_video_thumbnail(nVideoItemIndex);
- Evas_Object *pBg = NULL;
- char edj_path[1024] = { 0 };
-
- char *path = app_get_resource_path();
- snprintf(edj_path, 1024, "%s%s/%s", path, "edje",
- VIDEO_CUSTOM_THEME);
- free(path);
- pLayout = elm_layout_add(pObject);
- elm_layout_file_set(pLayout, edj_path,
- "listview.thumbnail.layout");
-
- if (!pThumbIconUri || !vp_file_exists(pThumbIconUri)) {
- MP_FREE_STRING(pThumbIconUri);
- }
-
- pBg =
- mp_util_create_preload_image(pLayout, pThumbIconUri,
- VIDEO_ICON_WIDTH);
- elm_layout_content_set(pLayout, "elm.thumbnail.icon", pBg);
-
- if (pBg)
- evas_object_show(pBg);
-
- MP_FREE_STRING(pThumbIconUri);
-
- if (!mp_util_create_video_sub_icon(pLayout, nVideoItemIndex)) {
- VideoLogWarning("Local File or Create sub icon is failed.",
- nVideoItemIndex);
- }
-
- if (pLayout) {
- evas_object_show(pLayout);
- }
-
- return pLayout;
- }
-
- MP_DEL_OBJ(pLayout);
-
- return NULL;
-}
-#endif
-
/*if other view need update select view, need register this update callback*/
/**
*
g_pSelectHandle->bRename = TRUE;
- bool bNormalShow =
- mp_select_view_arrange_video_list(g_pSelectHandle->pGenlist, TRUE);
+ bool bNormalShow = mp_select_view_arrange_video_list(g_pSelectHandle->pGenlist, FALSE);
if (bNormalShow) {
Elm_Object_Item *pItem = NULL;
- pItem = elm_genlist_first_item_get(g_pSelectHandle->pGenlist);
+ pItem = elm_gengrid_first_item_get(g_pSelectHandle->pGenlist);
if (pItem) {
- elm_genlist_item_bring_in(pItem, ELM_GENLIST_ITEM_SCROLLTO_IN);
+ elm_gengrid_item_bring_in(pItem, ELM_GENGRID_ITEM_SCROLLTO_IN);
}
} else {
elm_naviframe_item_pop(g_pSelectHandle->pNaviFrameHandle);
* @param pObject
* @param pEventInfo
*/
-static void __mp_select_view_genlist_selected_cb(void *pUserData,
+static void __mp_select_view_gengrid_item_selected_cb(void *pUserData,
Evas_Object * pObject,
void *pEventInfo)
{
("[WARNING] Main handles of list view are not existed.");
return;
}
-#ifdef VS_FEATURE_THUMBNAIL_VIEW
- Elm_Object_Item *pSelectedItem =
- elm_gengrid_selected_item_get(pObject);
+
+ Elm_Object_Item *pSelectedItem = elm_gengrid_selected_item_get(pObject);
if (pSelectedItem) {
elm_gengrid_item_selected_set(pSelectedItem, EINA_FALSE);
}
-#else
- Elm_Object_Item *pSelectedItem =
- elm_genlist_selected_item_get(pObject);
- if (pSelectedItem) {
- elm_genlist_item_selected_set(pSelectedItem, EINA_FALSE);
- }
-#endif
- int nSelectedIndex = (int) pUserData;
+ stGengridItemData *item_data = (stGengridItemData*)pUserData;
+ int nSelectedIndex = item_data->videoIndex;
VideoLogInfo("selected index is %d", nSelectedIndex);
if (SELECT_TYPE_DETAIL == g_pSelectHandle->eSelType) {
} else if (SELECT_TYPE_RENAME == g_pSelectHandle->eSelType) {
VideoLogInfo("Show rename popup");
- g_pRenameLayout =
- mp_rename_ctrl_show(g_pSelectHandle->pNaviFrameHandle, NULL,
- (void *)
- __mp_select_view_result_view_update_cb,
+ g_pRenameLayout = mp_rename_ctrl_show(g_pSelectHandle->pNaviFrameHandle, NULL,
+ (void *)__mp_select_view_result_view_update_cb,
nSelectedIndex);
}
}
-/**
- *
- * @param pFolderGenlist
- */
-static void __mp_select_view_append_folder_items(void *pFolderGenlist)
-{
- VideoLogInfo("");
- int nIndex = 0;
- int nFolderListSize = 0;
-
- nFolderListSize = mp_util_svc_get_video_folder_size();
- VideoLogInfo("nVideoListSize : %d", nFolderListSize);
-
- if (nFolderListSize > 0) {
- MP_DEL_ITC(g_pSelectHandle->pGenListItc);
- g_pSelectHandle->pGenListItc = elm_genlist_item_class_new();
- g_pSelectHandle->pGenListItc->item_style = "2line.top";
- g_pSelectHandle->pGenListItc->func.text_get =
- (void *) __mp_select_view_get_label_of_folder_cb;
- g_pSelectHandle->pGenListItc->func.content_get =
- (void *) __mp_select_view_get_icon_of_folder_cb;
- g_pSelectHandle->pGenListItc->func.state_get = NULL;
- g_pSelectHandle->pGenListItc->func.del = NULL;
- g_pSelectHandle->pGenListItc->decorate_item_style = NULL;
-
- for (nIndex = 0; nIndex < nFolderListSize; nIndex++) {
- VideoLogInfo("nCounter : %d", nIndex);
- elm_genlist_item_append(pFolderGenlist,
- g_pSelectHandle->pGenListItc,
- (void *) nIndex, NULL,
- ELM_GENLIST_ITEM_NONE,
- __mp_select_view_genlist_selected_cb,
- (void *) nIndex);
- }
- }
-}
-
#ifdef VS_FEATURE_THUMBNAIL_VIEW
-/**
- *
- * @param parent
- * @param nWidth
- * @param nHeight
- * @return
- */
-static Evas_Object *__mp_select_view_create_gengrid(Evas_Object * parent,
- int nWidth,
- int nHeight)
-{
- Evas_Object *pGengrid;
- pGengrid = elm_gengrid_add(parent);
- if (!pGengrid) {
- VideoLogError("pVideoGrid does not exist.");
- return NULL;
- }
- evas_object_size_hint_weight_set(pGengrid, EVAS_HINT_EXPAND,
- EVAS_HINT_EXPAND);
- evas_object_size_hint_align_set(pGengrid, EVAS_HINT_FILL,
- EVAS_HINT_FILL);
- elm_gengrid_item_size_set(pGengrid, nWidth, nHeight);
- elm_gengrid_align_set(pGengrid, 0.0, 0.0);
- elm_gengrid_horizontal_set(pGengrid, EINA_TRUE);
-
- return pGengrid;
-}
-
/**
*
* @param pUserData
* @param pPart
* @return
*/
-static char *__mp_select_view_get_label_of_grid_item_cb(const void
- *pUserData,
- Evas_Object *
- pObject,
- const char *pPart)
+static char *__mp_select_view_get_label_of_grid_item_cb(void *pUserData, Evas_Object *pObject, const char *pPart)
{
- int nVideoItemIndex = (int) pUserData;
+ stGengridItemData *item_data = (stGengridItemData*)pUserData;
+ int nVideoItemIndex = item_data->videoIndex;
if (!strcmp(pPart, "elm.text")) {
char *szTitle;
}
return szTitleUtf8;
- } else if (!strcmp(pPart, "elm.text.2")) {
+ } else if (!strcmp(pPart, "elm.sub.text")) {
return mp_util_svc_get_duration_str_time(nVideoItemIndex);
}
-
return NULL;
}
* @param pPart
* @return
*/
-static Evas_Object *__mp_select_view_get_grid_icon_cb(const void
- *pUserData,
- Evas_Object *
- pObject,
- const char *pPart)
+static Evas_Object *__mp_select_view_get_grid_icon_cb(void *pUserData, Evas_Object *pObject, const char *pPart)
{
- int nVideoItemIndex = (int) pUserData;
- char edj_path[1024] = { 0 };
+ stGengridItemData *item_data = (void*)pUserData;
+ int nVideoItemIndex = item_data->videoIndex;
- char *path = app_get_resource_path();
- snprintf(edj_path, 1024, "%s%s/%s", path, "edje",
- VIDEO_PLAYER_IMAGE_NAME_EDJ);
- free(path);
- if (!strcmp(pPart, "elm.swallow.icon")) {
- char *pThumbIconUri =
- mp_util_svc_get_video_thumbnail(nVideoItemIndex);
- Evas_Object *pBg = NULL;
-
- if (!pThumbIconUri || !vp_file_exists(pThumbIconUri)) {
- pBg = elm_image_add(pObject);
- MP_FREE_STRING(pThumbIconUri);
- evas_object_size_hint_aspect_set(pBg, EVAS_ASPECT_CONTROL_BOTH,
- 1, 1);
- elm_image_file_set(pBg, pThumbIconUri, NULL);
- } else {
- pBg =
- mp_util_create_preload_image(pObject, pThumbIconUri,
- GRID_VIDEO_ICON_WIDTH);
- }
+ if (!strcmp(pPart, "elm.icon")) {
+ char *pThumbIconUri = mp_util_svc_get_video_thumbnail(nVideoItemIndex);
+ char edj_path[1024] = {0, };
- MP_FREE_STRING(pThumbIconUri);
-
- return pBg;
- } else if (!strcmp(pPart, "elm.progressbar.icon")) {
- return NULL;
- } else if (!strcmp(pPart, "elm.lock.icon")) {
- char *pVideoFile = mp_util_svc_get_video_url(nVideoItemIndex);
- bool bRet =
- mp_util_check_video_personal_status((const char *) pVideoFile);
- MP_FREE_STRING(pVideoFile);
- if (bRet) {
- Evas_Object *pLockIcon = elm_image_add(pObject);
- elm_image_file_set(pLockIcon, edj_path,
- VIDEO_LIST_VIEW_ICON_PERSONAL_LOCK);
- evas_object_size_hint_align_set(pLockIcon, EVAS_HINT_FILL,
- EVAS_HINT_FILL);
- evas_object_size_hint_weight_set(pLockIcon, EVAS_HINT_EXPAND,
- EVAS_HINT_EXPAND);
- evas_object_show(pLockIcon);
- return pLockIcon;
- } else {
- return NULL;
- }
- } else if (!strcmp(pPart, "elm.dropbox.icon")) {
- bool bRet = mp_util_svc_is_cloud_storage(nVideoItemIndex);
- if (bRet) {
- Evas_Object *pDropboxIcon = elm_image_add(pObject);
- elm_image_file_set(pDropboxIcon, edj_path,
- VIDEO_LIST_VIEW_ICON_DROPBOX);
- evas_object_size_hint_align_set(pDropboxIcon, EVAS_HINT_FILL,
- EVAS_HINT_FILL);
- evas_object_size_hint_weight_set(pDropboxIcon,
- EVAS_HINT_EXPAND,
- EVAS_HINT_EXPAND);
- evas_object_show(pDropboxIcon);
- return pDropboxIcon;
- } else {
- return NULL;
- }
- } else if (!strcmp(pPart, "elm.swallow.end")) {
- }
- return NULL;
-}
-
-/**
- *
- * @param pObjVideosList
- * @param nGenItemIndex
- */
-static void __mp_select_view_append_grid_items(void *pObjVideosList,
- int nGenItemIndex)
-{
- if (!g_pSelectHandle) {
- VideoLogInfo("invalid handle");
- return;
- }
+ Evas_Object *img = elm_image_add(pObject);
- MP_DEL_GRID_ITC(g_pSelectHandle->pGenGridItc_1);
- MP_DEL_GRID_ITC(g_pSelectHandle->pGenGridItc_2);
- g_pSelectHandle->pGenGridItc_1 = elm_gengrid_item_class_new();
- g_pSelectHandle->pGenGridItc_1->item_style = "video/album_grid";
- g_pSelectHandle->pGenGridItc_1->func.text_get =
- (void *) __mp_select_view_get_label_of_grid_item_cb;
- g_pSelectHandle->pGenGridItc_1->func.content_get =
- (void *) __mp_select_view_get_grid_icon_cb;
- g_pSelectHandle->pGenGridItc_1->func.state_get = NULL;
- g_pSelectHandle->pGenGridItc_1->func.del = NULL;
-
- g_pSelectHandle->pGenGridItc_2 = elm_gengrid_item_class_new();
- g_pSelectHandle->pGenGridItc_2->item_style = "video/album_grid";
- g_pSelectHandle->pGenGridItc_2->func.text_get =
- (void *) __mp_select_view_get_label_of_grid_item_cb;
- g_pSelectHandle->pGenGridItc_2->func.content_get =
- (void *) __mp_select_view_get_grid_icon_cb;
- g_pSelectHandle->pGenGridItc_2->func.state_get = NULL;
- g_pSelectHandle->pGenGridItc_2->func.del = NULL;
-
- int nCount =
- (mp_rotate_ctrl_check_landspace() ? VP_GENLIST_THUMB_LANDSPACE_COUNT
- : VP_GENLIST_THUMB_PORTRAIT_COUNT);
- int nIndex = nGenItemIndex * nCount;
- int nMaxIndex = nIndex + nCount;
- int nVideoListSize = mp_util_svc_get_number_of_video_item_by_type();
-
- Elm_Object_Item *gridItem = NULL;
- for (; (nIndex < nMaxIndex) && (nIndex < nVideoListSize); nIndex++) {
- if (nIndex % 2 == 0) {
- elm_gengrid_item_append(pObjVideosList,
- g_pSelectHandle->pGenGridItc_1,
- (void *) nIndex,
- __mp_select_view_genlist_selected_cb,
- (void *) nIndex);
+ if(pThumbIconUri == NULL || (strlen(pThumbIconUri) == 0 ))
+ {
+ char *path = app_get_resource_path();
+ snprintf(edj_path, 1024, "%s%s/%s", path, "images", "default_thumbnail.png");
+ free(path);
+ elm_image_aspect_fixed_set(img, EINA_TRUE);
+ elm_image_file_set(img, edj_path, NULL);
} else {
- elm_gengrid_item_append(pObjVideosList,
- g_pSelectHandle->pGenGridItc_2,
- (void *) nIndex,
- __mp_select_view_genlist_selected_cb,
- (void *) nIndex);
+ elm_image_fill_outside_set(img, EINA_TRUE);
+ elm_image_file_set(img, pThumbIconUri, NULL);
+ free(pThumbIconUri);
}
- elm_object_item_data_set(gridItem, (void *) nIndex);
- }
-}
+ elm_image_preload_disabled_set(img, EINA_FALSE);
+ evas_object_size_hint_weight_set(img, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(img, EVAS_HINT_FILL, EVAS_HINT_FILL);
-/**
- *
- * @param height
- * @param width
- */
-static void mp_select_view_get_icon_dimensions(int *height, int *width)
-{
- int winHeight = 0;
- int winWidth = 0;
- elm_win_screen_size_get(mp_util_get_main_window_handle(), NULL, NULL,
- &winWidth, &winHeight);
-
- bool bLandscape =
- mp_rotate_ctrl_check_landspace_by_win((Evas_Object *)
- mp_util_get_main_window_handle
- ());
- if (bLandscape) {
- *width = winHeight / VP_GENLIST_THUMB_LANDSPACE_COUNT;
- } else {
- *width = winWidth / VP_GENLIST_THUMB_PORTRAIT_COUNT;
+ item_data->icon = img;
+ return img;
}
- *height = VP_ALBUM_THUMB_ICON_HEIGHT * MP_SCALE;
+ return NULL;
}
-/**
- *
- * @param pUserData
- * @param pObject
- * @param pPart
- * @return
- */
-static Evas_Object *__mp_select_view_get_icon_of_grid_cb(const void
- *pUserData,
- Evas_Object *
- pObject,
- const char *pPart)
+static void __mp_select_view_grid_item_del_cb(void *data, Evas_Object *obj, void *event_info)
{
- VideoLogInfo("in __mp_select_view_get_icon_of_grid_cb");
- if (!g_pSelectHandle || !pObject) {
- VideoLogError("g_pMainViewWidgetOfSelectList is NULL");
- return NULL;
+ if(g_pSelectHandle == NULL)
+ {
+ VideoLogError("g_pSelectHandle is invalid");
+ return;
}
-
- int nGenItemIndex = (int) pUserData;
- int nHeight = 0;
- int nWidth = 0;
- mp_select_view_get_icon_dimensions(&nHeight, &nWidth);
-
- Evas_Object *pGengrid =
- __mp_select_view_create_gengrid(pObject, nWidth, nHeight);
- __mp_select_view_append_grid_items(pGengrid, nGenItemIndex);
-
- return pGengrid;
+ stGengridItemData *item_data = (stGengridItemData*)data;
+ elm_object_item_data_set(item_data->item, NULL);
+ free(item_data);
}
/**
*
- * @param nVideoItemIndex
- * @return
+ * @param pObjVideosList
+ * @param nGenItemIndex
*/
-int mp_select_view_thumbnail_to_genlist_index(int nVideoItemIndex)
+static void __mp_select_view_append_grid_items(void *pObjVideosList)
{
- /*nVideoItemIndex = 0-->max */
- if (nVideoItemIndex < 0) {
- VideoLogDebug("invalid nVideoItemIndex");
- return 0;
- }
- g_pSelectHandle->bLandscape =
- mp_rotate_ctrl_check_landspace_by_win((Evas_Object *)
- mp_util_get_main_window_handle
- ());
- int nItemCount = VP_GENLIST_THUMB_PORTRAIT_COUNT;
- int nGenlistIndex = 0;
- if (g_pSelectHandle->bLandscape) {
- nItemCount = VP_GENLIST_THUMB_LANDSPACE_COUNT;
- }
- nGenlistIndex = nVideoItemIndex / nItemCount;
- VideoLogWarning("in mp_select_view_thumbnail_to_genlist_index %d",
- nGenlistIndex);
- return nGenlistIndex;
-}
+ if (!g_pSelectHandle) {
+ VideoLogInfo("invalid handle");
+ return;
+ }
+ VideoLogInfo("");
-/**
- *
- * @param pGenlist
- * @return
- */
-static bool __mp_select_view_append_grid_layout(void *pGenlist)
-{
- VideoLogInfo("in append grid layout");
- if (!pGenlist || !g_pSelectHandle) {
- VideoLogError("error handle.");
- return FALSE;
- }
- int nIndex = 0;
- int nVideoListSize = mp_util_svc_get_number_of_video_item_by_type();
- if (nVideoListSize <= 0) {
- VideoLogWarning("nVideoListSize = %d", nVideoListSize);
- return FALSE;
- } else
- VideoLogWarning("nVideoListSize = %d", nVideoListSize);
-
- MP_DEL_ITC(g_pSelectHandle->pGenListItc);
- g_pSelectHandle->pGenListItc = elm_genlist_item_class_new();
-
- g_pSelectHandle->pGenListItc->item_style = "video/1icon.thumbnail";
- g_pSelectHandle->pGenListItc->func.text_get = NULL;
- g_pSelectHandle->pGenListItc->func.content_get =
- (void *) __mp_select_view_get_icon_of_grid_cb;
- g_pSelectHandle->pGenListItc->func.state_get = NULL;
- g_pSelectHandle->pGenListItc->func.del = NULL;
- g_pSelectHandle->pGenListItc->decorate_item_style = NULL;
-
- MP_DEL_ITC(g_pSelectHandle->pGenListLandscapeItc);
- g_pSelectHandle->pGenListLandscapeItc = elm_genlist_item_class_new();
- g_pSelectHandle->pGenListLandscapeItc->item_style =
- "video/1icon.thumbnail.landscape";
- g_pSelectHandle->pGenListLandscapeItc->func.text_get = NULL;
- g_pSelectHandle->pGenListLandscapeItc->func.content_get =
- (void *) __mp_select_view_get_icon_of_grid_cb;
- g_pSelectHandle->pGenListLandscapeItc->func.state_get = NULL;
- g_pSelectHandle->pGenListLandscapeItc->func.del = NULL;
- g_pSelectHandle->pGenListLandscapeItc->decorate_item_style = NULL;
-
- int nGenlistRow = 0;
- nGenlistRow =
- mp_select_view_thumbnail_to_genlist_index(nVideoListSize - 1);
-
- if (g_pSelectHandle->bLandscape) {
- for (nIndex = 0; nIndex <= nGenlistRow; nIndex++) {
- elm_genlist_item_append(pGenlist,
- g_pSelectHandle->pGenListLandscapeItc,
- (void *) nIndex, NULL,
- ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ if (!pObjVideosList) {
+ VideoLogInfo("gengrid object is invalid.");
+ return;
}
- } else {
- for (nIndex = 0; nIndex <= nGenlistRow; nIndex++) {
- elm_genlist_item_append(pGenlist, g_pSelectHandle->pGenListItc,
- (void *) nIndex, NULL,
- ELM_GENLIST_ITEM_NONE, NULL, NULL);
+
+ if(g_pSelectHandle->pSelectGIC == NULL)
+ {
+ g_pSelectHandle->pSelectGIC = elm_gengrid_item_class_new();
+ g_pSelectHandle->pSelectGIC->item_style = "videolist";
+ g_pSelectHandle->pSelectGIC->func.text_get = __mp_select_view_get_label_of_grid_item_cb;;
+ g_pSelectHandle->pSelectGIC->func.content_get = __mp_select_view_get_grid_icon_cb;
+ g_pSelectHandle->pSelectGIC->func.state_get = NULL;
+ g_pSelectHandle->pSelectGIC->func.del = NULL;
}
- }
- return TRUE;
-}
-#endif
+ int nVideoListSize = mp_util_svc_get_number_of_video_item_by_type();
-#ifdef VS_FEATURE_LIST_VIEW
-/**
- *
- * @param pVideosGenlist
- */
-static void __mp_select_view_append_video_items(void *pVideosGenlist)
-{
- VideoLogInfo("");
- if (!g_pSelectHandle) {
- VideoLogError("");
- return;
- }
+ int nIndex = 0;
- int nIndex = 0;
- int nVideoListSize = mp_util_svc_get_number_of_video_item_by_type();
-
- MP_DEL_ITC(g_pSelectHandle->pGenListItc);
- g_pSelectHandle->pGenListItc = elm_genlist_item_class_new();
- g_pSelectHandle->pGenListItc->item_style = "2line.top";
- g_pSelectHandle->pGenListItc->func.text_get =
- (void *) __mp_select_view_get_label_of_video_item_cb;
- g_pSelectHandle->pGenListItc->func.content_get =
- (void *) __mp_select_view_get_icon_of_video_item_cb;
- g_pSelectHandle->pGenListItc->func.state_get = NULL;
- g_pSelectHandle->pGenListItc->func.del = NULL;
- g_pSelectHandle->pGenListItc->decorate_item_style = NULL;
-
- for (nIndex = 0; nIndex < nVideoListSize; nIndex++) {
- elm_genlist_item_append(pVideosGenlist,
- g_pSelectHandle->pGenListItc,
- (void *) nIndex, NULL,
- ELM_GENLIST_ITEM_NONE,
- __mp_select_view_genlist_selected_cb,
- (void *) nIndex);
- }
+ for (nIndex = 0; nIndex < nVideoListSize; nIndex++) {
+ stGengridItemData *item_data = calloc(1, sizeof(stGengridItemData));
+ if(item_data == NULL)
+ {
+ VideoLogError("Failed to allocate memory for item data");
+ return;
+ }
+ item_data->videoIndex = nIndex;
+ item_data->item = elm_gengrid_item_append(pObjVideosList, g_pSelectHandle->pSelectGIC,
+ (void *) item_data,
+ __mp_select_view_gengrid_item_selected_cb,
+ (void *) item_data);
+ elm_gengrid_item_select_mode_set(item_data->item, ELM_OBJECT_SELECT_MODE_ALWAYS);
+ elm_object_item_del_cb_set(item_data->item, __mp_select_view_grid_item_del_cb);
+ }
}
#endif
return FALSE;
}
- elm_genlist_clear(pGenlist);
- __mp_select_view_append_video_items(pGenlist);
+ elm_gengrid_clear((Evas_Object*)pGenlist);
+ __mp_select_view_append_grid_items(pGenlist);
} else
#endif
if (g_pSelectHandle->nViewType == MP_LIST_VIEW_AS_FOLDER_LIST) {
return FALSE;
}
- elm_genlist_clear(pGenlist);
- __mp_select_view_append_grid_layout(pGenlist);
+ elm_gengrid_clear((Evas_Object*)pGenlist);
+ __mp_select_view_append_grid_items(pGenlist);
} else {
VideoLogWarning("Folder view");
/*update folder list data */
return FALSE;
}
- elm_genlist_clear(pGenlist);
- __mp_select_view_append_folder_items(pGenlist);
+ elm_gengrid_clear((Evas_Object*)pGenlist);
+ __mp_select_view_append_grid_items(pGenlist);
}
} else if (g_pSelectHandle->nViewType ==
MP_LIST_VIEW_AS_THUMBNAIL_LIST) {
return FALSE;
}
- elm_genlist_clear(pGenlist);
- __mp_select_view_append_grid_layout(pGenlist);
+ elm_gengrid_clear((Evas_Object*)pGenlist);
+ __mp_select_view_append_grid_items(pGenlist);
}
evas_object_show(pGenlist);
* @param pParent
* @return
*/
-Evas_Object *mp_select_view_create_internal_layout(void *pParent)
+Evas_Object *mp_select_view_create_internal_layout(void *parent)
{
- if (!pParent) {
- VideoLogInfo("[ERR]");
+ if (!parent) {
+ VideoLogInfo("parent object for base layout is invalid");
return NULL;
}
VideoLogInfo("");
- if (g_pSelectWidget->pBaselayout) {
- evas_object_del(g_pSelectWidget->pBaselayout);
- g_pSelectWidget->pBaselayout = NULL;
- }
char edj_path[1024] = { 0 };
-
char *path = app_get_resource_path();
- snprintf(edj_path, 1024, "%s%s/%s", path, "edje",
- VIDEO_PLAYER_REMOVE_LIST_EDJ);
+ snprintf(edj_path, 1024, "%s%s/%s", path, "edje", VIDEO_CUSTOM_THEME);
free(path);
- g_pSelectWidget->pBaselayout = elm_layout_add(pParent);
- elm_layout_file_set(g_pSelectWidget->pBaselayout, edj_path,
- REMOVE_LIST_EDJ_GROUP);
- evas_object_size_hint_weight_set(g_pSelectWidget->pBaselayout,
- EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_size_hint_align_set(g_pSelectWidget->pBaselayout,
- EVAS_HINT_FILL, EVAS_HINT_FILL);
-
- return g_pSelectWidget->pBaselayout;
+
+ Evas_Object* layout = elm_layout_add(parent);
+ elm_layout_file_set(layout, edj_path, "gengrid/layout");
+ evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+ return layout;
}
/**
bool bNormalShow = TRUE;
bNormalShow =
- mp_select_view_arrange_video_list(g_pSelectHandle->pGenlist, TRUE);
+ mp_select_view_arrange_video_list(g_pSelectHandle->pGenlist, FALSE);
if (bNormalShow) {
Elm_Object_Item *pItem = NULL;
- pItem = elm_genlist_first_item_get(g_pSelectHandle->pGenlist);
+ pItem = elm_gengrid_first_item_get(g_pSelectHandle->pGenlist);
if (pItem) {
- elm_genlist_item_bring_in(pItem, ELM_GENLIST_ITEM_SCROLLTO_IN);
+ elm_gengrid_item_bring_in(pItem, ELM_GENGRID_ITEM_SCROLLTO_IN);
}
if (SELECT_TYPE_DETAIL == g_pSelectHandle->eSelType) {
mp_detail_view_update();
Evas_Object *pTopNaviFrame = NULL;
pTopNaviFrame =
elm_naviframe_item_pop(g_pSelectHandle->pNaviFrameHandle);
- evas_object_del(pTopNaviFrame);
+ //evas_object_del(pTopNaviFrame);
}
-/**
- *
- */
-void mp_select_view_create_genlist()
+static Evas_Object* _create_gengrid(Evas_Object *parent)
{
- if (!g_pSelectHandle || !g_pSelectWidget) {
- VideoLogError("Main handles of list view are not existed.");
- return;
- }
-
- VideoLogInfo("");
-
- g_pSelectHandle->pGenlist = elm_genlist_add(g_pSelectWidget->pBox);
- if (!g_pSelectHandle->pGenlist) {
- VideoLogError("pGenlist is not existed.");
- return;
+ if(g_pSelectWidget == NULL || parent == NULL)
+ {
+ VideoLogError("gengrid parent [%p] or widget handle [%p] maybe be invalid", g_pSelectWidget, parent);
+ return NULL;
}
- elm_scroller_bounce_set(g_pSelectHandle->pGenlist, EINA_FALSE,
- EINA_TRUE);
- evas_object_size_hint_weight_set(g_pSelectHandle->pGenlist,
- EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_size_hint_align_set(g_pSelectHandle->pGenlist,
- EVAS_HINT_FILL, EVAS_HINT_FILL);
- elm_genlist_block_count_set(g_pSelectHandle->pGenlist,
- VIDEO_GENLIST_BLOCK_COUNT);
- elm_genlist_homogeneous_set(g_pSelectHandle->pGenlist, EINA_TRUE);
- elm_genlist_mode_set(g_pSelectHandle->pGenlist, ELM_LIST_COMPRESS);
- elm_genlist_select_mode_set(g_pSelectHandle->pGenlist,
- ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
- elm_box_pack_end(g_pSelectWidget->pBox, g_pSelectHandle->pGenlist);
- elm_object_part_content_set(g_pSelectWidget->pBaselayout,
- SWALLOW_LISTVIEW_CONTENT,
- g_pSelectWidget->pBox);
+ Evas_Object *gengrid = elm_gengrid_add(parent);
+ evas_object_size_hint_weight_set(gengrid, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(gengrid, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ elm_gengrid_item_size_set(gengrid, GENGRID_ITEM_WIDTH, GENGRID_ITEM_HEIGHT);
- bool bNormalShow = TRUE;
- bNormalShow =
- mp_select_view_arrange_video_list(g_pSelectHandle->pGenlist,
- FALSE);
- if (!bNormalShow) {
- VideoLogError("invalid view");
- mp_select_view_destroy();
- return;
- }
- evas_object_show(g_pSelectHandle->pGenlist);
+ return gengrid;
}
+
/**
*
* @param pParent
}
VideoLogInfo("");
- g_pSelectWidget->pBaselayout =
- mp_select_view_create_internal_layout(pParent);
+ g_pSelectWidget->pBaselayout = mp_select_view_create_internal_layout(pParent);
if (!g_pSelectWidget->pBaselayout) {
VideoLogError("pBaselayout is not existed.");
return;
}
- evas_object_event_callback_add(g_pSelectWidget->pBaselayout,
- EVAS_CALLBACK_DEL,
- __mp_select_view_base_layout_del_cb,
- NULL);
- g_pSelectWidget->pBox = elm_box_add(g_pSelectWidget->pBaselayout);
- if (!g_pSelectWidget->pBox) {
- VideoLogError("pBox is not existed.");
+ g_pSelectHandle->pGenlist = _create_gengrid(g_pSelectWidget->pBaselayout);
+ if(g_pSelectHandle->pGenlist == NULL)
+ {
+ VideoLogError("Failed to create gengrid for select view");
return;
}
+ elm_object_part_content_set(g_pSelectWidget->pBaselayout, BASE_LAYOUT_SWALLOW, (Evas_Object*)g_pSelectHandle->pGenlist);
- mp_select_view_create_genlist();
+ mp_select_view_arrange_video_list(g_pSelectHandle->pGenlist, FALSE);
- Evas_Object *pLeftbtn = elm_button_add(pParent);
- elm_object_style_set(pLeftbtn, "naviframe/end_btn/default");
- evas_object_smart_callback_add(pLeftbtn, "clicked",
+ Evas_Object *backButton = elm_button_add(pParent);
+ elm_object_style_set(backButton, "naviframe/back_btn/default");
+ evas_object_smart_callback_add(backButton, "clicked",
__mp_select_soft_back_button_cb, NULL);
char *szTitle = NULL;
g_pSelectHandle->pNaviFrameItem =
elm_naviframe_item_push(g_pSelectHandle->pNaviFrameHandle, szTitle,
- pLeftbtn, NULL,
+ backButton, NULL,
g_pSelectWidget->pBaselayout, NULL);
elm_object_item_domain_text_translatable_set(g_pSelectHandle->
MpVideoListTabType eTabType)
{
VideoLogInfo("");
- if (g_pSelectHandle || g_pSelectWidget) {
- mp_select_view_destroy();
- }
g_pSelectHandle =
(st_SelectViewHandle *) calloc(1, sizeof(st_SelectViewHandle));
g_pSelectHandle->eTabType = eTabType;
g_pSelectHandle->euLev =
pFolderUrl ? MP_DB_UPDATE_LEV_2 : MP_DB_UPDATE_LEV_1;
- g_pSelectHandle->nViewType = mp_view_as_ctrl_get_type();
+ g_pSelectHandle->nViewType = mp_list_view_view_type_get();
g_pSelectHandle->bLandscape =
mp_rotate_ctrl_check_landspace_by_win((Evas_Object *)
mp_util_get_main_window_handle
szTitle);
g_free(szTitle);
}
-
-/**
- *
- * @param pUserData
- * @param e
- * @param pObject
- * @param pEventInfo
- */
-static void __mp_select_view_base_layout_del_cb(void *pUserData, Evas * e,
- Evas_Object * pObject,
- void *pEventInfo)
-{
- __mp_select_view_reset();
-}
static void __mp_auto_play_ctrl_select_item_cb(void *pUserData,
Evas_Object * pObject,
void *pEventInfo);
-static void __mp_auto_play_ctrl_select_radio_cb(void *pUserData,
- Evas_Object * pObject,
- void *pEventInfo);
-
/**
*
* @param pPart
* @return
*/
-static char *__mp_auto_play_ctrl_get_label_of_genlsit_item_cb(const void
- *pUserData,
- Evas_Object *
- pObject,
- const char
- *pPart)
+static char *__mp_auto_play_ctrl_get_label_of_genlsit_item_cb(void *pUserData, Evas_Object *pObject, const char *pPart)
{
int nIndex = (int) pUserData;
- if (!strcmp(pPart, "elm.text") || !strcmp(pPart, "elm.text.main.left")) {
+ if (!strcmp(pPart, "elm.text")) {
switch (nIndex) {
case MP_LIST_AUTO_PLAY_ON:
return strdup(VIDEOS_STRING_COM_ON);
return NULL;
}
+static void __mp_auto_play_ctrl_popup_dismissed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ mp_auto_play_ctrl_hide();
+}
+
+static void __mp_auto_play_ctrl_radio_animation_finished(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+ if(g_pAutoPlayHandle) {
+ elm_popup_dismiss(g_pAutoPlayHandle->pPopUpHandle);
+ }
+}
+
+
/**
*
* @param pUserData
* @param pPart
* @return
*/
-static Evas_Object *__mp_auto_play_ctrl_get_icon_of_genlsit_item_cb(const
- void
- *pUserData,
- Evas_Object
- *
- pObject,
- const
- char
- *pPart)
+static Evas_Object *__mp_auto_play_ctrl_get_icon_of_genlsit_item_cb(void *pUserData, Evas_Object *pObject, const char *pPart)
{
if (!g_pAutoPlayHandle) {
int nIndex = (int) pUserData;
Evas_Object *pTmpRadio = NULL;
- if (!strcmp(pPart, "elm.swallow.end") || !strcmp(pPart, "elm.icon.2")) {
+ if (!strcmp(pPart, "elm.icon")) {
pTmpRadio = elm_radio_add(pObject);
elm_radio_state_value_set(pTmpRadio, nIndex);
elm_radio_group_add(pTmpRadio, g_pAutoPlayHandle->pGroupRadio);
mp_auto_play_ctrl_set_type(g_pAutoPlayHandle->nAutoPlaySelect);
}
- evas_object_smart_callback_add(pTmpRadio, "changed",
- __mp_auto_play_ctrl_select_radio_cb,
- (void *) pUserData);
+ elm_object_signal_emit(pTmpRadio, "elm,activate,radio,on", "elm");
+ elm_object_signal_callback_add(pTmpRadio, "animation,finished", "", __mp_auto_play_ctrl_radio_animation_finished, (void*)pUserData);
evas_object_show(pTmpRadio);
}
if (nIndex == g_pAutoPlayHandle->nAutoPlaySelect) {
VideoLogInfo("Current state");
- mp_auto_play_ctrl_hide();
+ elm_popup_dismiss(g_pAutoPlayHandle->pPopUpHandle);
} else {
g_pAutoPlayHandle->nAutoPlaySelect = nIndex;
- elm_radio_value_set(g_pAutoPlayHandle->pGroupRadio,
- g_pAutoPlayHandle->nAutoPlaySelect);
+ elm_radio_value_set(g_pAutoPlayHandle->pGroupRadio, g_pAutoPlayHandle->nAutoPlaySelect);
mp_auto_play_ctrl_set_type(g_pAutoPlayHandle->nAutoPlaySelect);
-
- mp_auto_play_ctrl_hide();
}
}
-/**
- *
- * @param pUserData
- * @param pObject
- * @param pEventInfo
- */
-static void __mp_auto_play_ctrl_select_radio_cb(void *pUserData,
- Evas_Object * pObject,
- void *pEventInfo)
-{
-
- if (!g_pAutoPlayHandle) {
- VideoLogError("");
- return;
- }
-
- int nIndex = (int) pUserData;
-
- VideoLogError("====================nindex=%d", nIndex);
- if (nIndex == 1) {
- VideoLogError("====================vp_set_auto_play=true");
- vp_set_auto_play(true);
- } else {
- VideoLogError("====================vp_set_auto_play=false");
- vp_set_auto_play(false);
- }
- if (vp_is_auto_play_on()) {
- VideoLogError("====================found vp_set_auto_play=true");
- }
- if (nIndex == g_pAutoPlayHandle->nAutoPlaySelect) {
- VideoLogInfo("Current state");
- mp_auto_play_ctrl_hide();
- } else {
- g_pAutoPlayHandle->nAutoPlaySelect = nIndex;
- elm_radio_value_set(g_pAutoPlayHandle->pGroupRadio,
- g_pAutoPlayHandle->nAutoPlaySelect);
-
- mp_auto_play_ctrl_set_type(g_pAutoPlayHandle->nAutoPlaySelect);
-
- mp_auto_play_ctrl_hide();
- }
-
-}
-
/**
*
* @param pUserData
Elm_Object_Item *pItem = elm_genlist_last_item_get(obj);
if (pItem) {
- elm_object_item_signal_emit(pItem, "elm,state,bottomline,hide",
- "");
+ elm_object_item_signal_emit(pItem, "elm,state,bottomline,hide", "elm");
}
}
{
VideoLogInfo("");
-
-
mp_auto_play_ctrl_delete_handle();
g_pAutoPlayHandle =
(stMpVideoAutoPlay *) calloc(1, sizeof(stMpVideoAutoPlay));
g_pAutoPlayHandle->pPopUpHandle =
elm_popup_add(mp_util_get_main_window_handle());
- elm_object_style_set(g_pAutoPlayHandle->pPopUpHandle, "theme_bg");
+ elm_popup_align_set(g_pAutoPlayHandle->pPopUpHandle, ELM_NOTIFY_ALIGN_FILL, 0.5);
elm_object_domain_translatable_part_text_set(g_pAutoPlayHandle->
pPopUpHandle,
mp_util_get_main_window_handle(),
"rotation,changed",
__mp_auto_play_ctrl_rotate_cb, NULL);
+ evas_object_smart_callback_add(g_pAutoPlayHandle->pPopUpHandle, "dismissed", __mp_auto_play_ctrl_popup_dismissed_cb, NULL);
+
+ g_pAutoPlayHandle->pBox = elm_box_add(g_pAutoPlayHandle->pPopUpHandle);
+ evas_object_size_hint_weight_set(g_pAutoPlayHandle->pBox, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
// Set item of Genlist.
MP_DEL_ITC(g_pAutoPlayHandle->stAutoPlayItc);
g_pAutoPlayHandle->stAutoPlayItc = elm_genlist_item_class_new();
- g_pAutoPlayHandle->stAutoPlayItc->item_style = "default"; //"1text.1icon.2/popup";
- g_pAutoPlayHandle->stAutoPlayItc->func.text_get =
- (void *) __mp_auto_play_ctrl_get_label_of_genlsit_item_cb;
- g_pAutoPlayHandle->stAutoPlayItc->func.content_get =
- (void *) __mp_auto_play_ctrl_get_icon_of_genlsit_item_cb;
+ g_pAutoPlayHandle->stAutoPlayItc->item_style = "1line";
+ g_pAutoPlayHandle->stAutoPlayItc->func.text_get = __mp_auto_play_ctrl_get_label_of_genlsit_item_cb;
+ g_pAutoPlayHandle->stAutoPlayItc->func.content_get = __mp_auto_play_ctrl_get_icon_of_genlsit_item_cb;
g_pAutoPlayHandle->stAutoPlayItc->func.state_get = NULL;
g_pAutoPlayHandle->stAutoPlayItc->func.del = NULL;
evas_object_smart_callback_add(g_pAutoPlayHandle->pGenList, "realized",
__mp_auto_play_ctrl_realized, NULL);
- g_pAutoPlayHandle->pGroupRadio =
- elm_radio_add(g_pAutoPlayHandle->pGenList);
- bool pref;
- pref = mp_auto_play_config_get_auto_play_status();
- if (pref) {
+ g_pAutoPlayHandle->pGroupRadio = elm_radio_add(g_pAutoPlayHandle->pGenList);
+
+ if (mp_auto_play_config_get_auto_play_status()) {
g_pAutoPlayHandle->nAutoPlaySelect = MP_LIST_AUTO_PLAY_ON;
} else {
g_pAutoPlayHandle->nAutoPlaySelect = MP_LIST_AUTO_PLAY_OFF;
}
- elm_radio_value_set(g_pAutoPlayHandle->pGroupRadio,
- g_pAutoPlayHandle->nAutoPlaySelect);
+ elm_radio_value_set(g_pAutoPlayHandle->pGroupRadio, g_pAutoPlayHandle->nAutoPlaySelect);
int nMax_view_list = 0;
if (!vp_is_auto_play_on())
(void *) MP_LIST_AUTO_PLAY_ON, NULL,
ELM_GENLIST_ITEM_NONE,
__mp_auto_play_ctrl_select_item_cb, NULL);
+ nMax_view_list++;
elm_genlist_item_append(g_pAutoPlayHandle->pGenList,
g_pAutoPlayHandle->stAutoPlayItc,
(void *) MP_LIST_AUTO_PLAY_OFF, NULL,
__mp_auto_play_ctrl_select_item_cb, NULL);
nMax_view_list++;
+ evas_object_show(g_pAutoPlayHandle->pGenList);
+ elm_box_pack_end(g_pAutoPlayHandle->pBox, g_pAutoPlayHandle->pGenList);
+ evas_object_size_hint_min_set(g_pAutoPlayHandle->pBox, -1, nMax_view_list*72);
+ elm_object_content_set(g_pAutoPlayHandle->pPopUpHandle, g_pAutoPlayHandle->pBox);
- g_pAutoPlayHandle->pBox = elm_box_add(g_pAutoPlayHandle->pPopUpHandle);
-
- mp_widget_ctrl_set_popup_min_size(g_pAutoPlayHandle->pBox, 2,
- VIDEOS_POPUP_114);
- evas_object_size_hint_weight_set(g_pAutoPlayHandle->pBox,
- EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_size_hint_align_set(g_pAutoPlayHandle->pBox,
- EVAS_HINT_FILL, EVAS_HINT_FILL);
-
- elm_box_pack_end(g_pAutoPlayHandle->pBox, g_pAutoPlayHandle->pGenList);
- elm_object_content_set(g_pAutoPlayHandle->pPopUpHandle,
- g_pAutoPlayHandle->pBox);
-
- evas_object_show(g_pAutoPlayHandle->pGenList);
evas_object_show(g_pAutoPlayHandle->pPopUpHandle);
return TRUE;
int nVideoIndex;
bool bPersonalType;
bool bSetToEnd;
+ Eina_Bool isWarningEnabled;
Ecore_Idler *pSetLineEndIdler;
} stRenamePopup;
elm_object_focus_set(g_pRenameHandle->pEntry, EINA_TRUE);
}
+static void __mp_rename_ctrl_info_message_set(Evas_Object *layout, const char *message, Eina_Bool isWarning)
+{
+ if(layout == NULL || g_pRenameHandle == NULL)
+ {
+ VideoLogError("Layout is invalid, can't set message");
+ return;
+ }
+ if(isWarning) {
+ elm_object_signal_emit(layout, "info,msg,warning", "vp");
+ g_pRenameHandle->isWarningEnabled = EINA_TRUE;
+ } else {
+ elm_object_signal_emit(layout, "info,msg,default", "vp");
+ g_pRenameHandle->isWarningEnabled = EINA_FALSE;
+ }
+ elm_object_part_text_set(layout, "inputfield.message", message);
+}
+
+static void __mp_rename_ctrl_thumbnail_update_cb(int nError, const char *szPath,
+ void *pUserData)
+{
+ if(g_pRenameHandle == NULL)
+ {
+ VideoLogError("Rename data handle is invalid");
+ return;
+ }
+ VideoLogInfo("Renamed thumbnail path: %s", szPath);
+}
+
+
/**
*
* @param pUserData
return;
}
+ Evas_Object *layout = elm_object_content_get(g_pRenameHandle->pPopUpHandle);
+ if(layout == NULL)
+ {
+ VideoLogError("content layout for popup is invalid.");
+ return;
+ }
+
int nDstLen = 0;
if (!__mp_rename_ctrl_check_valid_text
(g_pRenameHandle->szSaveFileName, &nDstLen)) {
- mp_util_ticker_toast_with_timeout_cb_popup
- (VIDEOS_NOTIPOP_MSG_INVALID_CHARACTERS,
- __mp_rename_ctrl_timeout_cb);
+ __mp_rename_ctrl_info_message_set(layout, VIDEOS_NOTIPOP_MSG_INVALID_CHARACTERS, EINA_TRUE);
return;
}
MP_FREE_STRING(szFilePath);
MP_FREE_STRING(szFileExt);
MP_FREE_STRING(szLocation);
-
- mp_util_ticker_toast_with_timeout_cb_popup
- (VIDEOS_NOTIPOP_MSG_ALREADY_EXISTS,
- __mp_rename_ctrl_timeout_cb);
-
+ __mp_rename_ctrl_info_message_set(layout, VIDEOS_NOTIPOP_MSG_ALREADY_EXISTS, EINA_TRUE);
return;
}
int ret =
mp_util_rename_file((const char *) szFilePath,
(const char *) szNewFile, &szNewPath);
+ VideoLogDebug("======================> File Rename Return Value: %d\n", ret);
if (!szNewPath) {
VideoLogError("szNewPath is NULL.");
} else {
mp_util_svc_move_to_db(g_pRenameHandle->nVideoIndex,
szNewPath);
+ VideoLogDebug("moving to db: %s index: %d", szNewPath, g_pRenameHandle->nVideoIndex);
+ //this to update video item in video list
+ mp_util_svc_update_video_item(szNewPath, g_pRenameHandle->nVideoIndex);
+ mp_util_svc_register_thumbnail_update_func(g_pRenameHandle->nVideoIndex, __mp_rename_ctrl_thumbnail_update_cb, NULL);
}
char *szMediaUrl = mp_util_config_get_preview();
if (szMediaUrl) {
if (!strcmp(szFilePath, szMediaUrl)) {
mp_util_config_set_preview(szNewFile);
+ VideoLogDebug("Setting Preview URL:%s", szMediaUrl);
}
+ } else {
+ VideoLogError("Failed to get preview url");
}
+
MP_FREE_STRING(szFilePath);
MP_FREE_STRING(szFileExt);
MP_FREE_STRING(szLocation);
void *pEventInfo)
{
VideoLogInfo("");
-
- mp_util_ticker_toast_popup(VIDEOS_NOTIPOP_MSG_MAX_NUM_OF_CHARACTERS,
- false, false);
}
/**
}
VideoLogInfo("");
+ Evas_Object *layout = elm_object_content_get(g_pRenameHandle->pPopUpHandle);
+ if(layout == NULL)
+ {
+ VideoLogError("content layout for popup is invalid.");
+ return;
+ }
+
Evas_Object *en = pObj;
char *entry_data = (char *) elm_entry_entry_get(en);
szTempName));
elm_entry_cursor_begin_set(en);
elm_entry_cursor_pos_set(en, position - 1);
+ __mp_rename_ctrl_info_message_set(layout, VIDEOS_NOTIPOP_MSG_INVALID_CHARACTERS, EINA_TRUE);
- mp_util_status_bar_noti_popup_show
- (VIDEOS_NOTIPOP_MSG_INVALID_CHARACTERS);
MP_FREE_STRING(szFileName);
return;
}
EINA_FALSE);
}
}
+ if(g_pRenameHandle->isWarningEnabled == EINA_TRUE) {
+ __mp_rename_ctrl_info_message_set(layout, VIDEOS_NOTIPOP_MSG_MAX_NUM_OF_CHARACTERS, EINA_FALSE);
+ }
MP_FREE_STRING(g_pRenameHandle->szTempName);
g_pRenameHandle->szTempName = strdup(szFileName);
if (g_pRenameHandle->bSetToEnd) {
////////////////////////////////////////////////////////////
// External function
////////////////////////////////////////////////////////////
+
/**
*
* @param pNaviFrameHandle
g_pRenameHandle->RenameCtrlUserCbFunc = pRenameCtrlCb;
g_pRenameHandle->nVideoIndex = nVideoItemIndex;
g_pRenameHandle->bSetToEnd = TRUE;
+ g_pRenameHandle->isWarningEnabled = EINA_FALSE;
char *pVideoFile =
mp_util_svc_get_video_url(g_pRenameHandle->nVideoIndex);
pLayout = elm_layout_add(g_pRenameHandle->pPopUpHandle);
elm_layout_file_set(pLayout, edj_path, "pv.popup.entry");
+ evas_object_size_hint_min_set(pLayout, -1, 76);
//Create entry
Evas_Object *en = NULL;
__mp_rename_ctrl_set_save_file_name();
MP_FREE_STRING(g_pRenameHandle->szOldName);
g_pRenameHandle->szOldName = g_strdup(g_pRenameHandle->szSaveFileName);
- char *pNameUtf8 =
- elm_entry_utf8_to_markup(g_pRenameHandle->szSaveFileName);
+ char *pNameUtf8 = elm_entry_utf8_to_markup(g_pRenameHandle->szSaveFileName);
+
elm_entry_entry_set(en, pNameUtf8);
MP_FREE_STRING(pNameUtf8);
elm_object_focus_set(en, EINA_TRUE);
elm_object_part_content_set(pLayout, "elm.swallow.content", en);
elm_object_content_set(g_pRenameHandle->pPopUpHandle, pLayout);
+ //Set Info Message
+ __mp_rename_ctrl_info_message_set(pLayout, VIDEOS_NOTIPOP_MSG_MAX_NUM_OF_CHARACTERS, EINA_FALSE);
+
g_pRenameHandle->pEntryClearBtn = elm_button_add(pLayout);
elm_object_style_set(g_pRenameHandle->pEntryClearBtn, "clear");
elm_object_part_content_set(pLayout, "elm.swallow.end",
g_pRenameHandle->pPopupCancelBtn =
elm_button_add(g_pRenameHandle->pPopUpHandle);
- elm_object_style_set(g_pRenameHandle->pPopupCancelBtn, "popup");
+ elm_object_style_set(g_pRenameHandle->pPopupCancelBtn, "border");
elm_object_domain_translatable_text_set(g_pRenameHandle->
pPopupCancelBtn, VIDEOS_STRING,
VIDEOS_COMMON_BUTTON_CANCEL_IDS);
g_pRenameHandle->pPopupOkBtn =
elm_button_add(g_pRenameHandle->pPopUpHandle);
- elm_object_style_set(g_pRenameHandle->pPopupOkBtn, "popup");
+ //elm_object_style_set(g_pRenameHandle->pPopupOkBtn, "border");
elm_object_domain_translatable_text_set(g_pRenameHandle->pPopupOkBtn,
VIDEOS_STRING,
VIDEOS_COMMON_BUTTON_RENAME_IDS);