/******************************************************************************* * @file keypad_mapping.c * @note Copyright (c) 2011 Sunplus-prof Technology Co., Ltd. * @log * Revision 0.1 2011/04/14 * create *******************************************************************************/ /******************************************************************************* * Header Files ******************************************************************************/ #include "board_config.h" #include "sysapp_table.h" #include "main_app.h" #include "sysapp_if.h" #include "gobj_mgr.h" #include "app_guiobj_popmsg.h" #include "keypad_mapping_table.h" #include "app_menumgr.h" #include "app_guiobj_adjust.h" #ifdef CONFIG_ATV_SUPPORT #include "atv_guiobj_table.h" #endif #if defined(CONFIG_DVB_SYSTEM) || defined(CONFIG_AUS_DVB_SYSTEM) || defined(CONFIG_DTMB_SYSTEM) #include "dvb_guiobj_table.h" #endif #ifdef CONFIG_ISDB_SYSTEM #include "app_guiobj_sbtvd_table.h" #endif #ifdef CONFIG_MEDIA_ENABLE #include "MM_browser_gui.h" #include "MM_EBook_gui.h" #include "MM_music_playback_gui.h" #endif #ifdef SUPPORT_FACTORY_AUTO_TEST //#include "Debug_msg.h" #endif #include "app_data_setting.h" /******************************************************************************* * Global Variables ******************************************************************************/ #define KEYPAD_SARADC_DEBAUCE_COUNT 1 #define KEYPAD_SARADC_REPEAT_COUNT 5 #define KEYPAD_GPIO_DEBAUCE_COUNT 3 #define KEYPAD_GPIO_REPEAT_COUNT 3 /******************************************************************************* * IC keypad Range setting rules * voltage range(keycode) * 0V ~ 0.33V 0x001 * 0.33V ~ 0.66V 0x002 * 0.66V ~ 0.99V 0x004 * 0.99V ~ 1.32V 0x008 * 1.32V ~ 1.65V 0x010 * 1.65V ~ 1.98V 0x020 * 1.98V ~ 2.31V 0x040 * 2.31V ~ 2.64V 0x080 * 2.64V ~ 2.97V 0x100 * 2.97V ~ 3.3V none ******************************************************************************/ KEYPAD_PARAM_t KeypadMap_final[keypadNum] = {{0},{0},{0},{0},{0},{0},{0},{0}}; #ifdef SUPPORT_FACTORY_AUTO_TEST KEYPAD_PARAM_t KeypadMapFac_final[keypadNum] = {{0},{0},{0},{0},{0},{0},{0},{0}}; #endif #ifdef CONFIG_ATV_SUPPORT static void _Keypad_ATV_Event_convert(UINT32 dSystemAppIndex, UINT32 *pbEvent) { INT32 dObjectID; sys_app_errorcode_t ret = SYSTEM_APP_SUCCESS; PopmsgType_t eType; switch(*pbEvent) { case UI_EVENT_KEYPAD_MENU: if ((SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID) == SYSTEM_APP_SUCCESS) && (dObjectID != APP_GUIOBJ_BANNER) && (dObjectID != ATV_GUIOBJ_INPUTINFO) && (dObjectID != ATV_GUIOBJ_PROGNUM) && (dObjectID != ATV_GUIOBJ_SIF) && (dObjectID != APP_GUIOBJ_AMPLIFIERVOLUME) && (!((dObjectID == ATV_GUIOBJ_POPMSG) && (!APP_MenuMgr_Exist_Main_Menu()))) && (!((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME))) ) { *pbEvent = UI_EVENT_RETURN; } else { *pbEvent = UI_EVENT_MENU; } break; case UI_EVENT_KEYPAD_LEFT: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == ATV_GUIOBJ_INPUTINFO) || #ifdef CONFIG_SUPPORT_TTX (dObjectID == ATV_GUIOBJ_TTX)|| #endif (dObjectID == ATV_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_AMPLIFIERVOLUME) || ((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME)) || ((dObjectID == ATV_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_VOL_DN; } else { *pbEvent = UI_EVENT_LEFT; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_VOL_DN; } break; case UI_EVENT_KEYPAD_RIGHT: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == ATV_GUIOBJ_INPUTINFO) || #ifdef CONFIG_SUPPORT_TTX (dObjectID == ATV_GUIOBJ_TTX)|| #endif (dObjectID == ATV_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_AMPLIFIERVOLUME) || ((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME)) || ((dObjectID == ATV_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_VOL_UP; } else if (dObjectID == APP_GUIOBJ_SOURCE) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_RIGHT; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_VOL_UP; } break; case UI_EVENT_KEYPAD_UP: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == ATV_GUIOBJ_INPUTINFO) || (dObjectID == ATV_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || ((dObjectID == ATV_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_CH_UP; } else { *pbEvent = UI_EVENT_UP; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_CH_UP; } break; case UI_EVENT_KEYPAD_DOWN: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == ATV_GUIOBJ_INPUTINFO) || (dObjectID == ATV_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || ((dObjectID == ATV_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_CH_DN; } else { *pbEvent = UI_EVENT_DOWN; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_CH_DN; } break; case UI_EVENT_KEYPAD_SOURCE: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == ATV_GUIOBJ_POPMSG) && (eType == POPMSG_TYPE_CONFIRM)) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_SOURCE; } } else { *pbEvent = UI_EVENT_SOURCE; } break; case UI_EVENT_KEYPAD_POWER: *pbEvent = UI_EVENT_POWER; break; default: break; } } #else static void _Keypad_ATV_Event_convert(UINT32 dSystemAppIndex, UINT32 *pbEvent) { INT32 dObjectID; sys_app_errorcode_t ret = SYSTEM_APP_SUCCESS; PopmsgType_t eType; switch(*pbEvent) { case UI_EVENT_KEYPAD_MENU: if ((SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID) == SYSTEM_APP_SUCCESS) && ((dObjectID == APP_GUIOBJ_MAINMENU) || (dObjectID == APP_GUIOBJ_ADJUST) || (dObjectID == APP_GUIOBJ_SOURCE) || (dObjectID == APP_GUIOBJ_FM_FACTORYSETTING))) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_MENU; } break; case UI_EVENT_KEYPAD_LEFT: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if (dObjectID == APP_GUIOBJ_FM_FACTORYSETTING) { *pbEvent = UI_EVENT_LEFT; } } break; case UI_EVENT_KEYPAD_RIGHT: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if (dObjectID == APP_GUIOBJ_FM_FACTORYSETTING) { *pbEvent = UI_EVENT_RIGHT; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_OPEN_FACTORY; } break; case UI_EVENT_KEYPAD_UP: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if (dObjectID == APP_GUIOBJ_MAINMENU || dObjectID == APP_GUIOBJ_SOURCE || dObjectID == APP_GUIOBJ_FM_FACTORYSETTING) { *pbEvent = UI_EVENT_UP; } else if(dObjectID == APP_GUIOBJ_BANNER || dObjectID == APP_GUIOBJ_ADJUST) { *pbEvent = UI_EVENT_RIGHT; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_PIC_MOD; } break; case UI_EVENT_KEYPAD_DOWN: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if((dObjectID == APP_GUIOBJ_MAINMENU) || (dObjectID == APP_GUIOBJ_ADJUST) || (dObjectID == APP_GUIOBJ_SOURCE) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_FM_FACTORYSETTING)) { *pbEvent = UI_EVENT_RETURN; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_PCAUTOADJ; } break; case UI_EVENT_KEYPAD_SOURCE: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if((dObjectID == APP_GUIOBJ_MAINMENU) || (dObjectID == APP_GUIOBJ_SOURCE) || (dObjectID == APP_GUIOBJ_FM_FACTORYSETTING)) { *pbEvent = UI_EVENT_DOWN; } else if(dObjectID == APP_GUIOBJ_BANNER || dObjectID == APP_GUIOBJ_ADJUST) { *pbEvent = UI_EVENT_LEFT; } else { *pbEvent = UI_EVENT_SOURCE; } } else { *pbEvent = UI_EVENT_SOURCE; } break; case UI_EVENT_KEYPAD_POWER: *pbEvent = UI_EVENT_POWER; break; default: break; } } #endif #ifdef CONFIG_DTV_SUPPORT static void _Keypad_DVB_Event_convert(UINT32 dSystemAppIndex, UINT32 *pbEvent) { INT32 dObjectID; sys_app_errorcode_t ret = SYSTEM_APP_SUCCESS; PopmsgType_t eType; switch(*pbEvent) { case UI_EVENT_KEYPAD_MENU: if ((SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID) == SYSTEM_APP_SUCCESS) && (dObjectID != APP_GUIOBJ_BANNER) && (dObjectID != DVB_GUIOBJ_PROGINFO) && (dObjectID != DVB_GUIOBJ_PROGNUM) && (dObjectID != APP_GUIOBJ_AMPLIFIERVOLUME) && (!((dObjectID == DVB_GUIOBJ_POPMSG) && (!APP_MenuMgr_Exist_Main_Menu()))) && (!((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME))) #ifdef CONFIG_SUPPORT_PVR && (dObjectID != DVB_GUIOBJ_PVR_PLAYINFO) && (dObjectID != DVB_GUIOBJ_PVR_FILEPLAY) #endif ) { *pbEvent = UI_EVENT_RETURN; } else { *pbEvent = UI_EVENT_MENU; } break; case UI_EVENT_KEYPAD_LEFT: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == DVB_GUIOBJ_PROGINFO) || #ifdef CONFIG_SUPPORT_TTX (dObjectID == DVB_GUIOBJ_TTX)|| #endif (dObjectID == DVB_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_AMPLIFIERVOLUME) || ((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME)) || ((dObjectID == DVB_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_VOL_DN; } else { *pbEvent = UI_EVENT_LEFT; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_VOL_DN; } break; case UI_EVENT_KEYPAD_RIGHT: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == DVB_GUIOBJ_PROGINFO) || #ifdef CONFIG_SUPPORT_TTX (dObjectID == DVB_GUIOBJ_TTX)|| #endif (dObjectID == DVB_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_AMPLIFIERVOLUME) || ((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME)) || ((dObjectID == DVB_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_VOL_UP; } else if (dObjectID == APP_GUIOBJ_SOURCE) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_RIGHT; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_VOL_UP; } break; case UI_EVENT_KEYPAD_UP: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == DVB_GUIOBJ_PROGINFO) || (dObjectID == DVB_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || ((dObjectID == DVB_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_CH_UP; } else { *pbEvent = UI_EVENT_UP; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_CH_UP; } break; case UI_EVENT_KEYPAD_DOWN: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == DVB_GUIOBJ_PROGINFO) || (dObjectID == DVB_GUIOBJ_PROGNUM) || (dObjectID == APP_GUIOBJ_BANNER) || ((dObjectID == DVB_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_CH_DN; } else { *pbEvent = UI_EVENT_DOWN; } } else if (ret == SYSTEM_APP_NO_FOCUSED_GUIOBJ) { *pbEvent = UI_EVENT_CH_DN; } break; case UI_EVENT_KEYPAD_SOURCE: ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == DVB_GUIOBJ_POPMSG) && (eType == POPMSG_TYPE_CONFIRM)) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_SOURCE; } } else { *pbEvent = UI_EVENT_SOURCE; } break; case UI_EVENT_KEYPAD_POWER: *pbEvent = UI_EVENT_POWER; break; default: break; } } #endif #ifdef CONFIG_MEDIA_ENABLE static void _Keypad_FILE_Player_Event_convert(UINT32 dSystemAppIndex, UINT32 *pbEvent) { INT32 dObjectID; sys_app_errorcode_t ret = SYSTEM_APP_SUCCESS; PopmsgType_t eType; ret = SYSAPP_GOBJ_GetFocusedGUIObject(dSystemAppIndex, &dObjectID); switch(*pbEvent) { case UI_EVENT_KEYPAD_MENU: if ((APP_MenuMgr_Exist_Main_Menu()) || (APP_MenuMgr_Exist_Factory_Menu()) || (SYSAPP_GOBJ_GUIObjectExist(dSystemAppIndex, APP_GUIOBJ_INITINSTALL)) || (SYSAPP_GOBJ_GUIObjectExist(dSystemAppIndex, APP_GUIOBJ_AMPLIFIERVOLUME)) || ((SYSAPP_GOBJ_GUIObjectExist(dSystemAppIndex, APP_GUIOBJ_ADJUST)) && (APP_GUIOBJ_Adjust_GetType() != ADJUST_VOLUME))|| ((SYSAPP_GOBJ_GUIObjectExist(dSystemAppIndex, APP_GUIOBJ_ADJUST)) && (APP_GUIOBJ_Adjust_GetType() != ADJUST_HDMICEC_AMPVOLUME))) { *pbEvent = UI_EVENT_RETURN; } else { *pbEvent = UI_EVENT_MENU; } break; case UI_EVENT_KEYPAD_LEFT: APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == MEDIA_GUIOBJ_MOVIE_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_PHOTO_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_MUSIC_PLAYBACK && MM_Music_IsMusicPlayerOnFocus()) || (dObjectID == MEDIA_GUIOBJ_EBOOK_PLAYBACK && MM_Music_IsEBookPlayerOnFocus()) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_AMPLIFIERVOLUME) || ((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME)) || ((dObjectID == MEDIA_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_VOL_DN; } else { *pbEvent = UI_EVENT_LEFT; } } break; case UI_EVENT_KEYPAD_RIGHT: APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == MEDIA_GUIOBJ_MOVIE_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_PHOTO_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_MUSIC_PLAYBACK && MM_Music_IsMusicPlayerOnFocus()) || (dObjectID == MEDIA_GUIOBJ_EBOOK_PLAYBACK && MM_Music_IsEBookPlayerOnFocus()) || (dObjectID == APP_GUIOBJ_BANNER) || (dObjectID == APP_GUIOBJ_AMPLIFIERVOLUME) || ((dObjectID == APP_GUIOBJ_ADJUST) && (APP_GUIOBJ_Adjust_GetType() == ADJUST_VOLUME || APP_GUIOBJ_Adjust_GetType() == ADJUST_HDMICEC_AMPVOLUME)) || ((dObjectID == MEDIA_GUIOBJ_POPMSG) && ((eType == POPMSG_TYPE_PROMPT) || (eType == POPMSG_TYPE_PWD)))) { *pbEvent = UI_EVENT_VOL_UP; } else if (dObjectID == APP_GUIOBJ_SOURCE) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_RIGHT; } } break; case UI_EVENT_KEYPAD_UP: if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == MEDIA_GUIOBJ_HOMEPAGE) || (dObjectID == MEDIA_GUIOBJ_FILEBROWSER && (memcmp(CONFIG_APP_FOLDER_NAME,"rda_atv",strlen("rda_atv"))==0)) || (dObjectID == MEDIA_GUIOBJ_POPMSG_MAINMENU) || (dObjectID == MEDIA_GUIOBJ_MOVIE_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_PHOTO_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_MUSIC_PLAYBACK && MM_Music_IsMusicPlayerOnFocus()) || (dObjectID == MEDIA_GUIOBJ_EBOOK_PLAYBACK && MM_Music_IsEBookPlayerOnFocus()) ) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_UP; } } else { *pbEvent = UI_EVENT_UP; } break; case UI_EVENT_KEYPAD_DOWN: if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == MEDIA_GUIOBJ_HOMEPAGE) || (dObjectID == MEDIA_GUIOBJ_FILEBROWSER && (memcmp(CONFIG_APP_FOLDER_NAME,"rda_atv",strlen("rda_atv"))==0)) || (dObjectID == MEDIA_GUIOBJ_POPMSG_MAINMENU) || (dObjectID == MEDIA_GUIOBJ_MOVIE_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_PHOTO_PLAYBACK) || (dObjectID == MEDIA_GUIOBJ_MUSIC_PLAYBACK && MM_Music_IsMusicPlayerOnFocus()) || (dObjectID == MEDIA_GUIOBJ_EBOOK_PLAYBACK && MM_Music_IsEBookPlayerOnFocus()) ) { *pbEvent = UI_EVENT_EXIT; } else { *pbEvent = UI_EVENT_DOWN; } } else { *pbEvent = UI_EVENT_DOWN; } break; case UI_EVENT_KEYPAD_SOURCE: APP_GUIOBJ_PopMsg_GetMsgType(&eType); if (ret == SYSTEM_APP_SUCCESS) { if ((dObjectID == MEDIA_GUIOBJ_THUMBNAIL || dObjectID == MEDIA_GUIOBJ_MEIDA_PLAYLIST || dObjectID == MEDIA_GUIOBJ_MUSIC_BGSOURCE) ||(dObjectID == MEDIA_GUIOBJ_POPMSG && eType == POPMSG_TYPE_CONFIRM)) { *pbEvent = UI_EVENT_ENTER; } else { *pbEvent = UI_EVENT_SOURCE; } } else { *pbEvent = UI_EVENT_SOURCE; } break; case UI_EVENT_KEYPAD_POWER: *pbEvent = UI_EVENT_POWER; break; default: break; } } #endif #ifdef NET_SUPPORT static void _Keypad_Network_Event_convert(UINT32 dSystemAppIndex, UINT32 *pbEvent) { switch(*pbEvent) { case UI_EVENT_KEYPAD_MENU: *pbEvent = UI_EVENT_MENU; break; case UI_EVENT_KEYPAD_LEFT: *pbEvent = UI_EVENT_LEFT; break; case UI_EVENT_KEYPAD_RIGHT: *pbEvent = UI_EVENT_RIGHT; break; case UI_EVENT_KEYPAD_UP: *pbEvent = UI_EVENT_UP; break; case UI_EVENT_KEYPAD_DOWN: *pbEvent = UI_EVENT_DOWN; break; case UI_EVENT_KEYPAD_SOURCE: *pbEvent = UI_EVENT_SOURCE; break; case UI_EVENT_KEYPAD_POWER: *pbEvent = UI_EVENT_POWER; break; default: break; } } #endif #if (defined(SUPPORT_FACTORY_AUTO_TEST) || defined(SUPPORT_FACTORY_AUTO_TEST_MODE2)) static void _Factory_Auto_Test_Event_convert(UINT32 dSystemAppIndex, UINT32 *pbEvent) { //extern void Enable_Debug_Message(UINT32 DBGStatus); //Enable_Debug_Message(1<