Fixed TSAM-9058 Song still replay when timer active 72/92772/1
authorbhutani.92 <bhutani.92@samsung.com>
Tue, 18 Oct 2016 12:33:31 +0000 (18:03 +0530)
committerbhutani.92 <bhutani.92@samsung.com>
Tue, 18 Oct 2016 12:33:31 +0000 (18:03 +0530)
Change-Id: I7e6da06c3487613e0c291f8f06f5fa2a1fef926e
Signed-off-by: bhutani.92 <bhutani.92@samsung.com>
src/widget/mp-minicontroller.c

index 2b4530245b6748233e2a7f52f0b85378bcdd4a55..89870036f2dc7ce51fb13261c6b93b154d125e81 100755 (executable)
@@ -651,6 +651,7 @@ static void _mp_minicontroller_play_pause_btn_clicked_cb(void *data, Evas_Object
        sound_stream_focus_change_reason_e changed_by = SOUND_STREAM_FOCUS_CHANGED_BY_MEDIA;
        int ret = SOUND_MANAGER_ERROR_NONE;
        int rec_flag = SOUND_BEHAVIOR_NONE;
+       int playback_flag = SOUND_BEHAVIOR_NONE;
        char *additional_info = NULL;
 
        struct appdata *ad = mp_util_get_appdata();
@@ -665,6 +666,20 @@ static void _mp_minicontroller_play_pause_btn_clicked_cb(void *data, Evas_Object
                DEBUG_TRACE("Cannot resume Music Player. Speak Mode is on");
                return;
        }
+
+       IF_FREE(additional_info);
+       additional_info = NULL;
+       changed_by = SOUND_STREAM_FOCUS_CHANGED_BY_MEDIA;
+       ret = sound_manager_get_current_playback_focus(&changed_by, &playback_flag, &additional_info);
+       if (ret != SOUND_MANAGER_ERROR_NONE) {
+               ERROR_TRACE("Cannot determine current playback focus");
+       }
+
+       if (additional_info && changed_by == SOUND_STREAM_FOCUS_CHANGED_BY_MEDIA && !g_strcmp0(additional_info, "cam_capture")) {
+               DEBUG_TRACE("Cannot resume Music Player due to state: %s", additional_info);
+               return;
+       }
+
        if (ad->recorder_state == RECORDER_DEVICE_STATE_RECORDING || ad->recorder_state == RECORDER_DEVICE_STATE_PAUSED) {
                DEBUG_TRACE("Cannot resume Music Player. Video Recorder is in Use");
                return;