📄 jmmspushhandling.c
字号:
* FUNCTION
* mmi_jmms_end_mms_play
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_end_mms_play(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
PRINT_INFORMATION_2((MMI_TRACE_INFO, "%s", "mmi_jmms_end_mms_play"));
mmi_jmms_deinit_mms_context(g_jmms_context);
mmi_jmms_free_delivery_report_header();
mmi_jmms_free_report_report_header();
DisplayIdleScreen();
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_play_mms
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_play_mms(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
CONTENT_DATA Content = {0, };
JC_RETCODE eRet = JC_OK;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
PRINT_INFORMATION_2((MMI_TRACE_INFO, "%s", "mmi_jmms_play_mms"));
mmi_jmms_deinit_mms_context(g_jmms_context);
Content.bIsStream = E_TRUE;
eRet = mmi_jmms_get_message("Inbox", &Content, g_jmms_context->mms_index);
if (eRet != JC_OK)
{
PRINT_INFORMATION_2((MMI_TRACE_INFO, "%s(%d)", "jmms fail to get the message from InBox.", eRet));
mmi_jmms_error_handler(eRet);
goto END;
}
#ifdef __MMI_UNIFIED_MESSAGE__
mmi_jmms_deinit_view();
#endif
eRet = mmi_jmms_pre_entry_mms_view(&Content);
if (g_jmms_context->last_scr_id != IDLE_SCREEN_ID && g_jmms_context->last_scr_id == SCR_ID_JMMS_INBOX_OPTIONS)
{
/* it means download from Inbox */
#ifdef __MMI_UNIFIED_MESSAGE__
HistoryReplace(SCR_ID_UM_INBOX, SCR_ID_UM_INBOX, mmi_um_jmms_pre_entry_inbox_including_highlighter);
#else
HistoryReplace(SCR_ID_JMMS_INBOX, SCR_ID_JMMS_INBOX, mmi_jmms_entry_inbox);
#endif
}
DeleteScreenIfPresent(SCR_ID_JMMS_READ_REPORT_QUERY);
DeleteScreenIfPresent(SCR_ID_JMMS_PROGRESS);
DeleteScreenIfPresent(SCR_ID_JMMS_POP_SCREEN);
DeleteScreenIfPresent(SCR_ID_JMMS_INBOX_OPTIONS);
DeleteScreenIfPresent(SCR_ID_JMMS_NEW_MMS);
DeleteScreenIfPresent(SCR_ID_JMMS_RETRIEVED_MMS_PROPERTIES);
if (eRet == JC_ERR_MMS_PARSE_PENDING)
{
return;
}
END:
if (eRet != JC_OK && g_jmms_context->msg_handle != NULL)
{
eRet = mmi_jmms_jdi_msg_deinit(g_jmms_context->msg_handle);
g_jmms_context->msg_handle = NULL;
}
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_back_msg_view_entry
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_back_msg_view_entry(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_jmms_deinit_mms_context(g_jmms_context);
mmi_jmms_free_delivery_report_header();
mmi_jmms_free_report_report_header();
if (g_jmms_context->last_scr_id == IDLE_SCREEN_ID)
{
DisplayIdleScreen();
}
else
{
#ifdef __MMI_UNIFIED_MESSAGE__
HistoryReplace(SCR_ID_UM_INBOX, SCR_ID_UM_INBOX, mmi_um_jmms_pre_entry_inbox_including_highlighter);
GoBackToHistory(SCR_ID_UM_INBOX);
#else /* __MMI_UNIFIED_MESSAGE__ */
/* PMTSW00006306 Fix : Lines commented as it will clear old history and issue in highlight handler */
// HistoryReplace(SCR_ID_JMMS_INBOX, SCR_ID_JMMS_INBOX, mmi_jmms_entry_inbox_screen);
GoBackToHistory(SCR_ID_JMMS_INBOX);
#endif /* __MMI_UNIFIED_MESSAGE__ */
}
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_need_mms_ind
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
*
*****************************************************************************/
U8 mmi_jmms_need_mms_ind(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
U8 need_ind = 0;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
#if !defined(__MMI_UNIFIED_MESSAGE__) && defined (__USB_IN_NORMAL_MODE__)
if (mmi_usb_is_in_mass_storage_mode() == KAL_FALSE)
#endif
{
if (g_jmms_context != NULL && g_jmms_context->pending_mms_info_list != NULL)
#ifdef __MMI_UNIFIED_MESSAGE__
if (g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_IDLE_SCREEN_POP_UP)
#endif
{
need_ind = 1;
}
}
return need_ind;
}
/*****************************************************************************
* FUNCTION
* mmi_jmms_entry_new_mms_ind
* DESCRIPTION
*
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_jmms_entry_new_mms_ind(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
U16 strid = 0;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
PRINT_INFORMATION_2((MMI_TRACE_INFO, "%s", "mmi_jmms_entry_new_mms_ind"));
if (g_jmms_context == NULL)
{
g_jmms_context = (jmms_context_struct*) jdd_MemAlloc(sizeof(jmms_context_struct), 1);
if (g_jmms_context == NULL)
{
DisplayPopup((PU8) GetString(STR_ID_JMMS_OUT_OF_MEMORY), IMG_GLOBAL_ERROR, 1, JMMS_POPUP_TIME, ERROR_TONE);
return;
}
}
if (g_jmms_context->pending_mms_info_list == NULL)
{
return;
}
EntryNewScreen(SCR_ID_JMMS_NEW_MMS_IND, NULL, NULL, NULL);
/* sandeep start in error situations like when fail to save mms notification ring tone should not play
// amit start
PlayMessageArrivalTone();
// amit end tone play on idle screen
*/
GetCurrEndKeyDownHandler();
if (g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_DELIVERY_REPORT
|| g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_READ_REPORT_RESPONSE
|| g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_RECEIVE)
{
strid = STR_ID_JMMS_READ_NEW_MMS;
}
else if (g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_NOTIFICATION)
{
strid = STR_ID_JMMS_DOWNLOAD_NEW_MMS;
}
else if (g_jmms_context->pending_mms_info_list->type != E_MSG_TYPE_IDLE_SCREEN_POP_UP)
{
return;
}
#ifdef __MMI_UNIFIED_MESSAGE__
if (g_jmms_context->pending_mms_info_list->type != E_MSG_TYPE_IDLE_SCREEN_POP_UP)
{
mmi_um_jmms_new_mms_message_ind(g_jmms_context->pending_mms_info_list->Index);
}
else
#endif /* __MMI_UNIFIED_MESSAGE__ */
{ /* vikas added */
if (g_keylock_context.gKeyPadLockFlag == 0)
{
if (g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_IDLE_SCREEN_POP_UP)
{
ShowCategory2Screen(
STR_MMS_MENUENTRY,
GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
0,
0,
STR_GLOBAL_BACK,
IMG_GLOBAL_BACK,
g_jmms_context->pending_mms_info_list->Index,
NULL);
SetRightSoftkeyFunction(mmi_jmms_delete_mms_pop_up_node, KEY_EVENT_UP);
if (isInCall() == FALSE)
SetKeyHandler(mmi_jmms_free_mms_pop_ups_list, KEY_END, KEY_EVENT_DOWN); /* /delete the link list */
}
else
{
ShowCategory154Screen(
0,
0,
STR_GLOBAL_YES,
IMG_GLOBAL_YES,
STR_GLOBAL_NO,
IMG_GLOBAL_NO,
(PU8) GetString(strid),
NULL,
IMG_NEW_MESSAGE_NOTIFICATION_MSG,
NULL);
SetRightSoftkeyFunction(mmi_jmms_delete_mms_pop_up_node, KEY_EVENT_UP);
SetLeftSoftkeyFunction(mmi_jmms_handle_mms_pop_up, KEY_EVENT_UP);
if (isInCall() == FALSE)
{
SetKeyHandler(mmi_jmms_free_mms_pop_ups_list, KEY_END, KEY_EVENT_DOWN); /* /delete the link list */
//sandeep
//PlayMessageArrivalTone();
//sandeep
}
}
}
else /* keypad is locked */
{
#if defined(__MMI_KEYPAD_LOCK_PATTERN_1__) || defined(__MMI_KEYPAD_LOCK_PATTERN_3__) || defined(__MMI_KEYPAD_LOCK_PATTERN_4__) //KP Jerry add "__MMI_KEYPAD_LOCK_PATTERN_3__" on 2007-3-26
if (g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_IDLE_SCREEN_POP_UP)
{
ShowCategory2Screen(
STR_MMS_MENUENTRY,
GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
0,
0,
#ifdef __MMI_TOUCH_SCREEN__
SCREEN_LOCKED_TEXT,
#else
KEYPAD_LOCKED_RSK_TEXT,
#endif
0,
g_jmms_context->pending_mms_info_list->Index,
NULL);
}
else
{
ShowCategory154Screen(
0,
0,
0,
0,
#ifdef __MMI_TOUCH_SCREEN__
SCREEN_LOCKED_TEXT,
#else
KEYPAD_LOCKED_RSK_TEXT,
#endif
0,
(PU8) GetString(strid),
NULL,
IMG_NEW_MESSAGE_NOTIFICATION_MSG,
NULL);
if (isInCall() == FALSE)
{
//sandeep
//PlayMessageArrivalTone();
//sandeep
}
}
#else /* __MMI_KEYPAD_LOCK_PATTERN_1__ || __MMI_KEYPAD_LOCK_PATTERN_3__ ||__MMI_KEYPAD_LOCK_PATTERN_4__ */ //KP Jerry add "__MMI_KEYPAD_LOCK_PATTERN_3__" on 2007-3-27
if (g_jmms_context->pending_mms_info_list->type == E_MSG_TYPE_IDLE_SCREEN_POP_UP)
{
ShowCategory2Screen(
STR_MMS_MENUENTRY,
GetRootTitleIcon(MAIN_MENU_MESSAGES_MENUID),
#ifdef __MMI_TOUCH_SCREEN__
SCREEN_LOCKED_TEXT.
#else
KEYPAD_LOCKED_RSK_TEXT,
#endif
,
0,
0,
0,
g_jmms_context->pending_mms_info_list->Index,
NULL);
}
else
{
ShowCategory154Screen(
0,
0,
#ifdef __MMI_TOUCH_SCREEN__
SCREEN_LOCKED_TEXT,
#else
KEYPAD_LOCKED_RSK_TEXT,
#endif
,
0,
0,
0,
(PU8) GetString(strid),
NULL,
IMG_NEW_MESSAGE_NOTIFICATION_MSG,
NULL);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -