src/core/mp-streaming-mgr.c
src/core/mp-music-view-mgr.c
src/core/mp-lyric-mgr.c
- src/core/mp-avrcp.c
src/core/mp-volume.c
src/core/mp-http-mgr.c
src/core/mp-language-mgr.c
src/core/mp-playlist-mgr.c
src/core/mp-view-mgr.c
src/core/mp-floating-widget-mgr.c
- src/core/mp-watch-dog.c
src/common/mp-common.c
src/common/mp-edit-callback.c
src/common/mp-item.c
profile = mobile-3.0
# C Sources
-USER_SRCS = src/widget/mp-now-playing.c src/widget/mp-index.c src/widget/mp-shortcut.c src/core/mp-http-mgr.c src/view/mp-edit-view.c src/view/mp-genre-detail-view.c src/widget/mp-all-list.c src/widget/mp-artist-detail-list.c src/setting/src/ms-playlist.c src/widget/mp-track-list.c src/view/mp-folder-view.c src/core/mp-streaming-mgr.c src/view/mp-folder-detail-view.c src/core/mp-watch-dog.c src/core/mp-file-tag-info.c src/widget/mp-player-volume-widget.c src/widget/mp-notification.c src/core/mp-floating-widget-mgr.c src/widget/mp-folder-list.c src/view/mp-add-track-view.c src/core/mp-lyric-mgr.c src/common/mp-media-info.c src/widget/mp-genre-list.c src/widget/mp-mini-player.c src/common/mp-ta.c src/view/mp-create-playlist-view.c src/view/mp-all-view.c src/common/mp-util.c src/common/mp-edit-callback.c src/view/mp-player-view.c src/common/mp-file-util.c src/widget/mp-album-detail-list.c src/widget/mp-ctxpopup.c src/common/mp-menu.c src/core/mp-view-mgr.c src/core/mp-player-mgr.c src/common/mp-app.c src/widget/mp-album-list.c src/widget/mp-artist-list.c src/view/mp-search-view.c src/mp-main.c src/core/mp-player-drm.c src/view/mp-album-detail-view.c src/widget/mp-lyric.c src/view/mp-list-view.c src/setting/src/ms-util.c src/view/mp-now-playing-list-view.c src/common/mp-widget.c src/core/mp-inotify.c src/view/mp-artist-detail-view.c src/core/mp-collect-color-sort.c src/widget/mp-scroll-page.c src/widget/mp-lockscreenmini.c src/view/mp-playlist-detail-view.c src/view/mp-select-track-view.c src/widget/mp-smart-event-box.c src/common/mp-ug-launch.c src/common/mp-common.c src/widget/mp-search.c src/view/mp-set-as-view.c src/setting/src/ms-key-ctrl.c src/view/mp-setting-view.c src/widget/mp-popup.c src/core/mp-setting-ctrl.c src/core/mp-playlist-mgr.c src/view/mp-detail-view.c src/widget/mp-now-playing-list.c src/core/mp-volume.c src/setting/src/ms-auto-off.c src/core/mp-collect-color.c src/setting/src/ms-play-speed.c src/view/mp-view.c src/widget/mp-edit-playlist.c src/widget/mp-list.c src/core/mp-avrcp.c src/core/mp-language-mgr.c src/core/mp-player-control.c src/common/mp-item.c src/widget/mp-playlist-list.c src/widget/mp-minicontroller.c src/common/mp-play.c src/widget/mp-search-list.c
+USER_SRCS = src/widget/mp-now-playing.c src/widget/mp-index.c src/widget/mp-shortcut.c src/core/mp-http-mgr.c src/view/mp-edit-view.c src/view/mp-genre-detail-view.c src/widget/mp-all-list.c src/widget/mp-artist-detail-list.c src/setting/src/ms-playlist.c src/widget/mp-track-list.c src/view/mp-folder-view.c src/core/mp-streaming-mgr.c src/view/mp-folder-detail-view.c src/core/mp-file-tag-info.c src/widget/mp-player-volume-widget.c src/widget/mp-notification.c src/core/mp-floating-widget-mgr.c src/widget/mp-folder-list.c src/view/mp-add-track-view.c src/core/mp-lyric-mgr.c src/common/mp-media-info.c src/widget/mp-genre-list.c src/widget/mp-mini-player.c src/common/mp-ta.c src/view/mp-create-playlist-view.c src/view/mp-all-view.c src/common/mp-util.c src/common/mp-edit-callback.c src/view/mp-player-view.c src/common/mp-file-util.c src/widget/mp-album-detail-list.c src/widget/mp-ctxpopup.c src/common/mp-menu.c src/core/mp-view-mgr.c src/core/mp-player-mgr.c src/common/mp-app.c src/widget/mp-album-list.c src/widget/mp-artist-list.c src/view/mp-search-view.c src/mp-main.c src/core/mp-player-drm.c src/view/mp-album-detail-view.c src/widget/mp-lyric.c src/view/mp-list-view.c src/setting/src/ms-util.c src/view/mp-now-playing-list-view.c src/common/mp-widget.c src/core/mp-inotify.c src/view/mp-artist-detail-view.c src/core/mp-collect-color-sort.c src/widget/mp-scroll-page.c src/widget/mp-lockscreenmini.c src/view/mp-playlist-detail-view.c src/view/mp-select-track-view.c src/widget/mp-smart-event-box.c src/common/mp-ug-launch.c src/common/mp-common.c src/widget/mp-search.c src/view/mp-set-as-view.c src/setting/src/ms-key-ctrl.c src/view/mp-setting-view.c src/widget/mp-popup.c src/core/mp-setting-ctrl.c src/core/mp-playlist-mgr.c src/view/mp-detail-view.c src/widget/mp-now-playing-list.c src/core/mp-volume.c src/setting/src/ms-auto-off.c src/core/mp-collect-color.c src/setting/src/ms-play-speed.c src/view/mp-view.c src/widget/mp-edit-playlist.c src/widget/mp-list.c src/core/mp-language-mgr.c src/core/mp-player-control.c src/common/mp-item.c src/widget/mp-playlist-list.c src/widget/mp-minicontroller.c src/common/mp-play.c src/widget/mp-search-list.c
# EDC Sources
USER_EDCS =
${CMAKE_SOURCE_DIR}/src/core/mp-streaming-mgr.c
${CMAKE_SOURCE_DIR}/src/core/mp-lyric-mgr.c
${CMAKE_SOURCE_DIR}/src/core/mp-http-mgr.c
- ${CMAKE_SOURCE_DIR}/src/core/mp-avrcp.c
${CMAKE_SOURCE_DIR}/src/core/mp-volume.c
${CMAKE_SOURCE_DIR}/src/core/mp-view-mgr.c
# ${CMAKE_SOURCE_DIR}/src/core/mp-voice-control-mgr.c
- ${CMAKE_SOURCE_DIR}/src/core/mp-watch-dog.c
${CMAKE_SOURCE_DIR}/src/common/mp-item.c
${CMAKE_SOURCE_DIR}/src/common/mp-menu.c
profile = mobile-3.0
# C Sources
-USER_SRCS = ../src/common/mp-play.c ../src/core/mp-lyric-mgr.c ../src/common/mp-media-info.c ../src/common/mp-ug-launch.c ../src/common/mp-common.c ../src/widget/mp-mini-player.c ../src/widget/mp-popup.c ../src/widget/mp-scroll-page.c ../src/core/mp-avrcp.c ../src/widget/mp-player-volume-widget.c ../src/core/mp-watch-dog.c ../src/widget/mp-notification.c ../src/common/mp-item.c ../src/widget/mp-ctxpopup.c ../src/core/mp-player-control.c ../src/view/mp-view.c ../src/view/mp-player-view.c ../src/core/mp-language-mgr.c ../src/core/mp-volume.c ../src/common/mp-widget.c ../src/core/mp-setting-ctrl.c ../src/widget/mp-lyric.c ../src/view/mp-detail-view.c ../src/widget/mp-minicontroller.c ../src/core/mp-http-mgr.c ../src/core/mp-player-drm.c ../src/core/mp-view-mgr.c ../src/core/mp-player-mgr.c ../src/common/mp-app.c ../src/widget/mp-smart-event-box.c ../src/common/mp-file-util.c ../src/core/mp-file-tag-info.c ../src/common/mp-menu.c ../src/widget/mp-lockscreenmini.c ../src/mp-main.c ../src/core/mp-collect-color.c ../src/core/mp-collect-color-sort.c ../src/common/mp-util.c ../src/core/mp-playlist-mgr.c ../src/core/mp-streaming-mgr.c
+USER_SRCS = ../src/common/mp-play.c ../src/core/mp-lyric-mgr.c ../src/common/mp-media-info.c ../src/common/mp-ug-launch.c ../src/common/mp-common.c ../src/widget/mp-mini-player.c ../src/widget/mp-popup.c ../src/widget/mp-scroll-page.c ../src/widget/mp-player-volume-widget.c ../src/widget/mp-notification.c ../src/common/mp-item.c ../src/widget/mp-ctxpopup.c ../src/core/mp-player-control.c ../src/view/mp-view.c ../src/view/mp-player-view.c ../src/core/mp-language-mgr.c ../src/core/mp-volume.c ../src/common/mp-widget.c ../src/core/mp-setting-ctrl.c ../src/widget/mp-lyric.c ../src/view/mp-detail-view.c ../src/widget/mp-minicontroller.c ../src/core/mp-http-mgr.c ../src/core/mp-player-drm.c ../src/core/mp-view-mgr.c ../src/core/mp-player-mgr.c ../src/common/mp-app.c ../src/widget/mp-smart-event-box.c ../src/common/mp-file-util.c ../src/core/mp-file-tag-info.c ../src/common/mp-menu.c ../src/widget/mp-lockscreenmini.c ../src/mp-main.c ../src/core/mp-collect-color.c ../src/core/mp-collect-color-sort.c ../src/common/mp-util.c ../src/core/mp-playlist-mgr.c ../src/core/mp-streaming-mgr.c
# EDC Sources
USER_EDCS =
#include <app_manager.h>
int mp_ug_email_attatch_file(const char *filepath, void *user_data);
-int mp_ug_bt_attatch_file(const char *filepath, int count, void *user_data);
-//int mp_ug_wifi_setting();
#ifndef MP_SOUND_PLAYER
int mp_ug_camera_take_picture(void *data);
int mp_ug_gallery_get_picture(void *data);
#endif
-int mp_ug_message_attatch_file(const char *filepath, void *user_data);
int mp_ug_contact_user_sel(const char *filepath, void *user_data);
int mp_ug_set_as_alarm_tone(const char *filepath, int position);
-int mp_ug_show_info(struct appdata *ad);
-void mp_ug_send_message(struct appdata *ad, mp_ug_message_t message);
-#ifdef MP_FEATURE_WIFI_SHARE
-int mp_ug_wifi_attatch_file(const char *filepath, int count, void *user_data);
-#endif
-#ifdef MP_FEATURE_CLOUD
-int mp_ug_dropbox_attatch_file(const char *filepath, int count, void *user_data);
-#endif
-void mp_ug_destory_current(struct appdata *ad);
bool mp_send_via_appcontrol(struct appdata *ad, mp_send_type_e send_type, const char *files);
-bool mp_setting_privacy_launch(void);
-bool mp_setting_wifi_launch(void);
-bool mp_setting_network_launch(void);
#endif // __MP_ug_launch_H_
#include <efl_extension.h>
#include <signal.h>
-// TEMP_BLOCK
-//#include <power.h>
#include <glib.h>
#include <glib-object.h>
#include "mp-player-mgr.h"
#include "mp-widget.h"
#include "mp-util.h"
#include "mp-all-view.h"
-#ifdef MP_FEATURE_S_BEAM
-#include "mp-s-beam.h"
-#endif
#include "mp-volume.h"
#ifndef MP_SOUND_PLAYER
#include "dali-music.h"
#endif
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
-
-#ifdef MP_FEATURE_VOICE_CONTROL
-#include "mp-voice-control-mgr.h"
-#endif
#include <storage/storage.h>
void mp_play_next_and_updateview(void *data);
int ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
}
}
} else if (ad->ear_key_press_cnt == 2) {
case MP_APP_PIPE_CB_ACTIVE_DEVICE_CHANGED:
mp_setting_update_active_device();
mp_view_mgr_post_event(GET_VIEW_MGR, MP_ROUTE_CHANGED);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_track_position(mp_player_mgr_get_position());
-#endif
break;
default:
}
-#ifdef MP_FEATURE_VOICE_CONTROL
-static void
-_mp_app_voice_control_volume_popup_show(void *data)
-{
- struct appdata *ad = data;
- MP_CHECK(ad);
-
- MpView_t *playing_view = GET_PLAYER_VIEW;
- MpView_t *top_vew = mp_view_mgr_get_top_view(GET_VIEW_MGR);
- if ((playing_view == top_vew) && mp_volume_key_is_grabed()) {
- mp_player_view_volume_popup_control(playing_view, true);
- } else {
- mp_util_system_volume_popup_show();
- }
-}
-
-static void
-_mp_app_voice_control_action_cb(mp_voice_ctrl_action_e action, void *data)
-{
- struct appdata *ad = data;
- MP_CHECK(ad);
-
- mp_debug("voic control action = [%d]", action);
- switch (action) {
- case MP_VOICE_CTRL_ACTION_NEXT:
- mp_play_next_file(ad, true);
- break;
-
- case MP_VOICE_CTRL_ACTION_PREVIOUS:
- mp_play_prev_file(ad);
- break;
-
- case MP_VOICE_CTRL_ACTION_PAUSE:
- mp_play_control_play_pause(ad, false);
- break;
-
- case MP_VOICE_CTRL_ACTION_PLAY:
- if (ad->player_state != PLAY_STATE_PLAYING) {
- if (!mp_playlist_mgr_count(ad->playlist_mgr)) {
- mp_media_list_h media = NULL;
- int count = 0;
-
- mp_media_info_list_count(MP_TRACK_BY_PLAYED_TIME, NULL, NULL, NULL, 0, &count);
- if (count > 100) {
- count = 100;
- }
- if (count > 0) {
- mp_media_info_list_create(&media, MP_TRACK_BY_PLAYED_TIME, NULL, NULL, NULL, 0, 0, count);
- } else {
- mp_media_info_list_create(&media, MP_TRACK_ALL, NULL, NULL, NULL, 0, 0, 100);
- }
-
- mp_playlist_mgr_clear(ad->playlist_mgr);
- mp_util_append_media_list_item_to_playlist(ad->playlist_mgr, media, count, 0, NULL);
- mp_media_info_list_destroy(media);
-
- int ret = mp_play_new_file(ad, TRUE);
- if (ret) {
- ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
- }
- } else {
- mp_play_control_play_pause(ad, true);
- }
- }
- break;
-
- case MP_VOICE_CTRL_ACTION_VOLUME_UP:
- _mp_app_voice_control_volume_popup_show(ad);
- mp_player_mgr_volume_up();
- break;
-
- case MP_VOICE_CTRL_ACTION_VOLUME_DOWN:
- _mp_app_voice_control_volume_popup_show(ad);
- mp_player_mgr_volume_down();
- break;
-
- default:
- mp_debug("Not defined");
- break;
- }
-
- power_wakeup(false);
-
-}
-#endif
-
void _mp_app_db_update_cb(void *data)
{
EVENT_TRACE("Post DB Update event");
}
-#ifdef MP_FEATURE_AVRCP_13
-void _mp_app_privacy_popup_resp_cb(void *data, Evas_Object *obj, void *event_info)
-{
- struct appdata *ad = mp_util_get_appdata();
- MP_CHECK(ad);
- mp_popup_destroy(ad);
-
- int response = (int)event_info;
- if (response == MP_POPUP_YES) {
- //show settings
- mp_setting_privacy_launch();
- }
-}
-#endif
-
-
-
static void mp_app_now_playing_id_changed_cb(void *data, Ecore_File_Monitor *em, Ecore_File_Event event, const char *path)
{
startfunc;
#endif
gNotiPipe = ecore_pipe_add(_mp_app_noti_pipe_handler, ad);
-#ifdef MP_FEATURE_AVRCP_13
- int error = mp_avrcp_target_initialize();
- if (!error) {
- if (ad->current_track_info) {
- mp_track_info_t *info = ad->current_track_info;
- mp_avrcp_noti_track(info->title, info->artist, info->album, info->genre, info->duration);
- }
- error = _mp_app_set_avrcp_mode(ad);
- }
-
- if (error == MP_AVRCP_ERROR_PERMISSION_DENIED) {
- Evas_Object *popup = mp_popup_create(ad->win_main, MP_POPUP_NORMAL, NULL, NULL, _mp_app_privacy_popup_resp_cb, ad);
- mp_popup_desc_set(popup, GET_STR(STR_MP_THE_APP_CONTROL_IS_DISABLED));
- mp_popup_button_set(popup, MP_POPUP_BTN_1, STR_MP_CANCEL, MP_POPUP_NO);
- mp_popup_button_set(popup, MP_POPUP_BTN_2, STR_MP_SETTINGS, MP_POPUP_YES);
- evas_object_show(popup);
- }
-
- mp_avrcp_set_mode_change_cb(_mp_app_avrcp_connection_state_changed_cb, _mp_app_avrcp_shuffle_changed_cb,
- _mp_app_avrcp_repeat_changed_cb, _mp_app_avrcp_eq_changed_cb, NULL);
-#endif
//Replaced for _prod dependency start
WARN_TRACE("Enter sound_manager_set_available_route_changed_cb");
int ret = sound_manager_set_device_connected_cb(SOUND_DEVICE_ALL_MASK, _mp_add_available_route_changed_cb, ad);
}
WARN_TRACE("Leave sound_manager_set_active_device_changed_cb");
-
-#ifdef MP_FEATURE_VOICE_CONTROL
- mp_voice_ctrl_mgr_initialize((int)ad->xwin);
- mp_voice_ctrl_mgr_set_action_callback(_mp_app_voice_control_action_cb, ad);
- if (!ad->is_focus_out) {
- mp_voice_ctrl_mgr_start_listening();
- }
-#endif
-
ret = mp_media_info_set_db_update_cb(_mp_app_db_update_cb, NULL);
if (ret) {
ERROR_TRACE("Unable to set db update cb [0x%x]", ret);
}
//mp_file_monitor_del(ECORE_FILE_MONITOR_TYPE_INOTIFY);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_target_finalize();
-#endif
-
if (gNotiPipe) {
ecore_pipe_del(gNotiPipe);
gNotiPipe = NULL;
}
-#ifdef MP_FEATURE_VOICE_CONTROL
- mp_voice_ctrl_mgr_set_action_callback(NULL, NULL);
- mp_voice_ctrl_mgr_finalize();
-#endif
-
mp_media_info_unset_db_update_cb();
return TRUE;
#include "mp-set-as-view.h"
#include "mp-playlist-list.h"
#include "mp-make-offline-view.h"
-#include "mp-avrcp.h"
#include "mp-setting-ctrl.h"
#include "mp-ug-launch.h"
#include "mp-edit-playlist.h"
elm_exit();
}
-#ifdef MP_FEATURE_CLOUD
-static char *
-_mp_common_cloud_popup_label_get(void *data, Evas_Object * obj, const char *part)
-{
- int mode = (int)data;
-
- char *label = NULL;
- if (mode == MP_TRACK_LIST_VIEW_ALL) {
- label = STR_MP_ALL_CONTENTS;
- } else if (mode == MP_TRACK_LIST_VIEW_LOCAL) {
- label = STR_MP_CONTENTS_IN_PHONE;
- } else {
- label = STR_MP_CONTENTS_IN_CLOUD;
- }
-
- return g_strdup(GET_STR(label));
-}
-
-static Evas_Object *
-_mp_common_cloud_popup_content_get(void *data, Evas_Object * obj, const char *part)
-{
- Evas_Object *radio = elm_radio_add(obj);
- elm_radio_state_value_set(radio, (int)data);
-
- MpListView_t *view = evas_object_data_get(obj, "view");
- if (view) {
- elm_radio_group_add(radio, view->radio_btn);
- MpCloudView_e mode = mp_track_list_get_cloud_view((MpTrackList_t *)view->content_to_show);
- elm_radio_value_set(view->radio_btn, mode);
- }
- evas_object_show(radio);
- return radio;
-}
-
-static void
-_mp_common_view_as_popup_radio_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
- MpListView_t *view = data;
- MP_CHECK(view);
- MP_CHECK(view->radio_btn);
- MP_CHECK(view->content_to_show);
-
- MpCloudView_e request = elm_radio_value_get(view->radio_btn);
- MpCloudView_e current = view->content_to_show->cloud_view_type;
- EVENT_TRACE("cloud view change request [%d => %d]", current, request);
-
- if (request != current) {
- view->content_to_show->cloud_view_type = request;
- mp_list_update(view->content_to_show);
- view->cloud_view = request;
- }
-}
-
-static void
-_mp_common_cloud_radio_del_cb(void *data, Evas * evas, Evas_Object * obj, void *event_info)
-{
- startfunc;
- MpView_t *view = (MpView_t *)data;
- MP_CHECK(view);
- view->radio_btn = NULL;
-}
-
-static void
-_mp_common_cloud_view_popup_item_sel(void *data, Evas_Object *obj, void *event_info)
-{
- DEBUG_TRACE_FUNC();
-
- MpView_t *view = (MpView_t *)data;
- MP_CHECK(view);
- MP_CHECK(view->radio_btn);
-
- Elm_Object_Item *item = event_info;
- MP_CHECK(item);
-
- MpListDisplayMode_e mode = (int)elm_object_item_data_get(item);
- elm_radio_value_set(view->radio_btn, mode);
- evas_object_smart_callback_call(view->radio_btn, "changed", NULL);
-
- struct appdata *ad = mp_util_get_appdata();
- MP_CHECK(ad);
- mp_popup_destroy(ad);
-}
-
-void mp_common_cloud_view_cb(void *data, Evas_Object *obj, void *event_info)
-{
- eventfunc;
-
- struct appdata *ad = mp_util_get_appdata();
- MpView_t *view = data;
- mp_evas_object_del(view->more_btn_ctxpopup);
-
- Evas_Object *popup = mp_genlist_popup_create(ad->win_main, MP_POPUP_CLOUD_VIEW, view, ad);
- MP_CHECK(popup);
-
- mp_evas_object_del(view->radio_btn);
- view->radio_btn = elm_radio_add(popup);
- elm_radio_state_value_set(view->radio_btn, -1);
- evas_object_smart_callback_add(view->radio_btn, "changed", _mp_common_view_as_popup_radio_changed_cb, view);
- evas_object_event_callback_add(view->radio_btn, EVAS_CALLBACK_DEL, _mp_common_cloud_radio_del_cb, view);
- evas_object_hide(view->radio_btn);
- Evas_Object *genlist = evas_object_data_get(popup, "genlist");
- MP_CHECK(genlist);
-
- evas_object_data_set(genlist, "view", (void *)view);
-
- static Elm_Genlist_Item_Class itc;
- itc.item_style = "1text.1icon.3";
- itc.func.text_get = _mp_common_cloud_popup_label_get;
- itc.func.content_get = _mp_common_cloud_popup_content_get;
- itc.func.state_get = NULL;
- itc.func.del = NULL;
-
- int i = 0;
- while (i < MP_TRACK_LIST_VIEW_MAX) {
- elm_genlist_item_append(genlist, &itc, (void *)i, NULL, ELM_GENLIST_ITEM_NONE,
- _mp_common_cloud_view_popup_item_sel, view);
-
- ++i;
- }
-
-}
-
-void mp_common_ctxpopup_make_offline_cb(void *data, Evas_Object *obj, void *event_info)
-{
- eventfunc;
- MpView_t *view = data;
- mp_evas_object_del(view->more_btn_ctxpopup);
-
- view = (MpView_t*)mp_make_offline_view_create(GET_NAVIFRAME);
- mp_view_mgr_push_view(GET_VIEW_MGR, view, NULL);
- mp_view_update(view);
- mp_view_set_title(view, STR_MP_MAKE_AVAILABLE_OFFLINE);
-}
-#endif
-
void mp_common_go_to_library_cb(void *data, Evas_Object *obj, void *event_info)
{
eventfunc;
mp_storage_type_e storage;
mp_media_info_get_storage_type(item_data->handle, &storage);
-#ifdef MP_FEATURE_CLOUD
- if (storage == MP_STORAGE_CLOUD) {
- track_type = MP_TRACK_CLOUD;
- }
-#endif
#ifdef MP_FEATURE_STORE
if (storage == MP_STORAGE_MUSICHUB) {
track_type = MP_TRACK_STORE;
if (item) {
mp_util_load_track_info(ad, item, &ad->current_track_info);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_track(ad->current_track_info->title,
- ad->current_track_info->artist, ad->current_track_info->album,
- ad->current_track_info->date, ad->current_track_info->duration);
-#endif
}
}
if (ret == MP_PLAY_ERROR_NO_SONGS) {
mp_widget_text_popup(NULL, GET_STR(STR_MP_UNABLE_TO_PLAY_ERROR_OCCURED));
}
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
}
if (svc_handle) {
break;
}
default: {
-#ifdef MP_FEATURE_CLOUD
- mp_storage_type_e storage;
- ret = mp_media_info_get_media_id(item_handle, &fid);
- ret = mp_media_info_get_storage_type(item_handle, &storage);
- if (storage == MP_STORAGE_CLOUD) {
- return mp_cloud_delete_content(fid, true);
- } else {
- ret = mp_media_info_get_file_path(item_handle, &uri);
- MP_CHECK_VAL(ret == 0, -1);
-
- if (mp_util_delete_track(NULL, fid, uri) != MP_FILE_DELETE_ERR_NONE) {
- DEBUG_TRACE("Fail to delete item, fid: %d, path: %s", fid, uri);
- return -1;
- }
- }
-#else
ret = mp_media_info_get_media_id(item_handle, &fid);
ret = mp_media_info_get_file_path(item_handle, &uri);
MP_CHECK_VAL(ret == 0, -1);
DEBUG_TRACE("Fail to delete item, fid: %d, path: %s", fid, uri);
return -1;
}
-#endif
ecore_thread_feedback(g_edit_thread, (void *)MP_EDIT_THREAD_FEEDBACK_TRACK_DELETED);
break;
}
}
#endif
-#ifdef MP_FEATURE_CLOUD
-
-static void
-_mp_edit_cb_offline_thread(void *data, Ecore_Thread *thread)
-{
- startfunc;
- struct appdata *ad = mp_util_get_appdata();
- MP_CHECK(ad);
-
- mp_list_item_data_t *item = NULL;
- mp_media_info_h item_handle = NULL;
- int ret = 0;
- char *fid = NULL;
-
- mp_media_info_connect();
-
- GList *node = g_list_last(g_selected_list);
- MP_CHECK_EXCEP(node);
- while (node) {
- if (ecore_thread_check(thread)) { // pending cancellation
- WARN_TRACE("popup cancel clicked");
- goto mp_exception;
- }
-
- item = node->data;
- node = g_list_previous(node);
- if (!item) {
- WARN_TRACE("CHECK here...");
- ecore_thread_feedback(thread, (void *)MP_EDIT_THREAD_FEEDBACK_CANCEL_BY_EXCEPTION);
- goto mp_exception;
- }
- item_handle = (item->handle);
- if (!item_handle) {
- continue;
- }
-
- switch (g_list_type) {
- case MP_LIST_TYPE_TRACK:
- case MP_LIST_TYPE_ALBUM_DETAIL:
- case MP_LIST_TYPE_ARTIST_DETAIL: {
- ret = mp_media_info_get_media_id(item_handle, &fid);
- MP_CHECK_EXCEP(ret == 0);
-
- ret = mp_cloud_make_offline_available(fid);
- MP_CHECK_EXCEP(ret == 0);
-
- break;
- }
- default:
- ecore_thread_feedback(thread, (void *)MP_EDIT_THREAD_FEEDBACK_CANCEL_BY_EXCEPTION);
- WARN_TRACE("unexpected case...");
- goto mp_exception;
- }
- }
-mp_exception:
- mp_media_info_disconnect();
-}
-
-void
-mp_edit_cb_excute_make_offline_available(void *data)
-{
- startfunc;
- struct appdata *ad = mp_util_get_appdata();
- MP_CHECK(ad);
-
- MpList_t *list = data;
- MP_CHECK(list);
-
- mp_list_selected_item_data_get(list, &g_selected_list);
- MP_CHECK(g_selected_list);
- g_list_type = list->list_type;
- g_group_type = mp_list_get_group_type(list);
- g_selected_count = g_list_length(g_selected_list);
- g_error_count = 0;
- g_edit_operation = MP_EDIT_ADD_TO_PLAYLIST;
-
- Evas_Object *popup = mp_popup_create(ad->win_main, MP_POPUP_PROGRESS, GET_STR("IDS_MUSIC_BODY_ADD_TO_PLAYLIST"), list,
- _mp_edit_progress_popup_response_cb, ad);
- evas_object_show(popup);
-
- g_edit_thread = ecore_thread_feedback_run(
- _mp_edit_cb_offline_thread,
- _mp_edit_cb_edit_thread_notify_cb,
- _mp_edit_cb_edit_thread_end_cb,
- _mp_edit_cb_edit_thread_cancel_cb,
- (const void *)g_selected_list,
- EINA_TRUE);
-
- if (!g_edit_thread) {
- mp_popup_response(ad->popup[MP_POPUP_PROGRESS], MP_POPUP_NO);
- }
- ad->edit_in_progress = true;
-}
-#endif
-
void
mp_edit_cb_excute_delete(void *data)
{
}
ad->edit_in_progress = true;
-}
-
-#endif
-#ifdef MP_FEATURE_CLOUD
-
-static void
-_mp_edit_delete_cloud_popup_response_cb(void *data, Evas_Object * obj, void *event_info)
-{
- startfunc;
- DEBUG_TRACE("");
- struct appdata *ad = mp_util_get_appdata();
- MP_CHECK(ad);
-
- ad->popup_delete = NULL;
- mp_evas_object_del(obj);
-
- int response = (int)event_info;
- if (response == MP_POPUP_NO) {
- return;
- }
-
- mp_edit_cb_excute_delete(data);
-
- endfunc;
- return;
-}
-
-void
-mp_edit_create_delete_cloud_confirm_popup(void *data)
-{
- DEBUG_TRACE("");
- struct appdata *ad = mp_util_get_appdata();
-
- MpList_t *list = data;
- MP_CHECK(list);
-
- Evas_Object *popup = mp_popup_create(ad->win_main, MP_POPUP_NORMAL, NULL, data, _mp_edit_delete_cloud_popup_response_cb, ad);
- ad->popup_delete = popup;
-
- evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
- elm_object_text_set(popup, STR_MP_THIS_WILL_BE_DELETE_FORM_SERVER);
-
- mp_popup_button_set(popup, MP_POPUP_BTN_1, STR_MP_DELETE, MP_POPUP_YES);
-
- evas_object_show(popup);
-
}
#endif
return;
}
-#ifdef MP_FEATURE_CLOUD
- MpList_t *list = data;
- GList *sel_list = NULL;
- GList *node = NULL;
- bool cloud_data = 0;
-
- if (list->list_type == MP_LIST_TYPE_TRACK || list->list_type == MP_LIST_TYPE_ARTIST_DETAIL || list->list_type == MP_LIST_TYPE_ALBUM_DETAIL) {
- int track_type = mp_list_get_track_type(list);
- if (track_type != MP_TRACK_BY_PLAYLIST && track_type != MP_TRACK_BY_ADDED_TIME &&
- track_type != MP_TRACK_BY_PLAYED_TIME && track_type != MP_TRACK_BY_FAVORITE &&
- track_type != MP_TRACK_BY_PLAYED_COUNT) {
- mp_list_selected_item_data_get(list, &sel_list);
- MP_CHECK(sel_list);
-
- node = g_list_first(sel_list);
- while (node) {
- mp_list_item_data_t *item = sel_list->data;
- mp_media_info_h media = item->handle;
- mp_storage_type_e storage_type;
- mp_media_info_get_storage_type(media, &storage_type);
- if (storage_type == MP_STORAGE_CLOUD) {
- cloud_data = 1;
- break;
- }
-
- node = g_list_next(node);
- }
- g_list_free(sel_list);
-
- if (cloud_data) {
- mp_edit_create_delete_cloud_confirm_popup(data);
- return;
- }
- }
- }
-#endif
mp_edit_cb_excute_delete(data);
endfunc;
#define PRINT_STR(s) //DEBUG_TRACE("%s", s);
#define PRINT_INT(i) //DEBUG_TRACE("%d", i);
-#ifdef MP_FEATURE_CLOUD
-#define MP_MEDIA_COND_COMMON ""
-#else
#define MP_MEDIA_COND_COMMON "(MEDIA_STORAGE_TYPE IS NOT 101)" // exclude dropbox
-#endif
#ifdef UG_MUSIC_PLAYER
#define MP_MEDIA_TYPE MP_MEDIA_COND_COMMON"AND ((MEDIA_TYPE=3) OR (MEDIA_TYPE=2))"
MP_SHARE_MESSAGE,
#endif
MP_SHARE_WIFI,
-#ifdef MP_FEATURE_CLOUD
- MP_SHARE_DROPBOX,
-#endif
};
share_type = MP_SHARE_MESSAGE;
}
#endif
-#ifdef MP_FEATURE_WIFI_SHARE
- else if (g_strcmp0(label, WIFI_SYS) == 0) {
- share_type = MP_SHARE_WIFI;
- }
-#endif
-#ifdef MP_FEATURE_CLOUD
- else if (g_strcmp0(label, STR_MP_DROPBOX) == 0) {
- share_type = MP_SHARE_DROPBOX;
- }
-#endif
-
return share_type;
}
else if (share_type == MP_SHARE_MESSAGE) {
fmt = "\n%s";
}
-#endif
-#ifdef MP_FEATURE_WIFI_SHARE
- else if (share_type == MP_SHARE_WIFI) {
- fmt = "|%s";
- }
#endif
else {
fmt = ";%s";
if (share_type == MP_SHARE_EMAIL) {
mp_ug_email_attatch_file(path->str, ad);
}
-#ifdef MP_FEATURE_WIFI_SHARE
- else if (share_type == MP_SHARE_WIFI) {
- mp_ug_wifi_attatch_file(path->str, g_list_length(sel_list), ad);
- }
-#endif
-#ifdef MP_FEATURE_CLOUD
- else if (share_type == MP_SHARE_DROPBOX) {
- mp_ug_dropbox_attatch_file(path->str, g_list_length(sel_list), ad);
- }
-#endif
else {
WARN_TRACE("unsupported type");
}
#include "mp-play.h"
#include "mp-setting-ctrl.h"
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
-
-#ifdef MP_FEATURE_CLOUD
-#include "mp-cloud.h"
-#endif
-
#define PAUSE_OFF_TIMEOUT (2 * 60) // sec
#ifndef MP_SOUND_PLAYER
MP_CHECK_VAL(current_item, -1);
int res = 0;
-#ifdef MP_FEATURE_CLOUD
- if (current_item->track_type == MP_TRACK_CLOUD) {
- char *uri = NULL;
- int ret = mp_cloud_play_available(current_item->uid, current_item);
- if (ret == MP_CLOUD_PLAY_UNAVAILABLE) {
- return MP_PLAY_ERROR_NETWORK;
- } else if (ret == MP_CLOUD_PLAY_STREAMING) {
- return MP_PLAY_ERROR_STREAMING;
- } else {
- //play offline
- IF_FREE(current_item->uri);
- current_item->uri = uri;
- }
- }
-#endif
-
PROFILE_IN("mp_player_control_ready_new_file");
if (mp_util_is_streaming(current_item->uri)) {
res = mp_streaming_mgr_play_new_streaming(ad);
if (ret) {
ERROR_TRACE("Fail to play new file");
ad->freeze_indicator_icon = false;
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
return FALSE;
}
mp_view_mgr_post_event(GET_VIEW_MGR, MP_PLAYING_TRACK_CHANGED);
} else {
ad->auto_next = false;
}
-#ifdef MP_FEATURE_CLOUD
- int i;
- for (i = 0; i < mp_playlist_mgr_count(ad->playlist_mgr); i++) {
- item = mp_playlist_mgr_get_next(ad->playlist_mgr, forced, true);
- if (item && item->track_type == MP_TRACK_CLOUD) {
- if (mp_cloud_play_available(item->uid, NULL) != MP_CLOUD_PLAY_UNAVAILABLE) {
- break;
- }
- } else {
- break;
- }
- }
-#else
item = mp_playlist_mgr_get_next(ad->playlist_mgr, forced, true);
-#endif
#ifdef MP_SOUND_PLAYER
if (ad->is_focus_out) {
DEBUG_TRACE("No playlist and windows focus out");
mp_setting_set_player_state(MP_PLAY_STATE_PLAYING);
mp_app_grab_mm_keys(ad);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_PLAYING);
-#endif
-
#ifdef MP_FEATURE_CONTEXT_ENGINE
mp_context_log_insert(ad, true);
mp_context_notify_playback(true, item->uri);
mp_debug("pause off timer set");
ad->pause_off_timer = ecore_timer_add(PAUSE_OFF_TIMEOUT, _mp_play_control_paused_off_timer_cb, ad);
#endif
-
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_PAUSED);
-#endif
-
endfunc;
}
mp_setting_set_player_state(MP_PLAY_STATE_STOP);
mp_player_view_update_buffering_progress(GET_PLAYER_VIEW, -1);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_STOPPED);
-#endif
-
#ifdef MP_FEATURE_CONTEXT_ENGINE
mp_context_log_insert(ad, false);
mp_context_notify_playback(false, NULL);
ad->freeze_indicator_icon = false;
mp_setting_set_player_state(MP_PLAY_STATE_PLAYING);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_PLAYING);
-#endif
-
ad->auto_resume = false;
#ifdef MP_FEATURE_AUTO_OFF
#define UG_BT_NAME "setting-bluetooth-efl"
#define UG_MSG_NAME "msg-composer-efl"
#define UG_WIFI_NAME "wifi-efl-UG"
-#ifdef MP_FEATURE_WIFI_SHARE
-#define UG_FTM_NAME "fileshare-efl"
-#endif
-#ifdef MP_FEATURE_CLOUD
-#define DROPBOX_PKG_NAME "dropbox-efl"
-#endif
-
#define MP_UG_INFO_PATH "path"
#define MP_UG_INFO_ALBUMART "albumart"
#define MP_UG_INFO_ARTIST "artist"
return (ret) ? 0 : -1;
}
-#ifdef MP_FEATURE_CLOUD
-int
-mp_ug_dropbox_attatch_file(const char *filepath, int count, void *user_data)
-{
- startfunc;
- struct appdata *ad = NULL;
- app_control_h service = NULL;
-
- mp_retvm_if(filepath == NULL, -1, "file path is NULL");
- mp_retvm_if(user_data == NULL, -1, "appdata is NULL");
-
- ad = user_data;
- int err = 0;
-
- err = app_control_create(&service);
- if (err != APP_CONTROL_ERROR_NONE) {
- ERROR_TRACE("Error: app_control_create");
- return -1;
- }
-
- err = app_control_set_operation(service, APP_CONTROL_OPERATION_SEND);
- if (err != APP_CONTROL_ERROR_NONE) {
- ERROR_TRACE("Error: app_control_set_operation().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
-
- err = app_control_set_uri(service, filepath);
- if (err != APP_CONTROL_ERROR_NONE) {
- ERROR_TRACE("Error: app_control_set_uri().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
-
- err = app_control_set_app_id(service, DROPBOX_PKG_NAME);
- if (err != APP_CONTROL_ERROR_NONE) {
- ERROR_TRACE("Error: app_control_set_app_id().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
- /*
- err = app_control_set_window(service, elm_win_xwindow_get(ad->win_main));
- if (err != APP_CONTROL_ERROR_NONE)
- {
- ERROR_TRACE("Error: app_control_set_window().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
- */
- err = app_control_send_launch_request(service, NULL, NULL);
- if (err != APP_CONTROL_ERROR_NONE) {
- ERROR_TRACE("Error: app_control_send_launch_request().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
-
- err = app_control_destroy(service);
- if (err != APP_CONTROL_ERROR_NONE) {
- ERROR_TRACE("Error: app_control_set_operation().. [0x%x]", err);
- }
-
- return 0;
-}
-#endif
-
#ifndef MP_SOUND_PLAYER
static void __mp_ug_gallery_result_cb(app_control_h request, app_control_h reply, app_control_result_e result, void *data)
{
ERROR_TRACE("app_control_create() is failed !!");
return -1;
}
- /*
- app_control_set_window(svc_handle, elm_win_xwindow_get(ad->win_main));
- */
int a, b;
evas_object_geometry_get(ad->win_main, NULL, NULL, &a, &b);
}
if (result_filename) {
- /*update thumbnail in db*/
ret = mp_media_info_playlist_set_thumbnail_path(data, result_filename);
mp_view_mgr_post_event(GET_VIEW_MGR, MP_PLAYLIST_IMAGE_UPDATED);
ERROR_TRACE("app_control_create() is failed !!");
return -1;
}
- /*
- app_control_set_window(svc_handle, elm_win_xwindow_get(ad->win_main));
- */
int a, b;
evas_object_geometry_get(ad->win_main, NULL, NULL, &a, &b);
mp_ug_contact_user_sel(const char *filepath, void *user_data)
{
startfunc;
- //struct appdata *ad = NULL;
app_control_h service = NULL;
int err = 0;
mp_retvm_if(filepath == NULL, -1, "file path is NULL");
- //ad = mp_util_get_appdata();
if (app_control_create(&service) != APP_CONTROL_ERROR_NONE) {
ERROR_TRACE("Error: app_control_create");
app_control_destroy(service);
return -1;
}
- /*
- err = app_control_set_window(service, ad->xwin);
- if (err != APP_CONTROL_ERROR_NONE)
- {
- ERROR_TRACE("Error: app_control_set_window().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
- */
err = app_control_send_launch_request(service, _mp_ug_contact_reply_cb, NULL);
if (err != APP_CONTROL_ERROR_NONE) {
ERROR_TRACE("Error: app_control_send_launch_request().. [0x%x]", err);
mp_ug_set_as_alarm_tone(const char *filepath, int position)
{
startfunc;
- //struct appdata *ad = NULL;
app_control_h service = NULL;
int err = 0;
char *pos = NULL;
mp_retvm_if(filepath == NULL, -1, "file path is NULL");
- //ad = mp_util_get_appdata();
if (app_control_create(&service) != APP_CONTROL_ERROR_NONE) {
ERROR_TRACE("Error: app_control_create");
app_control_destroy(service);
return -1;
}
- /*
- err = app_control_set_window(service, ad->xwin);
- if (err != APP_CONTROL_ERROR_NONE)
- {
- ERROR_TRACE("Error: app_control_set_window().. [0x%x]", err);
- app_control_destroy(service);
- return -1;
- }
- */
err = app_control_send_launch_request(service, NULL, NULL);
if (err != APP_CONTROL_ERROR_NONE) {
ERROR_TRACE("Error: app_control_send_launch_request().. [0x%x]", err);
goto END;
}
- /* appcontrol name */
ret = app_control_set_app_id(service, ug_name);
if (ret != APP_CONTROL_ERROR_NONE) {
mp_error("app_control_set_app_id()... [0x%x]", ret);
goto END;
}
- /* set window */
- /*
- ret = app_control_set_window(service, ad->xwin);
- if (ret != APP_CONTROL_ERROR_NONE) {
- mp_error("app_control_set_window()... [0x%x]", ret);
- goto END;
- }
- */
ret = app_control_send_launch_request(service, NULL, NULL);
if (ret != APP_CONTROL_ERROR_NONE) {
mp_error("app_control_send_launch_request()... [0x%x]", ret);
return result;
}
-bool
-mp_setting_privacy_launch(void)
-{
- startfunc;
-
- //struct appdata *ad = mp_util_get_appdata();
-
- bool result = false;
-
- app_control_h service = NULL;
- int ret = app_control_create(&service);
- if (ret != APP_CONTROL_ERROR_NONE) {
- mp_error("app_control_create()... [0x%x]", ret);
- goto END;
- }
-
- ret = app_control_set_operation(service, "http://tizen.org/appcontrol/operation/configure/privacy");
- if (ret != APP_CONTROL_ERROR_NONE) {
- mp_error("app_control_set_operation()... [0x%x]", ret);
- goto END;
- }
-
- /* set window */
- /*
- ret = app_control_set_window(service, ad->xwin);
- if (ret != APP_CONTROL_ERROR_NONE) {
- mp_error("app_control_set_window()... [0x%x]", ret);
- goto END;
- }
- */
- ret = app_control_send_launch_request(service, NULL, NULL);
- if (ret != APP_CONTROL_ERROR_NONE) {
- mp_error("app_control_send_launch_request()... [0x%x]", ret);
- goto END;
- }
- result = true;
-END:
- if (service) {
- app_control_destroy(service);
- service = NULL;
- }
- return result;
-}
-
static bool
_mp_ug_launch_as_appcontrol(const char *ug_name)
{
MP_CHECK_FALSE(ug_name);
- //struct appdata *ad = mp_util_get_appdata();
- //MP_CHECK_FALSE(ad);
-
bool result = false;
app_control_h service = NULL;
goto END;
}
- /* set window */
- /*
- ret = app_control_set_window(service, ad->xwin);
- if (ret != APP_CONTROL_ERROR_NONE) {
- mp_error("app_control_set_window()... [0x%x]", ret);
- goto END;
- }
- */
ret = app_control_send_launch_request(service, NULL, NULL);
if (ret != APP_CONTROL_ERROR_NONE) {
mp_error("app_control_send_launch_request()... [0x%x]", ret);
}
return result;
}
-
-bool
-mp_setting_wifi_launch(void)
-{
- return _mp_ug_launch_as_appcontrol("wifi-efl-ug");
-}
-
-bool
-mp_setting_network_launch(void)
-{
- return _mp_ug_launch_as_appcontrol("setting-network-efl");
-}
-
mp_media_info_get_file_path(item, &uri);
mp_media_info_get_title(item, &title);
mp_media_info_get_artist(item, &artist);
-#ifdef MP_FEATURE_CLOUD
- mp_storage_type_e storage;
- mp_media_info_get_storage_type(item, &storage);
- if (storage == MP_STORAGE_CLOUD) {
- track_type = MP_TRACK_CLOUD;
- }
-#endif
plst_item = mp_playlist_mgr_item_append(playlist_mgr, uri, uid, title, artist, track_type);
if (i == current_index || !g_strcmp0(uri, path)) {
cur_item = plst_item;
return navi_bar;
}
-#ifdef MP_WATCH_DOG
-#include "mp-watch-dog.h"
-static void _unrealized_cb(void *data, Evas_Object *obj, void *event_info)
-{
- mp_watch_dog_reset();
-}
-#endif
-
static void mp_language_changed(void *data, Evas_Object *obj, void *event_info)
{
elm_genlist_realized_items_update(obj);
list = elm_genlist_add(parent);
MP_CHECK_NULL(list);
-#ifdef MP_WATCH_DOG
- evas_object_smart_callback_add(list, "unrealized", _unrealized_cb, list);
-#endif
evas_object_smart_callback_add(list, "language,changed", mp_language_changed, list);
elm_scroller_bounce_set(list, EINA_FALSE, EINA_TRUE);
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-#ifndef __MP_AVRCP_H__
-#define __MP_AVRCP_H__
-
-#include <stdbool.h>
-
-typedef enum{
- MP_AVRCP_STATE_STOPPED,
- MP_AVRCP_STATE_PLAYING,
- MP_AVRCP_STATE_PAUSED,
- MP_AVRCP_STATE_FF,
- MP_AVRCP_STATE_REW,
-}mp_avrcp_player_state_e;
-
-typedef enum{
- MP_AVRCP_REPEAT_OFF,
- MP_AVRCP_REPEAT_ONE,
- MP_AVRCP_REPEAT_ALL,
-}mp_avrcp_repeat_mode_e;
-
-typedef enum{
- MP_AVRCP_SHUFFLE_OFF,
- MP_AVRCP_SHUFFLE_ON,
-}mp_avrcp_shuffle_mode_e;
-
-typedef enum{
- MP_AVRCP_EQ_OFF,
- MP_AVRCP_EQ_ON,
-}mp_avrcp_eq_state_e;
-
-typedef enum{
- MP_AVRCP_ERROR_NONE,
- MP_AVRCP_ERROR,
- MP_AVRCP_ERROR_PERMISSION_DENIED,
-}MpAvrcpErr_e;
-
-typedef void (*mp_avrcp_connection_state_changed_cb) (bool connected, const char *remote_address, void *user_data);
-typedef void (*mp_avrcp_shuffle_changed_cb)(mp_avrcp_shuffle_mode_e mode, void *user_data);
-typedef void (*mp_avrcp_repeat_changed_cb)(mp_avrcp_repeat_mode_e mode, void *user_data);
-typedef void (*mp_avrcp_eq_changed_cb)(mp_avrcp_eq_state_e state, void *user_data);
-
-MpAvrcpErr_e mp_avrcp_target_initialize(void);
-int mp_avrcp_target_finalize(void);
-
-MpAvrcpErr_e mp_avrcp_noti_player_state(mp_avrcp_player_state_e state);
-MpAvrcpErr_e mp_avrcp_noti_eq_state(mp_avrcp_eq_state_e eq);
-MpAvrcpErr_e mp_avrcp_noti_repeat_mode(mp_avrcp_repeat_mode_e repeat);
-MpAvrcpErr_e mp_avrcp_noti_shuffle_mode(mp_avrcp_shuffle_mode_e shuffle);
-MpAvrcpErr_e mp_avrcp_noti_track(const char *title, const char *artist, const char *album, const char *genre, unsigned int duration);
-MpAvrcpErr_e mp_avrcp_noti_track_position(unsigned int position);
-
-MpAvrcpErr_e mp_avrcp_set_mode_change_cb(mp_avrcp_connection_state_changed_cb connection_cb, mp_avrcp_shuffle_changed_cb s_cb,
- mp_avrcp_repeat_changed_cb r_cb, mp_avrcp_eq_changed_cb e_cb, void *user_data);
-
-#endif
-
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-#ifndef __MP_CLOUD_H__
-#define __MP_CLOUD_H__
-
-#include "mp-playlist-mgr.h"
-
-typedef enum
-{
- MP_CLOUD_PLAY_OFFLINE = 0,
- MP_CLOUD_PLAY_STREAMING = 1,
- MP_CLOUD_PLAY_UNAVAILABLE = 2,
-}mp_cloud_playable_e;
-
-int mp_cloud_create(void);
-int mp_cloud_destroy(void);
-mp_cloud_playable_e mp_cloud_play_available(const char *uuid, mp_plst_item *plst_item);
-int mp_cloud_delete_content(const char *uuid, int delete_server);
-int mp_cloud_is_on(int *is_on);
-int mp_cloud_cancel_request(int cancel_id);
-int mp_cloud_make_offline_available(const char *uuid);
-
-#endif
-
typedef enum{
MP_TRACK_URI,
-#ifdef MP_FEATURE_CLOUD
- MP_TRACK_CLOUD,
-#endif
}mp_track_type;
typedef enum {
char *title;
char *artist;
char *thumbnail_path;
-#ifdef MP_FEATURE_CLOUD
- char *streaming_uri;
- unsigned int cancel_id;
-#endif
int playlist_memeber_id;
Eina_Bool isDiffAP;
bool out_of_list;
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-
-
-#ifndef __MP_VOICE_CONTROL_MANAGER_H__
-#define __MP_VOICE_CONTROL_MANAGER_H__
-
-#include <stdbool.h>
-
-typedef enum {
- MP_VOICE_CTRL_ACTION_NONE,
- MP_VOICE_CTRL_ACTION_NEXT,
- MP_VOICE_CTRL_ACTION_PREVIOUS,
- MP_VOICE_CTRL_ACTION_PAUSE,
- MP_VOICE_CTRL_ACTION_PLAY,
- MP_VOICE_CTRL_ACTION_VOLUME_UP,
- MP_VOICE_CTRL_ACTION_VOLUME_DOWN,
-} mp_voice_ctrl_action_e;
-
-typedef void (*Mp_Voice_Ctrl_Action_Cb)(mp_voice_ctrl_action_e action, void *user_data);
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-void mp_voice_ctrl_mgr_set_action_callback(Mp_Voice_Ctrl_Action_Cb action_cb, void *user_data);
-bool mp_voice_ctrl_mgr_start_listening();
-void mp_voice_ctrl_mgr_stop_listening();
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /*__MP_VOICE_CONTROL_MANAGER_H__ */
-
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-#ifndef __MP_WATCH_DOG_H__
-#define __MP_WATCH_DOG_H__
-
-void mp_watch_dog_init(void);
-void mp_watch_dog_finalize(void);
-void mp_watch_dog_reset(void);
-
-#endif
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-#include "mp-avrcp.h"
-#include "mp-player-debug.h"
-#include <bluetooth.h>
-#include "mp-define.h"
-#include "mp-player-mgr.h"
-
-#ifdef MP_FEATURE_AVRCP_13
-
-typedef struct {
- mp_avrcp_connection_state_changed_cb connection_cb;
- mp_avrcp_shuffle_changed_cb s_cb;
- mp_avrcp_repeat_changed_cb r_cb;
- mp_avrcp_eq_changed_cb e_cb;
- void *user_data;
-} MpAvrcpCb_t;
-
-static bool gMpAvrcpInitialized;
-static MpAvrcpCb_t *gMpAvrcpCb;
-
-static void _mp_avrcp_equalizer_state_changed_cb(bt_avrcp_equalizer_state_e equalizer, void *user_data)
-{
- eventfunc;
- MP_CHECK(gMpAvrcpCb);
- mp_avrcp_eq_state_e mode ;
- if (equalizer == BT_AVRCP_EQUALIZER_STATE_OFF) {
- mode = MP_AVRCP_EQ_OFF;
- } else {
- mode = MP_AVRCP_EQ_ON;
- }
- if (gMpAvrcpCb->e_cb) {
- gMpAvrcpCb->e_cb(mode, gMpAvrcpCb->user_data);
- }
-}
-
-static void _mp_avrcp_shuffle_mode_changed_cb(bt_avrcp_shuffle_mode_e shuffle, void *user_data)
-{
- eventfunc;
- MP_CHECK(gMpAvrcpCb);
- mp_avrcp_shuffle_mode_e mode ;
- if (shuffle == BT_AVRCP_SHUFFLE_MODE_OFF) {
- mode = MP_AVRCP_SHUFFLE_OFF;
- } else {
- mode = MP_AVRCP_SHUFFLE_ON;
- }
-
- if (gMpAvrcpCb->s_cb) {
- gMpAvrcpCb->s_cb(mode, gMpAvrcpCb->user_data);
- }
-}
-
-static void _mp_avrcp_repeat_mode_changed_cb(bt_avrcp_repeat_mode_e repeat, void *user_data)
-{
- eventfunc;
- MP_CHECK(gMpAvrcpCb);
- mp_avrcp_repeat_mode_e mode ;
- if (repeat == BT_AVRCP_REPEAT_MODE_OFF) {
- mode = MP_AVRCP_REPEAT_OFF;
- } else if (repeat == BT_AVRCP_REPEAT_MODE_SINGLE_TRACK) {
- mode = MP_AVRCP_REPEAT_ONE;
- } else {
- mode = MP_AVRCP_REPEAT_ALL;
- }
-
- if (gMpAvrcpCb->r_cb) {
- gMpAvrcpCb->r_cb(mode, gMpAvrcpCb->user_data);
- }
-}
-
-void _mp_avrcp_connection_state_changed_cb(bool connected, const char *remote_address, void *user_data)
-{
- eventfunc;
- MP_CHECK(gMpAvrcpCb);
- if (gMpAvrcpCb->connection_cb) {
- gMpAvrcpCb->connection_cb(connected, remote_address, gMpAvrcpCb->user_data);
- }
-}
-
-MpAvrcpErr_e mp_avrcp_target_initialize(void)
-{
- startfunc;
- int res = BT_ERROR_NONE;
-
- if (gMpAvrcpInitialized) {
- return 0;
- }
-
- res = bt_initialize();
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- MP_CHECK_VAL(res == BT_ERROR_NONE, res);
-
- res = bt_avrcp_target_initialize(_mp_avrcp_connection_state_changed_cb, NULL);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- MP_CHECK_VAL(res == BT_ERROR_NONE, res);
-
- res = bt_avrcp_set_equalizer_state_changed_cb(_mp_avrcp_equalizer_state_changed_cb, NULL);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- res = bt_avrcp_set_shuffle_mode_changed_cb(_mp_avrcp_shuffle_mode_changed_cb, NULL);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- res = bt_avrcp_set_repeat_mode_changed_cb(_mp_avrcp_repeat_mode_changed_cb, NULL);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
-
- gMpAvrcpInitialized = true;
-
- return res;
-}
-
-int mp_avrcp_target_finalize(void)
-{
- startfunc;
- int res = BT_ERROR_NONE;
-
- if (!gMpAvrcpInitialized) {
- return -1;
- }
-
- res = bt_avrcp_target_deinitialize();
- MP_CHECK_VAL(res == BT_ERROR_NONE, res);
-
- res = bt_deinitialize();
- MP_CHECK_VAL(res == BT_ERROR_NONE, res);
-
- bt_avrcp_unset_shuffle_mode_changed_cb();
- bt_avrcp_unset_equalizer_state_changed_cb();
- bt_avrcp_unset_repeat_mode_changed_cb();
-
- gMpAvrcpInitialized = false;
-
- IF_FREE(gMpAvrcpCb);
- return res;
-}
-
-MpAvrcpErr_e mp_avrcp_set_mode_change_cb(mp_avrcp_connection_state_changed_cb connection_cb, mp_avrcp_shuffle_changed_cb s_cb,
- mp_avrcp_repeat_changed_cb r_cb, mp_avrcp_eq_changed_cb e_cb, void *user_data)
-{
- startfunc;
- gMpAvrcpCb = calloc(1, sizeof(MpAvrcpCb_t));
- MP_CHECK_VAL(gMpAvrcpCb, MP_AVRCP_ERROR);
- gMpAvrcpCb->connection_cb = connection_cb;
- gMpAvrcpCb->s_cb = s_cb;
- gMpAvrcpCb->r_cb = r_cb;
- gMpAvrcpCb->e_cb = e_cb;
- gMpAvrcpCb->user_data = user_data;
- return 0;
-}
-
-MpAvrcpErr_e mp_avrcp_noti_player_state(mp_avrcp_player_state_e state)
-{
- mp_avrcp_target_initialize();
- MP_CHECK_VAL(gMpAvrcpInitialized, MP_AVRCP_ERROR);
-
- bt_avrcp_player_state_e player_state = BT_AVRCP_PLAYER_STATE_STOPPED;
- switch (state) {
- case MP_AVRCP_STATE_STOPPED:
- player_state = BT_AVRCP_PLAYER_STATE_STOPPED;
- break;
- case MP_AVRCP_STATE_PLAYING:
- player_state = BT_AVRCP_PLAYER_STATE_PLAYING;
- break;
- case MP_AVRCP_STATE_PAUSED:
- player_state = BT_AVRCP_PLAYER_STATE_PAUSED;
- break;
- case MP_AVRCP_STATE_REW:
- player_state = BT_AVRCP_PLAYER_STATE_REWIND_SEEK;
- break;
- case MP_AVRCP_STATE_FF:
- player_state = BT_AVRCP_PLAYER_STATE_FORWARD_SEEK;
- break;
- default:
- break;
- }
- mp_avrcp_noti_track_position(mp_player_mgr_get_position());
-
- int res = bt_avrcp_target_notify_player_state(player_state);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
-
- return res;
-}
-MpAvrcpErr_e mp_avrcp_noti_eq_state(mp_avrcp_eq_state_e eq)
-{
- mp_avrcp_target_initialize();
- MP_CHECK_VAL(gMpAvrcpInitialized, MP_AVRCP_ERROR);
- bt_avrcp_equalizer_state_e state = BT_AVRCP_EQUALIZER_STATE_OFF;
- if (eq == MP_AVRCP_EQ_ON) {
- state = BT_AVRCP_EQUALIZER_STATE_ON;
- }
-
- int res = bt_avrcp_target_notify_equalizer_state(state);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- return res;
-}
-
-MpAvrcpErr_e mp_avrcp_noti_repeat_mode(mp_avrcp_repeat_mode_e repeat)
-{
- mp_avrcp_target_initialize();
- MP_CHECK_VAL(gMpAvrcpInitialized, MP_AVRCP_ERROR);
- bt_avrcp_repeat_mode_e state = BT_AVRCP_REPEAT_MODE_OFF;
- switch (repeat) {
- case MP_AVRCP_REPEAT_OFF:
- state = BT_AVRCP_REPEAT_MODE_OFF;
- break;
- case MP_AVRCP_REPEAT_ONE:
- state = BT_AVRCP_REPEAT_MODE_SINGLE_TRACK;
- break;
- case MP_AVRCP_REPEAT_ALL:
- state = BT_AVRCP_REPEAT_MODE_ALL_TRACK;
- break;
- default:
- break;
- }
- int res = bt_avrcp_target_notify_repeat_mode(state);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- return res;
-}
-
-MpAvrcpErr_e mp_avrcp_noti_shuffle_mode(mp_avrcp_shuffle_mode_e shuffle)
-{
- mp_avrcp_target_initialize();
- MP_CHECK_VAL(gMpAvrcpInitialized, MP_AVRCP_ERROR);
- bt_avrcp_shuffle_mode_e state = BT_AVRCP_SHUFFLE_MODE_OFF;
- switch (shuffle) {
- case MP_AVRCP_SHUFFLE_OFF:
- state = BT_AVRCP_SHUFFLE_MODE_OFF;
- break;
- case MP_AVRCP_SHUFFLE_ON:
- state = BT_AVRCP_SHUFFLE_MODE_ALL_TRACK;
- break;
- default:
- break;
- }
-
- int res = bt_avrcp_target_notify_shuffle_mode(state);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- return res;
-
-}
-
-MpAvrcpErr_e mp_avrcp_noti_track_position(unsigned int position)
-{
- mp_avrcp_target_initialize();
- MP_CHECK_VAL(gMpAvrcpInitialized, MP_AVRCP_ERROR);
- int res = bt_avrcp_target_notify_position(position);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- return res;
-}
-
-MpAvrcpErr_e mp_avrcp_noti_track(const char *title, const char *artist, const char *album, const char *genre, unsigned int duration)
-{
- mp_avrcp_target_initialize();
- MP_CHECK_VAL(gMpAvrcpInitialized, MP_AVRCP_ERROR);
- int res = bt_avrcp_target_notify_track(title, artist, album, genre, 0, 0, duration);
- mp_retv_if(res == BT_ERROR_PERMISSION_DENIED, MP_AVRCP_ERROR_PERMISSION_DENIED);
- return res;
-}
-
-#endif
-
#ifdef MP_3D_FEATURE
#endif
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
#include "mp-player-view.h"
#include "mp-file-tag-info.h"
if (next) {
mp_playlist_mgr_set_current(ad->playlist_mgr, next);
mp_play_new_file(ad, true);
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_play_next_file(ad, true);
- }
-#endif
} else {
#ifdef MP_SOUND_PLAYER
mp_app_exit(ad);
if (ad->is_ff) {
ad->ff_rew_distance += LONG_PRESS_TIME_INCREASE;
-#ifdef MP_FEATURE_AVRCP_13
- if (!ad->is_Longpress) {
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_FF);
- }
-#endif
} else {
ad->ff_rew_distance -= LONG_PRESS_TIME_INCREASE;
-#ifdef MP_FEATURE_AVRCP_13
- if (!ad->is_Longpress) {
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_FF);
- }
-#endif
}
ad->is_Longpress = true;
if (ad->is_Longpress) {
ad->is_Longpress = false;
-
-#ifdef MP_FEATURE_AVRCP_13
- if (ad->player_state == PLAY_STATE_PLAYING) {
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_PLAYING);
- } else if (ad->player_state == PLAY_STATE_PAUSED) {
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_PAUSED);
- } else {
- mp_avrcp_noti_player_state(MP_AVRCP_STATE_STOPPED);
- }
-#endif
}
}
/* repeat 1 */
mp_setting_set_repeat_state(MP_SETTING_REP_1);
mp_playlist_mgr_set_repeat(ad->playlist_mgr, MP_PLST_REPEAT_ONE);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_repeat_mode(MP_AVRCP_REPEAT_ONE);
-#endif
} else if (!strcmp(emission, SIGNAL_REP_OFF)) {
mp_setting_set_repeat_state(MP_SETTING_REP_ALL);
mp_playlist_mgr_set_repeat(ad->playlist_mgr, MP_PLST_REPEAT_ALL);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_repeat_mode(MP_AVRCP_REPEAT_ALL);
-#endif
} else if (!strcmp(emission, SIGNAL_REP_1)) {
mp_setting_set_repeat_state(MP_SETTING_REP_NON);
mp_playlist_mgr_set_repeat(ad->playlist_mgr, MP_PLST_REPEAT_NONE);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_repeat_mode(MP_AVRCP_REPEAT_OFF);
-#endif
}
if (ad->win_minicon) {
mp_minicontroller_update_shuffle_and_repeat_btn(ad);
{
struct appdata *ad = mp_util_get_appdata();
mp_retm_if(ad == NULL, "appdata is NULL");
-
-#ifdef MP_FEATURE_AVRCP_13
- if (shuffle_enable) {
- mp_avrcp_noti_shuffle_mode(MP_AVRCP_SHUFFLE_ON);
- } else {
- mp_avrcp_noti_shuffle_mode(MP_AVRCP_SHUFFLE_OFF);
- }
-#endif
-
mp_playlist_mgr_set_shuffle(ad->playlist_mgr, shuffle_enable);
mp_player_view_update_state(GET_PLAYER_VIEW);
mp_setting_set_shuffle_state(shuffle_enable);
#include "mp-lockscreenmini.h"
#include "mp-player-view.h"
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
-
#define MAX_PATH_LEN 1024
static player_h _player = 0;
is_seeking = false;
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_track_position((unsigned int)data);
-#endif
-
if (g_requesting_cb) {
/* invoke seek done callback */
g_requesting_cb(g_requesting_cb_data);
IF_FREE(node->uid);
IF_FREE(node->title);
IF_FREE(node->artist);
-
-#ifdef MP_FEATURE_CLOUD
- IF_FREE(node->streaming_uri);
- if (node->cancel_id) {
- mp_cloud_cancel_request(node->cancel_id);
- }
-#endif
IF_FREE(node);
}
#include <system_settings.h>
#include <mp-file-util.h>
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
-
enum _mp_menu_item {
MP_MENU_ALBUMS,
MP_MENU_ARTISTS,
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-#include "mp-watch-dog.h"
-#include <Elementary.h>
-#include "mp-player-debug.h"
-#include "mp-define.h"
-#include "mp-file-util.h"
-
-#ifdef MP_WATCH_DOG
-
-Ecore_Thread *g_WathDogThread;
-static int g_MainThreadLockup;
-static int g_write_lock;
-
-#define LOCKUP_TIMEOUT 60
-
-static void
-__mp_watchdog_thread_function(void *data, Ecore_Thread *thread)
-{
- startfunc;
- while (1) {
- if (ecore_thread_check(thread)) { /* pending cancellation */
- WARN_TRACE("Thread canceled");
- goto END;
- }
-
- if (g_MainThreadLockup) {
- ERROR_TRACE("Main thread does not response for %d sec.", LOCKUP_TIMEOUT);
- ERROR_TRACE("Make coredump");
- assert(0);
- }
-
- if (!g_write_lock) {
- g_MainThreadLockup = 1;
- }
- DEBUG_TRACE("Send Notify to Main thread");
- ecore_thread_feedback(thread, NULL);
-
- struct timeval tv;
- tv.tv_sec = LOCKUP_TIMEOUT;
- tv.tv_usec = 0;
- select(0, NULL, NULL, NULL, &tv);
-
- }
-
-END:
- endfunc;
-}
-
-static void
-_mp_watch_dog_thread_end_cb(void *data, Ecore_Thread *thread)
-{
- DEBUG_TRACE("Watch dog thread end");
- g_WathDogThread = NULL;
-}
-
-static void
-_mp_watch_dog_thread_cancel_cb(void *data, Ecore_Thread *thread)
-{
- DEBUG_TRACE("");
-}
-
-void _mp_watch_dog_thread_notify_cb(void *data, Ecore_Thread *thread, void *msg_data)
-{
- DEBUG_TRACE("");
- g_write_lock = 1;
- g_MainThreadLockup = 0;
- g_write_lock = 0;
-}
-
-void mp_watch_dog_init(void)
-{
-#ifdef MP_DEBUG_MODE
- return;
-#endif
-
- if (mp_file_exists("/tmp/mp_disable_watchdog")) {
- return;
- }
-
- if (g_WathDogThread) {
- return;
- }
-
- g_WathDogThread = ecore_thread_feedback_run(__mp_watchdog_thread_function,
- _mp_watch_dog_thread_notify_cb,
- _mp_watch_dog_thread_end_cb,
- _mp_watch_dog_thread_cancel_cb, NULL, EINA_TRUE);
-}
-
-void mp_watch_dog_finalize(void)
-{
- if (g_WathDogThread) {
- ecore_thread_cancel(g_WathDogThread);
- }
-}
-
-void mp_watch_dog_reset(void)
-{
- g_write_lock = 1;
- if (g_MainThreadLockup) {
- g_MainThreadLockup = EINA_TRUE;
- }
- g_write_lock = 0;
-}
-
-#endif
-
//#define MP_FEATURE_ADD_TO_INCLUDE_PLAYLIST_TAB
//#define MP_FEATURE_ADD_TO_HOME
#define MP_FEATURE_AUTO_OFF
-//#define MP_FEATURE_AVRCP_13
//#define MP_FEATURE_SPLIT_WINDOW
#endif //MP_SOUND_PLAYER
#define MP_FEATURE_EXIT_ON_BACK
#define MP_FEATURE_USB_OTG
#endif
-//#define MP_FEATURE_WIFI_SHARE
-//#define MP_FEATURE_VOICE_CONTROL
-//#define MP_FEATURE_PALM_TOUCH
-
#ifdef MP_DEBUG_MODE
//#define MP_CREATE_FAKE_IMAGE
#endif
#include "mp-play.h"
#include "mp-volume.h"
#include "mp-common-defs.h"
-#ifdef MP_WATCH_DOG
-#include "mp-watch-dog.h"
-#endif
#ifndef MP_SOUND_PLAYER
#include "mp-common.h"
#include "dali-music.h"
#endif
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
-
#ifdef MP_FEATURE_CONTEXT_ENGINE
#include "mp-context.h"
#endif
-#ifdef MP_FEATURE_VOICE_CONTROL
-#include "mp-voice-control-mgr.h"
-#endif
-
#include <system_settings.h>
/* #include <appcore-common.h> */
static void _mp_main_win_visibility_normal_cb(void *data, Evas_Object *obj, void *event);
static void _mp_main_win_focus_in_cb(void *data, Evas_Object *obj, void *event);
static void _mp_main_win_focus_out_cb(void *data, Evas_Object *obj, void *event);
-#ifdef MP_FEATURE_PALM_TOUCH
-static Eina_Bool _mp_main_win_hold_cb(void *data, int type, void *event);
-#endif
static Eina_Bool _mp_main_app_init_idler_cb(void *data);
void mp_device_orientation_cb(app_device_orientation_e orientation, void *user_data);
/* window focus in/out event */
evas_object_smart_callback_add(ad->win_main, "focused", _mp_main_win_focus_in_cb, ad);
evas_object_smart_callback_add(ad->win_main, "unfocused", _mp_main_win_focus_out_cb, ad);
-
-#ifdef MP_FEATURE_PALM_TOUCH
-// ad->hold = ecore_event_handler_add (ECORE_X_EVENT_GESTURE_NOTIFY_HOLD, _mp_main_win_hold_cb, ad);
-//
-// Ecore_Evas *ee;
-// ee = ecore_evas_ecore_evas_get(evas_object_evas_get(ad->win_main));
-// if (!ecore_x_gesture_events_select((Ecore_X_Window)ecore_evas_window_get(ee), ECORE_X_GESTURE_EVENT_MASK_HOLD))
-// ERROR_TRACE("Fail to add gesture event");
-#endif
return TRUE;
}
}
mp_volume_key_grab_condition_set(MP_VOLUME_KEY_GRAB_COND_WINDOW_FOCUS, true);
-
-#ifdef MP_FEATURE_VOICE_CONTROL
- mp_voice_ctrl_mgr_start_listening();
-#endif
-
- /* return ECORE_CALLBACK_PASS_ON; */
}
static void _show_minicontroller(struct appdata *ad)
_show_minicontroller(ad);
mp_volume_key_grab_condition_set(MP_VOLUME_KEY_GRAB_COND_WINDOW_FOCUS, false);
-
-#ifdef MP_FEATURE_VOICE_CONTROL
- mp_voice_ctrl_mgr_stop_listening();
-#endif
-
}
static void __mp_main_lcd_state_changed_cb(device_callback_e type, void *state_data, void *user_data)
mp_music_view_mgr_init();
#endif
-#ifdef MP_FEATURE_CLOUD
- mp_cloud_create();
-#endif
-
if (!ad->playlist_mgr) {
mp_common_create_playlist_mgr();
evas_object_smart_callback_add(ad->conformant, "virtualkeypad,state,on", _mp_main_conformant_sip_on_cb, ad);
evas_object_smart_callback_add(ad->conformant, "virtualkeypad,state,off", _mp_main_conformant_sip_off_cb, ad);
}
-
-#ifdef MP_WATCH_DOG
- mp_watch_dog_init();
-#endif
-
- /*initialize session type */
- /*
- if (!mp_player_mgr_session_init())
- {
- ERROR_TRACE("Error when set session");
- }
- */
mp_volume_init(ad->win_main);
#ifdef MP_SOUND_PLAYER
mp_volume_key_grab_condition_set(MP_VOLUME_KEY_GRAB_COND_VIEW_VISIBLE, true);
DEBUG_TRACE_FUNC();
mp_retm_if(ad == NULL, "ad is null");
-#ifdef MP_WATCH_DOG
- mp_watch_dog_finalize();
-#endif
-
mp_volume_finalize();
if(ad->stream_info) {
mp_util_sleep_lock_set(FALSE, TRUE);
}
-#ifdef MP_FEATURE_CLOUD
- mp_cloud_destroy();
-#endif
-
mp_app_ungrab_mm_keys(ad);
if (ad->key_down) {
ecore_event_handler_del(ad->focus_out);
ad->focus_out = NULL;
}
-#ifdef MP_FEATURE_PALM_TOUCH
- if (ad->hold) {
- ecore_event_handler_del(ad->hold);
- ad->hold = NULL;
- }
-#endif
if (ad->player_state != PLAY_STATE_NONE) {
mp_player_mgr_stop(ad);
mp_player_mgr_destroy(ad);
int ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_play_next_file(ad, true);
- }
-#endif
}
#ifndef MP_SOUND_PLAYER
ad->app_is_foreground = false;
view);
}
-#ifdef MP_FEATURE_CLOUD
- /*cloud */
- int is_on = false;
- mp_cloud_is_on(&is_on);
- if (is_on) {
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_VIEW, MP_PLAYER_MORE_BTN_VIEW, mp_common_cloud_view_cb, view);
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_MAKE_AVAILABLE_OFFLINE, MP_PLAYER_MORE_BTN_MAKE_AVAILABLE_OFFICE, mp_common_ctxpopup_make_offline_cb, view);
- }
-#endif
-
#ifdef MP_FEATURE_PERSONAL_PAGE
if (mp_util_is_personal_page_on()) {
all_in_personal_e status = mp_common_is_all_in_personal_page(((MpList_t *)view->content_to_show)->genlist);
STR_MP_DELETE, MP_PLAYER_MORE_BTN_DELETE_IMAGE, _mp_artist_detail_view_tracklist_edit_cb, view);
}
-#ifdef MP_FEATURE_CLOUD
- /*cloud */
- int is_on = false;
- mp_cloud_is_on(&is_on);
- if (is_on) {
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_VIEW, MP_PLAYER_MORE_BTN_VIEW, mp_common_cloud_view_cb, view);
-
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_MAKE_AVAILABLE_OFFLINE, MP_PLAYER_MORE_BTN_MAKE_AVAILABLE_OFFICE, mp_common_ctxpopup_make_offline_cb, view);
- }
-#endif
-
#ifdef MP_FEATURE_PERSONAL_PAGE
if (mp_util_is_personal_page_on()) {
all_in_personal_e status = mp_common_is_all_in_personal_page(((MpList_t *)view->content_to_show)->genlist);
mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
STR_MP_DELETE, MP_PLAYER_MORE_BTN_DELETE_IMAGE, _mp_folder_detail_view_tracklist_edit_cb, view);
}
-#ifdef MP_FEATURE_CLOUD
- /*cloud */
- int is_on = false;
- mp_cloud_is_on(&is_on);
- if (is_on) {
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_VIEW, MP_PLAYER_MORE_BTN_VIEW, mp_common_cloud_view_cb, view);
-
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_MAKE_AVAILABLE_OFFLINE, MP_PLAYER_MORE_BTN_MAKE_AVAILABLE_OFFICE, mp_common_ctxpopup_make_offline_cb, view);
- }
-#endif
-
#ifdef MP_FEATURE_PERSONAL_PAGE
if (mp_util_is_personal_page_on()) {
all_in_personal_e status = mp_common_personal_status(view->content_to_show);
_mp_folder_view_edit_cb,
view);
}
-#ifdef MP_FEATURE_CLOUD
- /*cloud */
- int is_on = false;
- mp_cloud_is_on(&is_on);
- if (is_on) {
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_VIEW, MP_PLAYER_MORE_BTN_VIEW, mp_common_cloud_view_cb, view);
-
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_MAKE_AVAILABLE_OFFLINE, MP_PLAYER_MORE_BTN_MAKE_AVAILABLE_OFFICE, mp_common_ctxpopup_make_offline_cb, view);
- }
-#endif
-
#ifdef MP_FEATURE_PERSONAL_PAGE
if (mp_util_is_personal_page_on()) {
all_in_personal_e status = mp_common_is_all_in_personal_page(((MpList_t *)view->content_to_show)->genlist);
+++ /dev/null
-/*
-* Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
-
-
-#include "mp-make-offline-view.h"
-#include "mp-track-list.h"
-#include "mp-widget.h"
-#include "mp-util.h"
-#include "mp-edit-callback.h"
-
-#ifdef MP_FEATURE_CLOUD
-
-static void
-_mp_make_offline_view_destory_cb(void *thiz)
-{
- eventfunc;
- MpMakeOfflineView_t *view = thiz;
- MP_CHECK(view);
- mp_list_view_fini((MpListView_t *)view);
-
- /* TODO: release resource..*/
-
- free(view);
-}
-
-static Eina_Bool _mp_make_offline_view_back_cb(void *data, Elm_Object_Item *it)
-{
- eventfunc;
- MpViewMgr_t *view_mgr = mp_view_mgr_get_view_manager();
- mp_view_mgr_pop_view(view_mgr, false);
- return EINA_TRUE;
-}
-
-static void _mp_make_offline_view_done_cb(void *data, Evas_Object *obj, void *event_info)
-{
- eventfunc;
- struct appdata *ad = mp_util_get_appdata();
- MP_CHECK(ad);
-
- MpMakeOfflineView_t *view = (MpMakeOfflineView_t *)data;
- MP_CHECK(view);
-
- MpTrackList_t *list = (MpTrackList_t *)view->content_to_show;
- MP_CHECK(list);
-
- mp_edit_cb_excute_make_offline_available(list);
-}
-
-static int _mp_make_offline_view_update_option(void *thiz)
-{
- startfunc;
- MpMakeOfflineView_t *view = (MpMakeOfflineView_t *)thiz;
- MP_CHECK_VAL(view, -1);
-
- mp_view_clear_options((MpView_t *)view);
- Evas_Object *toolbar = mp_widget_create_naviframe_toolbar(view->navi_it);
- Elm_Object_Item *toolbar_item = NULL;
-
- toolbar_item = mp_widget_create_toolbar_item_btn(toolbar,
- MP_TOOLBAR_BTN_DEFAULT, STR_MP_DONE, _mp_make_offline_view_done_cb, view);
- view->toolbar_options[MP_OPTION_LEFT] = toolbar_item;
- if (mp_list_get_checked_count(view->content_to_show) == 0) {
- elm_object_item_disabled_set(view->toolbar_options[MP_OPTION_LEFT], EINA_TRUE);
- }
-
- elm_naviframe_item_pop_cb_set(view->navi_it, _mp_make_offline_view_back_cb, view);
-
- endfunc;
- return 0;
-}
-
-static int
-_mp_make_offline_view_content_load(void *view)
-{
- DEBUG_TRACE_FUNC();
- MP_CHECK_VAL(view, -1);
- /*MpMakeOfflineView_t *make_offline_view = (MpMakeOfflineView_t *)view;*/
-
- endfunc;
- return 0;
-}
-
-static void
-_mp_make_offline_view_on_event(void *thiz, MpViewEvent_e event)
-{
- switch (event) {
- case MP_ADD_TO_PLAYLIST_DONE:
- DEBUG_TRACE("Edit done");
- break;
-
- default:
- break;
- }
-}
-
-static int _mp_make_offline_view_update(void *thiz)
-{
- MpMakeOfflineView_t *view = thiz;
- mp_list_update(view->content_to_show);
- mp_list_set_edit(view->content_to_show, true);
- return 0;
-}
-
-static int
-_mp_make_offline_view_init(Evas_Object *parent, MpMakeOfflineView_t *view)
-{
- startfunc;
- int ret = 0;
- ret = mp_list_view_init(parent, (MpListView_t *)view, MP_VIEW_MAKE_OFFLINE);
- MP_CHECK_VAL(ret == 0, -1);
-
- view->update = _mp_make_offline_view_update;
- view->update_options = _mp_make_offline_view_update_option;
- view->update_options_edit = _mp_make_offline_view_update_option;
- view->view_destroy_cb = _mp_make_offline_view_destory_cb;
- view->on_event = _mp_make_offline_view_on_event;
- view->set_nowplaying = NULL;
- view->unset_nowplaying = NULL;
- view->update_nowplaying = NULL;
-
- MpTrackList_t *track_list = mp_track_list_create(view->layout);
- view->content_to_show = (MpList_t *)track_list;
- MP_CHECK_VAL(view->content_to_show, -1);
- mp_track_list_set_data(track_list, MP_TRACK_LIST_CLOUD_TYPE, MP_TRACK_LIST_VIEW_CLOUD, -1);
-
- elm_object_part_content_set(view->layout, "list_content", mp_list_get_layout(view->content_to_show));
-
- return ret;
-}
-
-MpMakeOfflineView_t *mp_make_offline_view_create(Evas_Object *parent)
-{
- eventfunc;
- int ret;
- MP_CHECK_NULL(parent);
-
- MpMakeOfflineView_t *view = calloc(1, sizeof(MpMakeOfflineView_t));
- MP_CHECK_NULL(view);
-
- ret = _mp_make_offline_view_init(parent, view);
- if (ret) {
- goto Error;
- }
-
- _mp_make_offline_view_content_load(view);
- return view;
-
-Error:
- ERROR_TRACE("Error: mp_make_offline_view_create()");
- IF_FREE(view);
- return NULL;
-}
-
-#endif
-
#endif
-#ifdef MP_FEATURE_AVRCP_13
-#include "mp-avrcp.h"
-#endif
-
#ifdef MP_FEATURE_APP_IN_APP
#include "mp-mini-player.h"
#endif
mp_setting_set_repeat_state(repeat_state);
_mp_player_view_set_rep_image(view, repeat_state);
mp_playlist_mgr_set_repeat(ad->playlist_mgr, repeat_state);
-#ifdef MP_FEATURE_AVRCP_13
- mp_avrcp_noti_repeat_mode(repeat_state);
-#endif
if (ad->win_minicon) {
mp_minicontroller_update_shuffle_and_repeat_btn(ad);
}
int ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
return;
}
view);
}
-#ifdef MP_FEATURE_CLOUD
- /*cloud */
- int is_on = false;
- mp_cloud_is_on(&is_on);
- if (is_on) {
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_VIEW, MP_PLAYER_MORE_BTN_VIEW, mp_common_cloud_view_cb, view);
-
- mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
- STR_MP_MAKE_AVAILABLE_OFFLINE, MP_PLAYER_MORE_BTN_MAKE_AVAILABLE_OFFICE, mp_common_ctxpopup_make_offline_cb, view);
- }
-#endif
-
if (view->list_type == MP_TRACK_BY_PLAYLIST) {
mp_util_ctxpopup_item_append(view->more_btn_ctxpopup,
STR_MP_RENAME, MP_PLAYER_MORE_BTN_RENAME_IMAGE, _mp_playlist_detail_rename_cb, view);
MP_POPUP_SETTING_PLAYLIST,
MP_POPUP_LIST_LONGPRESSED,
MP_POPUP_MORE_INFO,
-
-#ifdef MP_FEATURE_CLOUD
- MP_POPUP_CLOUD_VIEW,
-#endif
MP_POPUP_CHANGE_LIST_DISPLAY_MODE,
MP_POPUP_EDIT_IMAGE,
MP_POPUP_INFO_LIST,
mp_media_info_h item = NULL;
item = mp_media_info_list_nth_item(svc_handle, index);
mp_list_item_data_t *item_data;
-#ifdef MP_FEATURE_CLOUD
- if (list->cloud_view_type != MP_TRACK_LIST_VIEW_ALL) {
- mp_storage_type_e storage;
- int ret = mp_media_info_get_storage_type(item, &storage);
- if (ret != 0) {
- DEBUG_TRACE("Fail to mp_media_info_get_title, ret[%d], index[%d]", ret, index);
- goto END;
- }
- if (storage == MP_STORAGE_CLOUD) {
- if (list->cloud_view_type == MP_TRACK_LIST_VIEW_LOCAL) {
- continue;
- }
- } else {
- if (list->cloud_view_type == MP_TRACK_LIST_VIEW_CLOUD) {
- continue;
- }
- }
- }
-#endif
- /* check DRM FL */
if (mp_list_get_edit((MpList_t *)list) && mp_list_get_edit_type((MpList_t*)list) == MP_LIST_EDIT_TYPE_SHARE) {
char *file_name = NULL;
mp_media_info_get_file_path(item, &file_name);
item_data->it = elm_genlist_item_append(list->genlist, list->itc, item_data, NULL,
ELM_GENLIST_ITEM_NONE, _mp_all_list_songs_sel_cb, list);
}
-#ifdef MP_FEATURE_CLOUD
-END:
-#endif
endfunc;
}
if (ret == MP_PLAY_ERROR_NO_SONGS) {
mp_widget_text_popup(NULL, GET_STR(STR_MP_NO_SONGS));
}
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
goto END;
}
#endif
mp_util_ctxpopup_item_append(popup, "IDS_COM_BODY_EMAIL", NULL, mp_menu_ctxpopup_share_select_cb, user_data);
mp_util_ctxpopup_item_append(popup, "IDS_COM_BODY_BLUETOOTH", NULL, mp_menu_ctxpopup_share_select_cb, user_data);
-#ifdef MP_FEATURE_WIFI_SHARE
- mp_util_ctxpopup_item_append(popup, "IDS_COM_BODY_WI_FI", NULL, mp_menu_ctxpopup_share_select_cb, user_data);
-#endif
-#ifdef MP_FEATURE_CLOUD
- char *path = user_data;
- mp_storage_type_e storage_type;
- mp_media_info_h media_info = NULL;
- mp_media_info_create_by_path(&media_info, path);
- mp_media_info_get_storage_type(media_info, &storage_type);
- if (storage_type != MP_STORAGE_CLOUD) {
- mp_util_ctxpopup_item_append(popup, STR_MP_DROPBOX, NULL, mp_menu_ctxpopup_share_select_cb, user_data);
- }
-#endif
_move_ctxpopup(popup, parent);
evas_object_show(popup);
#ifndef MP_FEATURE_DISABLE_MMS
mp_util_ctxpopup_item_append(popup, "IDS_COM_BODY_MESSAGE", NULL, mp_menu_ctxpopup_share_select_cb, user_data);
#endif
-#ifdef MP_FEATURE_WIFI_SHARE
- mp_util_ctxpopup_item_append(popup, "IDS_COM_BODY_WI_FI", NULL, mp_menu_ctxpopup_share_select_cb, user_data);
-#endif
-
_move_ctxpopup(popup, parent);
evas_object_show(popup);
ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
IF_FREE(type_str);
return;
}
int ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
return;
}
} else {
int ret = mp_play_new_file(ad, true);
if (ret) {
ERROR_TRACE("Fail to play new file");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
- return;
-#endif
}
}
}
Evas_Object *popup = NULL;
Evas_Object *genlist;
int option_count = 3;
-#ifdef MP_FEATURE_WIFI_SHARE
- ++option_count;
-#endif
popup = _mp_popup_create_min_style_popup(parent, GET_SYS_STR("IDS_COM_BUTTON_SHARE"), option_count, NULL, _mp_popup_cancel_button_cb, ad);
MP_CHECK_NULL(popup);
elm_genlist_item_append(genlist, &itc, MESSAGE_SYS, NULL,
ELM_GENLIST_ITEM_NONE, mp_menu_genlist_popup_list_share_select_cb, user_data);
#endif
-#ifdef MP_FEATURE_WIFI_SHARE
- elm_genlist_item_append(genlist, &itc, WIFI_SYS, NULL,
- ELM_GENLIST_ITEM_NONE, mp_menu_genlist_popup_list_share_select_cb, user_data);
-#endif
-
return popup;
}
return popup;
}
-#ifdef MP_FEATURE_CLOUD
-static Evas_Object *
-_mp_popup_cloud_view_mode(Evas_Object * parent, void *data, struct appdata *ad)
-{
- DEBUG_TRACE_FUNC();
- MP_CHECK_NULL(ad);
-
- Evas_Object *popup = NULL;
-
- popup = _mp_popup_create_min_style_popup(parent, GET_STR(STR_MP_VIEW), 3, NULL, _mp_popup_cancel_button_cb, ad);
- MP_CHECK_NULL(popup);
-
- return popup;
-}
-#endif
-
static void
_mp_popup_del_cb(void *data, Evas * e, Evas_Object * eo, void *event_info)
{
popup = _mp_popup_sound_path_create(parent, user_data, ad);
evas_object_data_set(popup, "sound_path", (char *)1);
break;
-
-#ifdef MP_FEATURE_CLOUD
- case MP_POPUP_CLOUD_VIEW:
- popup = _mp_popup_cloud_view_mode(parent, user_data, ad);
- break;
-#endif
case MP_POPUP_CHANGE_LIST_DISPLAY_MODE:
popup = _mp_popup_change_list_display_mode(parent, user_data, ad);
break;
mp_media_info_get_title(item_data->handle, &title);
mp_media_info_get_artist(item_data->handle, &artist);
-#ifdef MP_FEATURE_CLOUD
- mp_storage_type_e storage;
- mp_media_info_get_storage_type(item->handle, &storage);
- if (storage == MP_STORAGE_CLOUD) {
- track_type = MP_TRACK_CLOUD;
- }
-#endif
plst_item = mp_playlist_mgr_item_append(ad->playlist_mgr, uri, uid, title, artist, track_type);
if (gli2 == gli && plst_item) {
to_play = plst_item;
int ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
return;
}
int ret = mp_play_new_file(ad, TRUE);
if (ret) {
ERROR_TRACE("Error: mp_play_new_file..");
-#ifdef MP_FEATURE_CLOUD
- if (ret == MP_PLAY_ERROR_NETWORK) {
- mp_widget_text_popup(NULL, GET_STR(STR_MP_THIS_FILE_IS_UNABAILABLE));
- }
-#endif
return;
}
mp_media_info_h item = NULL;
item = mp_media_info_list_nth_item(svc_handle, index);
mp_list_item_data_t *item_data;
-#ifdef MP_FEATURE_CLOUD
- if (list->cloud_view_type != MP_TRACK_LIST_VIEW_ALL) {
- mp_storage_type_e storage;
- int ret = mp_media_info_get_storage_type(item, &storage);
- if (ret != 0) {
- ERROR_TRACE("Fail to mp_media_info_get_title, ret[%d], index[%d]", ret, index);
- goto END;
- }
- if (storage == MP_STORAGE_CLOUD) {
- if (list->cloud_view_type == MP_TRACK_LIST_VIEW_LOCAL) {
- continue;
- }
- } else {
- if (list->cloud_view_type == MP_TRACK_LIST_VIEW_CLOUD) {
- continue;
- }
- }
- }
-#endif
-
#ifdef MP_FEATURE_PERSONAL_PAGE
char *path = NULL;
mp_media_info_get_file_path(item, &path);
ELM_GENLIST_ITEM_NONE, _mp_track_genlist_sel_cb, list);
elm_object_item_data_set(item_data->it, item_data);
}
-#ifdef MP_FEATURE_CLOUD
-END:
-#endif
endfunc;
}