📄 jbrowsermmiserviceinbox.c
字号:
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
g_brw_index_current_highlighted_item = (U8) GetHighlightedItem();
mmi_brw_entry_service_inbox_options();
}
/*****************************************************************************
* FUNCTION
* mmi_brw_delete_all_push_messages
* DESCRIPTION
* Deletes the entire recent page list
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_delete_all_push_messages(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
U16 msg_counter;
JC_UINT32 brw_total_msg_count;
JC_UINT32 brw_unread_msg_count;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
/* added by Vivek */
HideStatusIcon(STATUS_ICON_WAP);
mmi_brw_get_push_statistics(&brw_total_msg_count, &brw_unread_msg_count);
for (msg_counter = 0; msg_counter < brw_total_msg_count; msg_counter++)
{
mmi_brw_delete_push_msg(0);
}
/* Added by Vivek - 13072006 */
mmi_brw_push_free_service_value_struct(&g_current_service_message);
/* Edited By Vivek - 5 July 2006 */
/* DisplayPopup((PU8) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_DELETED, 1, UI_POPUP_NOTIFYDURATION_TIME, SUCCESS_TONE); */
/* Edited by Vivek - 02082006. Now instead of displaying the image IMG_GLOBAL_DELETED
we are displaying IMG_GLOBAL_ACTIVATED as we are doing in other part of browser */
DisplayPopup((PU8) GetString(STR_GLOBAL_DONE), IMG_GLOBAL_ACTIVATED, 1, UI_POPUP_NOTIFYDURATION_TIME, SUCCESS_TONE);
if (IsScreenPresent(SCR_ID_BRW_SERVICE_INBOX))
{
DeleteUptoScrID(SCR_ID_BRW_SERVICE_INBOX);
}
else /* when message is deleted from idle screen */
{
mmi_brw_entry_service_inbox();
DeleteScreenIfPresent(SCR_ID_BRW_PUSH_MESSAGE_READ_OPTIONS);
DeleteScreenIfPresent(SCR_ID_BRW_NEW_PUSH_MESSAGE_IND);
DeleteScreenIfPresent(SCR_ID_BRW_READ_SERVICE_MESSAGE);
}
/* Save to persistant storage */
mmi_brw_save_current_push_info();
}
/*****************************************************************************
* FUNCTION
* mmi_brw_entry_service_inbox_options_back
* DESCRIPTION
* Back function for service inbox options screen.
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_entry_service_inbox_options_back(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
/* Added by Vivek - 13072006 */
mmi_brw_push_free_service_value_struct(&g_current_service_message);
GoBackHistory();
}
/*****************************************************************************
* FUNCTION
* mmi_brw_entry_service_inbox_options
* DESCRIPTION
* Entry function for service inbox options screen.
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_entry_service_inbox_options(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
U16 UC_list_of_items[3];
U8 *guiBuffer;
S32 num_of_items;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
EntryNewScreen(SCR_ID_BRW_SERVICE_INBOX_OPTIONS, NULL, mmi_brw_entry_service_inbox_options, NULL);
guiBuffer = GetCurrGuiBuffer(SCR_ID_BRW_SERVICE_INBOX_OPTIONS);
num_of_items = GetNumOfChild(MENU_ID_BRW_PUSH_MSG_OPTIONS);
GetSequenceStringIds(MENU_ID_BRW_PUSH_MSG_OPTIONS, UC_list_of_items);
SetParentHandler(MENU_ID_BRW_PUSH_MSG_OPTIONS);
RegisterHighlightHandler(ExecuteCurrHiliteHandler);
ShowCategory15Screen(
STR_ID_BRW_OPTION,
GetRootTitleIcon(SERVICES_WAP_MENU_ID),
STR_GLOBAL_OK,
0,
STR_GLOBAL_BACK,
0,
num_of_items,
UC_list_of_items,
(U16*) gIndexIconsImageList,
LIST_MENU,
0,
guiBuffer);
SetRightSoftkeyFunction(mmi_brw_entry_service_inbox_options_back, KEY_EVENT_UP);
SetKeyHandler(mmi_brw_entry_service_inbox_options_back, KEY_LEFT_ARROW, KEY_EVENT_DOWN);
}
/*****************************************************************************
* FUNCTION
* mmi_brw_read_arrived_push_message_exit
* DESCRIPTION
* Exit Function to read arrived push message form idle screen
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_read_arrived_push_message_exit(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
if (NULL != g_read_arrived_message_buffer)
{
jdd_MemFree(g_read_arrived_message_buffer);
g_read_arrived_message_buffer = NULL;
}
}
/*****************************************************************************
* FUNCTION
* mmi_brw_read_arrived_push_message
* DESCRIPTION
* Entry Function to read arrived push message form idle screen
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_read_arrived_push_message(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
U32 brw_total_msg_count = 0;
U32 brw_unread_msg_count = 0;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_brw_get_push_statistics(&brw_total_msg_count, &brw_unread_msg_count);
if (1 == brw_unread_msg_count)
{
g_brw_index_current_highlighted_item = 0;
mmi_brw_entry_read_push_message();
}
else
{
mmi_brw_entry_service_inbox();
}
}
/*****************************************************************************
* FUNCTION
* mmi_brw_new_push_msg_ind
* DESCRIPTION
* Function to check the status whether new message is recieved
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
U8 mmi_brw_new_push_msg_ind(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
return g_brw_cntx.push_msg_rcvd_flag;
}
/*****************************************************************************
* FUNCTION
* mmi_brw_new_push_msg_ind_on_idlescreen
* DESCRIPTION
* Entry Function to display screen for push message arrived indication
* on idle-screen.
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_new_push_msg_ind_on_idlescreen(void) /* added by puneet */
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
S8 buf[4] = {0};
S8 pOutBuffer[8] = {0};
S8 message_string[40] = {0};
U32 brw_total_msg_count = 0;
U32 brw_unread_msg_count = 0;
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_brw_get_push_statistics(&brw_total_msg_count, &brw_unread_msg_count);
if (SCR_ID_BRW_NEW_PUSH_MESSAGE_IND == GetActiveScreenId())
{
DeleteNHistory(1);
}
if (0 == brw_unread_msg_count)
{
DisplayIdleScreen();
return;
}
if (brw_unread_msg_count < 10)
{
sprintf(buf, "%01d", brw_unread_msg_count);
}
else
{
sprintf(buf, "%02d", brw_unread_msg_count);
}
AnsiiToUnicodeString(pOutBuffer, buf);
pfnUnicodeStrcpy((S8*) message_string, pOutBuffer);
pfnUnicodeStrcat((S8*) message_string, " ");
pfnUnicodeStrcat((S8*) message_string, GetString(STR_ID_BRW_SERVICE_MESSAGE_RCVD));
EntryNewScreen(SCR_ID_BRW_NEW_PUSH_MESSAGE_IND, NULL, mmi_brw_new_push_msg_ind_on_idlescreen, NULL);
ShowStatusIcon(STATUS_ICON_WAP);
if (0 == g_keylock_context.gKeyPadLockFlag)
{
ShowCategory154Screen(
0,
0,
STR_ID_BRW_READ,
IMG_GLOBAL_YES,
STR_GLOBAL_BACK,
IMG_GLOBAL_BACK,
(PU8) message_string,
0,
IMG_NEW_MESSAGE_NOTIFICATION_MSG,
NULL);
g_brw_cntx.push_msg_rcvd_flag = MMI_FALSE;
if (1 == brw_unread_msg_count)
{
SetLeftSoftkeyFunction(mmi_brw_read_arrived_push_message, KEY_EVENT_UP);
}
else
{
SetLeftSoftkeyFunction(mmi_brw_entry_service_inbox, KEY_EVENT_UP);
}
SetRightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);
}
else /* Keypad is locked */
{
extern void EntryScrAfterPessingRSK(void);
extern void EntryScrKeyPadLockOnPessingAnyKey(void);
ShowCategory154Screen(
0,
0,
g_keylock_context.KeyLockLSKStringID,
g_keylock_context.KeyLockLSKIconID,
g_keylock_context.KeyLockRSKStringID,
g_keylock_context.KeyLockRSKIconID,
(PU8) message_string,
0,
IMG_NEW_MESSAGE_NOTIFICATION_MSG,
NULL);
#if defined(__MMI_KEYPAD_LOCK_PROMPT_TEXT__)
SetGroupKeyHandler(
EntryScrKeyPadLockOnPessingAnyKey,
(PU16) PresentAllKeys,
(U8) TOTAL_KEYS,
(U16) KEY_EVENT_DOWN);
#endif /* defined(__MMI_KEYPAD_LOCK_PROMPT_TEXT__) */
#if defined(__MMI_TOUCH_SCREEN__) && (!defined(__MMI_TOUCH_SCREEN_WITH_NUMERIC_KEY__) || defined(__MMI_SLIDE__)) //KP Jerry add "!defined(__MMI_TOUCH_SCREEN_WITH_NUMERIC_KEY__)" on 2007-3-26
#ifdef __MMI_KEYPAD_LOCK_PROMPT_TEXT__
#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-27
SetRightSoftkeyFunction(EntryScrKeyPadLockOnPessingAnyKey, KEY_EVENT_DOWN);
#endif
#ifdef __MMI_KEYPAD_LOCK_PATTERN_2__
SetLeftSoftkeyFunction(EntryScrKeyPadLockOnPessingAnyKey, KEY_EVENT_DOWN);
#endif
#else
ClearKeyHandler(KEY_LSK, KEY_EVENT_DOWN);
ClearKeyHandler(KEY_LSK, KEY_EVENT_UP);
ClearKeyHandler(KEY_RSK, KEY_EVENT_DOWN);
ClearKeyHandler(KEY_RSK, KEY_EVENT_UP);
#endif /* __MMI_KEYPAD_LOCK_PROMPT_TEXT__ */
SetKeyHandler(EntryScrAfterPessingRSK, KEY_SEND, KEY_EVENT_DOWN);
#else /* __MMI_TOUCH_SCREEN__ && !__MMI_TOUCH_SCREEN_WITH_NUMERIC_KEY__ */ //KP Jerry add "!__MMI_TOUCH_SCREEN_WITH_NUMERIC_KEY__" on 2007-3-26
#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-27
SetRightSoftkeyFunction(EntryScrAfterPessingRSK, KEY_EVENT_DOWN);
#endif
#ifdef __MMI_KEYPAD_LOCK_PATTERN_2__
SetLeftSoftkeyFunction(EntryScrAfterPessingRSK, KEY_EVENT_DOWN);
#endif
#endif /* __MMI_TOUCH_SCREEN__ && !__MMI_TOUCH_SCREEN_WITH_NUMERIC_KEY__ */ //KP Jerry add "!__MMI_TOUCH_SCREEN_WITH_NUMERIC_KEY__" on 2007-3-26
ClearKeyHandler(KEY_END, KEY_EVENT_DOWN);
#ifdef __MMI_TOUCH_SCREEN__
mmi_idle_pen_block();
#endif
}
}
/*****************************************************************************
* FUNCTION
* mmi_brw_entry_new_push_msg_ind
* DESCRIPTION
* Entry Function to display screen for push message arrived indication
* PARAMETERS
* void
* RETURNS
* void
*****************************************************************************/
void mmi_brw_entry_new_push_msg_ind(void)
{
/*----------------------------------------------------------------*/
/* Local Variables */
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/* Code Body */
/*----------------------------------------------------------------*/
mmi_brw_new_push_msg_ind_on_idlescreen();
g_brw_cntx.push_msg_rcvd_flag = MMI_FALSE;
}
#endif /* __MMI_UNIFIED_MESSAGE__ */
#endif /* defined (JATAAYU_SUPPORT) && defined (WAP_SUPPORT) */
#endif /* _MMI_JBROWSERMMISERVICEINBOX_C */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -