PREF_MUSIC_STATE_MAX
};
+enum {
+ PREF_NO_MINICONTROLLER = -1,
+ PREF_MUSIC_PLAYER_MINICONTROLLER,
+ PREF_SOUND_PLAYER_MINICONTROLLER,
+ PREF_MINICONTROLLER_MAX
+};
+
#define GET_WINDOW() ((mp_util_get_appdata()) ? mp_util_get_appdata()->win_main : NULL)
#define CHECK_STORE mp_util_is_store_enable()
#define PREF_MUSIC_STATE "preference/org.tizen.music-player/state"
#define PREF_SOUND_PLAYER_LAUNCH "preference/org.tizen.sound-player/launch_state"
#define PREF_MUSIC_PLAYER_LAUNCH "preference/org.tizen.music-player/launch_state"
+#define PREF_MINICONTROLLER "preference/minicontrol_state"
void mp_to_lower(char *str);
int mp_setting_get_nowplaying_id(void);
EVENT_TRACE("input=[0x%x], output=[0x%x]", in, out);
MP_CHECK(gNotiPipe);
- struct appdata *ad = user_data;
- MP_CHECK(ad);
-
- int current_pid = mp_setting_get_nowplaying_id();
- if (current_pid && current_pid != getpid()) {
- DEBUG_TRACE("Some other player playing currently");
- ad->paused_by_user = true;
- if (ad->win_minicon) {
- mp_minicontroller_hide(ad);
- }
- if (ad->win_lockmini) {
- mp_lockscreenmini_hide(ad);
- }
- }
-
mp_app_pipe_data_s pipe_data;
memset(&pipe_data, 0, sizeof(mp_app_pipe_data_s));
pipe_data.type = MP_APP_PIPE_CB_ACTIVE_DEVICE_CHANGED;
ad->recorder_type = type;
}
+void _mp_app_minicontroller_state_changed_cb(const char *key, void *data)
+{
+ int minictrl_state = PREF_NO_MINICONTROLLER;
+ int ret = preference_get_int(key, &minictrl_state);
+ if (ret != PREFERENCE_ERROR_NONE) {
+ ERROR_TRACE("Cannot get minicontroller state");
+ return;
+ }
+
+#ifdef MP_SOUND_PLAYER
+ if (minictrl_state == PREF_MUSIC_PLAYER_MINICONTROLLER) {
+#else
+ if (minictrl_state == PREF_SOUND_PLAYER_MINICONTROLLER) {
+#endif
+ DEBUG_TRACE("Some other player playing currently");
+ struct appdata *ad = mp_util_get_appdata();
+ MP_CHECK(ad);
+ ad->paused_by_user = true;
+ if (ad->win_minicon) {
+ mp_minicontroller_hide(ad);
+ }
+ if (ad->win_lockmini) {
+ mp_lockscreenmini_hide(ad);
+ }
+ }
+}
+
static bool _mp_main_init(struct appdata *ad)
{
ad->music_setting_change_flag = false;
ad->paused_by_user = true;
+ bool key_exists = FALSE;
+ int ret_p = preference_is_existing(PREF_MINICONTROLLER, &key_exists);
+ if (ret_p != PREFERENCE_ERROR_NONE) {
+ ERROR_TRACE("Could not find MiniController State Key");
+ }
+
+ if (!key_exists) {
+ preference_set_int(PREF_MINICONTROLLER, PREF_NO_MINICONTROLLER);
+ }
+
+ if (preference_set_changed_cb
+ (PREF_MINICONTROLLER, _mp_app_minicontroller_state_changed_cb, ad) < 0) {
+ ERROR_TRACE("Fail to register PREF_MINICONTROLLER key callback");
+ }
+
#ifdef MP_SOUND_PLAYER
preference_set_int(PREF_SOUND_PLAYER_LAUNCH, PREF_PLAYER_ON);
#else
DEBUG_TRACE("ERROR");
return -1;
}
- //mp_language_mgr_register_object(ad->minicontroller_layout, OBJ_TYPE_EDJE_OBJECT, "elm.text.app_name", "IDS_COM_BODY_MUSIC");
- //elm_object_part_text_set(ad->minicontroller_layout, "elm.text.app_name", GET_SYS_STR("IDS_COM_BODY_MUSIC"));
}
mp_minicontroller_update_winmini_size(ad);
/* Not show minicontrol when current track not exsit */
MP_CHECK_VAL(ad->current_track_info, -1);
+#ifdef MP_SOUND_PLAYER
+ preference_set_int(PREF_MINICONTROLLER, PREF_SOUND_PLAYER_MINICONTROLLER);
+#else
+ preference_set_int(PREF_MINICONTROLLER, PREF_MUSIC_PLAYER_MINICONTROLLER);
+#endif
+
ad->b_minicontroller_show = TRUE;
mp_minicontroller_update(ad, false);
evas_object_show(ad->win_minicon);