[TSAM-11582] Music still play when coming call 80/104780/2 submit/tizen_3.0/20161215.031643
authorbhutani.92 <bhutani.92@samsung.com>
Wed, 14 Dec 2016 09:17:17 +0000 (14:47 +0530)
committerbhutani.92 <bhutani.92@samsung.com>
Wed, 14 Dec 2016 09:59:00 +0000 (15:29 +0530)
Change-Id: I2f1c0e5a823d6bb9d2ed06c56466dbd91e7b2fa6
Signed-off-by: bhutani.92 <bhutani.92@samsung.com>
src/common/mp-common.c
src/common/mp-edit-callback.c
src/common/mp-play.c
src/core/mp-player-control.c
src/widget/mp-minicontroller.c

index 13ba537..57084c7 100644 (file)
@@ -1059,8 +1059,8 @@ void mp_common_show_player_view_after_play()
 }
 
 void mp_common_play_track_list_with_playlist_id(mp_list_item_data_t * item,
-                                                                                               Evas_Object * genlist,
-                                                                                               int playlist_id)
+               Evas_Object * genlist,
+               int playlist_id)
 {
        startfunc;
        MP_CHECK(item);
index a16bce4..6bed4aa 100644 (file)
@@ -95,7 +95,7 @@ _mp_edit_cb_create_playlist_cb(void *data, Evas_Object * obj,
 
 void
 _mp_edit_delete_track_popup_response_cb(void *data, Evas_Object * obj,
-                                                                               void *event_info)
+               void *event_info)
 {
        startfunc;
        DEBUG_TRACE("");
@@ -130,8 +130,8 @@ void mp_edit_create_track_delete_popup(void *data)
        title_txt =
                g_strconcat("<align=center>", GET_STR(title), "</align>", NULL);
        Evas_Object *popup =
-               mp_popup_create(ad->win_main, MP_POPUP_NORMAL, title_txt, data,
-                                               _mp_edit_delete_track_popup_response_cb, ad);
+                       mp_popup_create(ad->win_main, MP_POPUP_NORMAL, title_txt, data,
+                                       _mp_edit_delete_track_popup_response_cb, ad);
        ad->popup_delete = popup;
        //making help_txt
        char *markup = NULL;
@@ -1151,6 +1151,9 @@ _mp_edit_message_popup_response_cb(void *data, Evas_Object * obj,
        mp_view_mgr_post_event(GET_VIEW_MGR, MP_DELETE_DONE);
        ad->edit_in_progress = false;
 
+       if (_mp_is_current_focus_available(ad) != 0) {
+               ad->paused_by_user = TRUE;
+       }
        mp_play_new_file(ad, true);
        _mp_edit_cb_check_playlist();
 
index 45ae54d..df36e97 100644 (file)
@@ -72,7 +72,7 @@ bool mp_play_start_in_ready_state(void *data)
        MP_CHECK_FALSE(ad->player_state == PLAY_STATE_READY);
 
        mp_plst_item *current_item =
-               mp_playlist_mgr_get_current(ad->playlist_mgr);
+                       mp_playlist_mgr_get_current(ad->playlist_mgr);
        MP_CHECK_FALSE(current_item);
 
        if (!ad->paused_by_user) {
@@ -130,8 +130,7 @@ int mp_play_new_file(void *data, bool check_drm)
        struct appdata *ad = data;
        mp_retvm_if(ad == NULL, -1, "appdata is NULL");
        PROFILE_IN("mp_playlist_mgr_get_current");
-       mp_plst_item *current_item =
-               mp_playlist_mgr_get_current(ad->playlist_mgr);
+       mp_plst_item *current_item = mp_playlist_mgr_get_current(ad->playlist_mgr);
        PROFILE_OUT("mp_playlist_mgr_get_current");
        MP_CHECK_VAL(current_item, -1);
        int res = 0;
@@ -348,11 +347,11 @@ static void _mp_play_start_lazy(void *data)
                char *title = NULL, *album = NULL, *artist = NULL, *genre = NULL;
 
                mp_player_mgr_get_content_info(&title, &album, &artist, NULL,
-                                                                          &genre, NULL);
+                               &genre, NULL);
 
                if (ad->current_track_info) {
                        if (ad->current_track_info->title == 0
-                               || strlen(ad->current_track_info->title) == 0) {
+                                       || strlen(ad->current_track_info->title) == 0) {
                                if (title == NULL || strlen(title) == 0) {
                                        title = mp_util_get_title_from_path(item->uri);
                                        DEBUG_TRACE("title from path: %s", title);
@@ -364,7 +363,7 @@ static void _mp_play_start_lazy(void *data)
                        }
 
                        if (ad->current_track_info->artist == NULL
-                               || strlen(ad->current_track_info->artist) == 0) {
+                                       || strlen(ad->current_track_info->artist) == 0) {
                                IF_FREE(ad->current_track_info->artist);
                                ad->current_track_info->artist = artist;
                        } else {
@@ -407,9 +406,9 @@ static void _mp_play_start_lazy(void *data)
 
        if (ad->current_track_info) {
                if (mp_setting_read_playing_status
-                       (ad->current_track_info->uri, "playing") != 1) {
+                               (ad->current_track_info->uri, "playing") != 1) {
                        mp_setting_write_playing_status(ad->current_track_info->uri,
-                                                                                       "playing");
+                                       "playing");
                }
        }
        mp_setting_set_player_state(MP_PLAY_STATE_PLAYING);
@@ -421,32 +420,6 @@ static void _mp_play_start_lazy(void *data)
        endfunc;
 }
 
-/*static Eina_Bool
-_mp_play_start_lazy_idler(void *data)
-{
-       eventfunc;
-       struct appdata *ad = data;
-       MP_CHECK_FALSE(ad);
-
-       MpView_t *player_view = GET_PLAYER_VIEW;
-       if (player_view)
-       {
-               bool is_transit = false;
-               mp_view_is_now_push_transit(player_view, &is_transit);
-               if (is_transit)
-               {
-                       WARN_TRACE("now transition.. wait next idle");
-                       return ECORE_CALLBACK_RENEW;
-               }
-       }
-
-       ad->create_on_play_lay_idler = NULL;
-       _mp_play_start_lazy(ad);
-
-       return ECORE_CALLBACK_DONE;
-}*/
-
-
 void mp_play_start(void *data)
 {
        startfunc;
@@ -459,7 +432,11 @@ void mp_play_start(void *data)
        }
 
        ad->music_length = mp_player_mgr_get_duration() / 1000.0;
-       ad->player_state = PLAY_STATE_PLAYING;
+       if (ad->paused_by_user == FALSE) {
+               ad->player_state = PLAY_STATE_PLAYING;
+       } else {
+               ad->player_state = PLAY_STATE_PAUSED;
+       }
 
        if (!ad->noti) {
                DEBUG_TRACE("notification create");
@@ -467,7 +444,7 @@ void mp_play_start(void *data)
                int applist = NOTIFICATION_DISPLAY_APP_INDICATOR;
                notification_type_e noti_type = NOTIFICATION_TYPE_NOTI;
                notification_image_type_e img_type =
-                       NOTIFICATION_IMAGE_TYPE_ICON_FOR_INDICATOR;
+                               NOTIFICATION_IMAGE_TYPE_ICON_FOR_INDICATOR;
                int ret = NOTIFICATION_ERROR_NONE;
 
                char *shared_path = app_get_shared_resource_path();
@@ -477,16 +454,16 @@ void mp_play_start(void *data)
 
                char icon_path[1024] = { 0 };
                snprintf(icon_path, 1024,
-                                "%sshared_images/T02_control_circle_icon_play.png",
-                                shared_path);
+                               "%sshared_images/T02_control_circle_icon_play.png",
+                               shared_path);
                free(shared_path);
 
 #ifdef MP_SOUND_PLAYER
                notification_delete_all_by_type("org.tizen.music-player",
-                                                                               NOTIFICATION_TYPE_NOTI);
+                               NOTIFICATION_TYPE_NOTI);
 #else
                notification_delete_all_by_type("org.tizen.sound-player",
-                                                                               NOTIFICATION_TYPE_NOTI);
+                               NOTIFICATION_TYPE_NOTI);
 #endif
                ad->noti = notification_create(noti_type);
 #ifdef MP_SOUND_PLAYER
@@ -499,8 +476,8 @@ void mp_play_start(void *data)
                        DEBUG_TRACE("Unable to set tag [%d]", ret);
                }
                ret =
-                       notification_set_property(ad->noti,
-                                                                         NOTIFICATION_PROP_VOLATILE_DISPLAY);
+                               notification_set_property(ad->noti,
+                                               NOTIFICATION_PROP_VOLATILE_DISPLAY);
                if (ret != NOTIFICATION_ERROR_NONE) {
                        DEBUG_TRACE("Cannot set the notification property [%d]", ret);
                }
@@ -522,13 +499,13 @@ void mp_play_start(void *data)
                        ERROR_TRACE("unable to get data path");
                }
                snprintf(playing_status, 1024, "%s%s", data_path,
-                                "NowPlayingStatus");
+                               "NowPlayingStatus");
                free(data_path);
 
                if (ad->monitor == NULL) {
                        ad->monitor =
-                               ecore_file_monitor_add(playing_status,
-                                                                          mp_noti_read_ini_file, NULL);
+                                       ecore_file_monitor_add(playing_status,
+                                                       mp_noti_read_ini_file, NULL);
                }
        }
 
@@ -539,9 +516,9 @@ void mp_play_start(void *data)
 
        if (ad->create_view_on_play) {
                mp_view_mgr_push_view_with_effect(GET_VIEW_MGR,
-                                                                                 (MpView_t *) ad->
-                                                                                 preload_player_view, NULL,
-                                                                                 false);
+                               (MpView_t *) ad->
+                               preload_player_view, NULL,
+                               false);
                mp_view_update((MpView_t *) ad->preload_player_view);
                ad->create_view_on_play = false;
                ad->preload_player_view = NULL;
@@ -550,7 +527,6 @@ void mp_play_start(void *data)
 
        _mp_play_start_lazy(ad);
 
-
        endfunc;
 }
 
index a012283..26d3328 100644 (file)
@@ -428,7 +428,7 @@ int mp_player_control_ready_new_file(void *data, bool check_drm)
        if (!mp_check_file_exist(uri)) {
                ERROR_TRACE("There is no such file\n");
                _mp_play_error_handler(ad,
-                                                          GET_SYS_STR("IDS_COM_POP_FILE_NOT_EXIST"));
+                               GET_SYS_STR("IDS_COM_POP_FILE_NOT_EXIST"));
                return -1;
        }
 
@@ -440,9 +440,7 @@ int mp_player_control_ready_new_file(void *data, bool check_drm)
        /* lock wake up */
        mp_util_sleep_lock_set(TRUE, FALSE);
        PROFILE_IN("mp_player_mgr_create");
-       {
-               error = mp_player_mgr_create(ad, uri, player_type, extra_data);
-       }
+       error = mp_player_mgr_create(ad, uri, player_type, extra_data);
        PROFILE_OUT("mp_player_mgr_create");
 
        if (ad->b_minicontroller_show) {
@@ -455,8 +453,8 @@ int mp_player_control_ready_new_file(void *data, bool check_drm)
 #endif
        if (error) {
                _mp_play_error_handler(ad,
-                                                          GET_STR
-                                                          ("IDS_MUSIC_POP_UNABLE_TO_PLAY_ERROR_OCCURRED"));
+                               GET_STR
+                               ("IDS_MUSIC_POP_UNABLE_TO_PLAY_ERROR_OCCURRED"));
                return error;
        }
 
@@ -467,8 +465,7 @@ int mp_player_control_ready_new_file(void *data, bool check_drm)
        mp_player_mgr_set_buffering_cb(_mp_play_control_buffering_cb, ad);
        mp_player_mgr_set_prepare_cb(_mp_play_control_prepare_cb, ad);
        mp_player_mgr_set_paused_cb(mp_play_pause, ad);
-       mp_player_mgr_set_duration_changed_cb
-               (_mp_play_control_duration_changed_cb, ad);
+       mp_player_mgr_set_duration_changed_cb(_mp_play_control_duration_changed_cb, ad);
 
        ad->prepare_by_init = false;
        PROFILE_IN("mp_player_mgr_realize");
@@ -476,8 +473,8 @@ int mp_player_control_ready_new_file(void *data, bool check_drm)
        PROFILE_OUT("mp_player_mgr_realize");
        if (error) {
                _mp_play_error_handler(ad,
-                                                          GET_STR
-                                                          ("IDS_MUSIC_POP_UNABLE_TO_PLAY_ERROR_OCCURRED"));
+                               GET_STR
+                               ("IDS_MUSIC_POP_UNABLE_TO_PLAY_ERROR_OCCURRED"));
                return error;
        }
 
index 4dfd83c..d1a846e 100644 (file)
@@ -348,10 +348,10 @@ static void _mp_minicontroller_update_btn(struct appdata *ad)
 
        if (ad->player_state == PLAY_STATE_PLAYING) {
                elm_object_signal_emit(ad->minicontroller_layout, "set_pause",
-                                                          "c_source");
+                               "c_source");
        } else {
                elm_object_signal_emit(ad->minicontroller_layout, "set_play",
-                                                          "c_source");
+                               "c_source");
        }
 }
 
@@ -570,13 +570,13 @@ _mp_minicontroller_update_layout(struct appdata *ad, bool landscape)
        if (landscape) {
                DEBUG_TRACE("angle: 90 or 270");
                ad->minicontroller_layout =
-                       _load_edj(ad->win_minicon, MINICON_EDJ_NAME,
-                                         "music-minicontroller-ld");
+                               _load_edj(ad->win_minicon, MINICON_EDJ_NAME,
+                                               "music-minicontroller-ld");
        } else {
                DEBUG_TRACE("angle: 0");
                ad->minicontroller_layout =
-                       _load_edj(ad->win_minicon, MINICON_EDJ_NAME,
-                                         "music-minicontroller");
+                               _load_edj(ad->win_minicon, MINICON_EDJ_NAME,
+                                               "music-minicontroller");
        }
 
        if (!ad->minicontroller_layout) {
@@ -588,69 +588,69 @@ _mp_minicontroller_update_layout(struct appdata *ad, bool landscape)
        /*add focused UI related */
        ad->minicon_icon = elm_image_add(ad->minicontroller_layout);
        evas_object_size_hint_align_set(ad->minicon_icon, EVAS_HINT_FILL,
-                                                                       EVAS_HINT_FILL);
+                       EVAS_HINT_FILL);
        evas_object_size_hint_weight_set(ad->minicon_icon, EVAS_HINT_EXPAND,
-                                                                        EVAS_HINT_EXPAND);
+                       EVAS_HINT_EXPAND);
        elm_image_fill_outside_set(ad->minicon_icon, true);
        elm_object_part_content_set(ad->minicontroller_layout,
-                                                               "albumart_image", ad->minicon_icon);
+                       "albumart_image", ad->minicon_icon);
        elm_object_focus_custom_chain_append(ad->minicontroller_layout,
-                                                                                ad->minicon_icon, NULL);
+                       ad->minicon_icon, NULL);
        elm_object_focus_allow_set(ad->minicon_icon, EINA_TRUE);
 
        /*-------> REW button ------->*/
        Evas_Object *rew_focus_btn = elm_button_add(ad->minicontroller_layout);
        elm_object_style_set(rew_focus_btn, "focus");
        elm_object_part_content_set(ad->minicontroller_layout, "rew_btn_focus",
-                                                               rew_focus_btn);
+                       rew_focus_btn);
 
        elm_object_focus_custom_chain_append(ad->minicontroller_layout,
-                                                                                rew_focus_btn, NULL);
+                       rew_focus_btn, NULL);
        evas_object_smart_callback_add(rew_focus_btn, "clicked",
-                                                                  _mp_minicontroller_ff_rew_btn_clicked_cb,
-                                                                  CONTROLLER_REW_SOURCE);
+                       _mp_minicontroller_ff_rew_btn_clicked_cb,
+                       CONTROLLER_REW_SOURCE);
        evas_object_smart_callback_add(rew_focus_btn, "pressed",
-                                                                  _mp_minicontroller_ff_rew_btn_pressed_cb,
-                                                                  CONTROLLER_REW_SOURCE);
+                       _mp_minicontroller_ff_rew_btn_pressed_cb,
+                       CONTROLLER_REW_SOURCE);
        evas_object_smart_callback_add(rew_focus_btn, "unpressed",
-                                                                  _mp_minicontroller_ff_rew_btn_unpressed_cb,
-                                                                  CONTROLLER_REW_SOURCE);
+                       _mp_minicontroller_ff_rew_btn_unpressed_cb,
+                       CONTROLLER_REW_SOURCE);
        evas_object_event_callback_add(rew_focus_btn, EVAS_CALLBACK_DEL,
-                                                                  _mp_minicontroller_ff_rew_btn_del_cb,
-                                                                  NULL);
+                       _mp_minicontroller_ff_rew_btn_del_cb,
+                       NULL);
 
        /*-------> play/pause button ------->*/
        Evas_Object *play_pause_focus_btn =
-               elm_button_add(ad->minicontroller_layout);
+                       elm_button_add(ad->minicontroller_layout);
        elm_object_style_set(play_pause_focus_btn, "focus");
        elm_object_part_content_set(ad->minicontroller_layout,
-                                                               "play_pause_focus", play_pause_focus_btn);
+                       "play_pause_focus", play_pause_focus_btn);
        elm_object_focus_custom_chain_append(ad->minicontroller_layout,
-                                                                                play_pause_focus_btn, NULL);
+                       play_pause_focus_btn, NULL);
        evas_object_smart_callback_add(play_pause_focus_btn, "clicked",
-                                                                  _mp_minicontroller_play_pause_btn_clicked_cb,
-                                                                  NULL);
+                       _mp_minicontroller_play_pause_btn_clicked_cb,
+                       NULL);
 
        /*------->FF button ------->*/
        Evas_Object *ff_focus_btn = elm_button_add(ad->minicontroller_layout);
        elm_object_style_set(ff_focus_btn, "focus");
        elm_object_part_content_set(ad->minicontroller_layout, "ff_btn_focus",
-                                                               ff_focus_btn);
+                       ff_focus_btn);
 
        elm_object_focus_custom_chain_append(ad->minicontroller_layout,
-                                                                                ff_focus_btn, NULL);
+                       ff_focus_btn, NULL);
        evas_object_smart_callback_add(ff_focus_btn, "clicked",
-                                                                  _mp_minicontroller_ff_rew_btn_clicked_cb,
-                                                                  CONTROLLER_FF_SOURCE);
+                       _mp_minicontroller_ff_rew_btn_clicked_cb,
+                       CONTROLLER_FF_SOURCE);
        evas_object_smart_callback_add(ff_focus_btn, "pressed",
-                                                                  _mp_minicontroller_ff_rew_btn_pressed_cb,
-                                                                  CONTROLLER_FF_SOURCE);
+                       _mp_minicontroller_ff_rew_btn_pressed_cb,
+                       CONTROLLER_FF_SOURCE);
        evas_object_smart_callback_add(ff_focus_btn, "unpressed",
-                                                                  _mp_minicontroller_ff_rew_btn_unpressed_cb,
-                                                                  CONTROLLER_FF_SOURCE);
+                       _mp_minicontroller_ff_rew_btn_unpressed_cb,
+                       CONTROLLER_FF_SOURCE);
        evas_object_event_callback_add(ff_focus_btn, EVAS_CALLBACK_DEL,
-                                                                  _mp_minicontroller_ff_rew_btn_del_cb,
-                                                                  NULL);
+                       _mp_minicontroller_ff_rew_btn_del_cb,
+                       NULL);
 
        /*-------> close button ------->*/
        edje_object_signal_callback_add(_EDJ(ad->minicontroller_layout), "*",
@@ -682,20 +682,20 @@ static void _mp_minicontroller_title_set(struct appdata *ad)
                "<align=left><font_size=%d><color=#%02x%02x%02x%02x>%s - </color></font_size><font_size=%d><color=#%02x%02x%02x%02x>%s</color></font_size></align>";
        char *title = NULL;
        if ((markup_title == NULL || strlen(markup_title) == 0)
-               && (markup_artist == NULL || strlen(markup_artist) == 0)) {
+                       && (markup_artist == NULL || strlen(markup_artist) == 0)) {
                title = NULL;
        } else {
                title =
-                       g_strdup_printf(title_format, 24, r, g, b, a, markup_title, 24,
-                                                       r, g, b, a, markup_artist);
+                               g_strdup_printf(title_format, 24, r, g, b, a, markup_title, 24,
+                                               r, g, b, a, markup_artist);
        }
 
        if (!label) {
                label =
-                       mp_widget_slide_title_create(ad->minicontroller_layout,
-                                                                                "slide_roll", title);
+                               mp_widget_slide_title_create(ad->minicontroller_layout,
+                                               "slide_roll", title);
                elm_object_part_content_set(ad->minicontroller_layout, "elm.text",
-                                                                       label);
+                               label);
        } else {
                elm_object_text_set(label, title);
        }