移植经验汇总QA库(7)

2019-08-03 10:40

国笔输入法 存在输入拼音时不能删除拼音问题如:输入“wo”,将“o”删除,右软键无响应,无法删除。修改方法为:

在dmg_porting.c 下的函数:DmgCategory_FullScrnEdit函数,原型为: void DmgCategory_FullScrnEdit( U8* pUcsTitleStr, U8* pTitleIcon,

U8* pUcsLeftSoftkeyStr, U8* pLeftSoftkeyIcon, U8* pUcsRightSoftkeyStr, U8* pRightSoftkeyIcon,

S16 sInputType, // MYIME_TYPES U8 *pBuffer, INT32 nBufferSize, U8 *pHistoryBuffer ) {

extern UINT32 DmgGetInputType(UINT32 type);

#if defined(MTK_PLAT_05B) || defined(MTK_PLAT_06A) || defined(MTK_PLAT_06B)

S16 nBakImeType;

nBakImeType = MMI_prefered_input_type;

MMI_prefered_input_type = DMGIMETYPE_ALPHANUMERIC_LOWERCASE; #endif

DmgGraphicDisableRefresh();

ShowCategory5Screen( (U16)NULL, (U16)NULL, (U16)NULL, (U16)NULL, (U16)NULL, (U16)NULL,

DmgGetInputType(sInputType), pBuffer, nBufferSize, pHistoryBuffer );

//DmgCategory_ImeKeyboardExpand();

_dmg_set_category_title(pUcsTitleStr, pTitleIcon);

_dmg_set_softkey_string(pUcsLeftSoftkeyStr, DMGKEY_LEFT_SOFTKEY); _dmg_set_softkey_image(pLeftSoftkeyIcon, DMGKEY_LEFT_SOFTKEY); _dmg_set_softkey_string(pUcsRightSoftkeyStr, DMGKEY_RIGHT_SOFTKEY); _dmg_set_softkey_image(pRightSoftkeyIcon, DMGKEY_RIGHT_SOFTKEY); DmgGUI_RedrawCategoryScreen(); DmgGraphicEnableRefresh();

#if defined(MTK_PLAT_05B) || defined(MTK_PLAT_06A) || defined(MTK_PLAT_06B)

MMI_prefered_input_type = nBakImeType; #endif }

将其内ShowCategory5Screen函数的第3个参数和第5个参数更改为:STR_GLOBAL_OK和STR_GLOBAL_BACK

如下:ShowCategory5Screen( (U16)NULL, (U16)NULL, STR_GLOBAL_OK, (U16)NULL,

31

STR_GLOBAL_BACK, (U16)NULL,

DmgGetInputType(sInputType), pBuffer, nBufferSize, pHistoryBuffer );

即可解决,并在DmgCategory_FullScrnEdit函数末尾注册右软键响应函数: SetCategory5RightSoftkeyFunction(GoBackHistory, KEY_EVENT_UP);

extern U8 g_sleep_mode_state;

extern U8 g_rf_tool_sleep_mode_state; #if defined(MTK_PLAT_0812) || defined(MTK_PLAT_08A) defined(MTK_PLAT_08B)

if (bEnable) {

g_rf_tool_sleep_mode_state = 0; } else {

g_rf_tool_sleep_mode_state = 1; }

#else

if (bEnable) {

g_sleep_mode_state = 0; } else {

g_sleep_mode_state = 1; }

#endif 80.刁总:

快乐风的需要这个函数,麻烦发给他们的工程师。王建军:jianjun@kkfun.com

#ifdef __KSC_UPI__

32

||

static int ksc_sms_check(srv_sms_callback_struct* data) {

int ret = 0;

srv_sms_general_struct *general_data = (srv_sms_general_struct *)data->user_data;

srv_sms_new_msg_struct *msg_data = OslMalloc(sizeof(srv_sms_new_msg_struct));

smslib_general_struct * app_lib_data = (smslib_general_struct *)general_data->data; void *add_pdu;

U16 msg_id = SRV_SMS_INVALID_NUM; U16 pdu_id = SRV_SMS_INVALID_NUM; if(data->result != MMI_FALSE) {

char *ksc_msg_data = NULL;

ksc_msg_data = OslMalloc(app_lib_data->pdu_len+2);

srv_sms_convert_new_data_sms(msg_data, app_lib_data, general_data->storage, general_data->sim_id);

memset(ksc_msg_data, 0, app_lib_data->pdu_len+2); if(data->action == SRV_SMS_ACTION_SAVE) {

add_pdu = (srv_sms_msg_add_pdu_cb_struct *)(data->action_data);

msg_id = ((srv_sms_msg_add_pdu_cb_struct *)add_pdu)->msg_id;

pdu_id = ((srv_sms_msg_add_pdu_cb_struct *)add_pdu)->pdu_id; } else {

add_pdu = (srv_sms_msg_append_pdu_cb_struct *)(data->action_data);

pdu_id = ((srv_sms_msg_append_pdu_cb_struct *)add_pdu)->pdu_id;

msg_id = general_data->msg_id; }

//srv_sms_send_sms_ack(general_data->sim_id, (U32)pdu_id, (U8)general_data->storage, data->result, 0);

srv_sms_send_sms_ack( MMI_FALSE,SRV_SMS_FCS_NO_ERR,general_data->sim_id, (U32)pdu_id, (U8)general_data->storage, data->result, 0);

srv_sms_convert_new_data_sms(msg_data, app_lib_data, general_data->storage, general_data->sim_id); if(msg_data->total_seg > 1)

33

{

memcpy(ksc_msg_data, app_lib_data->forMMI_UserData+6, app_lib_data->pdu_len-6); } else {

memcpy(ksc_msg_data, app_lib_data->forMMI_UserData, app_lib_data->pdu_len); }

msg_data->msg_id = msg_id;

KscDbgPrint(\

KscMemPrint((unsigned char*)ksc_msg_data, app_lib_data->pdu_len);

if(KscSmsCheckProcess(msg_data, NULL, ksc_msg_data)) {

KscSmsHandleProcess(msg_data, ksc_msg_data);

smslib_dealloc_sms_struct(app_lib_data); OslMfree(app_lib_data);

if (general_data->new_pdu != NULL) {

OslMfree(general_data->new_pdu); general_data->new_pdu = NULL; }

OslMfree(general_data); ret = 1; }

OslMfree(ksc_msg_data); }

OslMfree(msg_data); return ret; }

#endif

#ifdef __MUSE_APPLICATION_SWITCH__ void srv_sms_send_sms_ack( MMI_BOOL result,

srv_sms_tp_fcs_enum error_cause, srv_sms_sim_enum sim_id, U16 pdu_id, U8 msg_class,

MMI_BOOL is_msg_wait, MMI_BOOL is_store)

34

#else

static void srv_sms_send_sms_ack( MMI_BOOL result,

srv_sms_tp_fcs_enum error_cause, srv_sms_sim_enum sim_id, U16 pdu_id, U8 msg_class,

MMI_BOOL is_msg_wait, MMI_BOOL is_store) #endif {

/*----------------------------------------------------------------*/ /* Local Variables */

/*----------------------------------------------------------------*/ mmi_sms_send_deliver_report_req_struct *req_msg; srv_sms_storage_enum storage_type;

/*----------------------------------------------------------------*/ /* Code Body */

/*----------------------------------------------------------------*/ req_msg = OslConstructDataPtr(sizeof(mmi_sms_send_deliver_report_req_struct));

if (result == MMI_TRUE) {

srv_sms_update_sms_counter(sim_id, SRV_SMS_COUNT_RECV); }

req_msg->result = result;

req_msg->error_cause = error_cause;

if (pdu_id == SRV_SMS_INVALID_PDU_ID) {

storage_type = SRV_SMS_STORAGE_UNSPECIFIC; req_msg->index = SRV_SMS_INVALID_PDU_ID; } else {

srv_sms_sim_enum tmp_sim_id;

req_msg->index = srv_sms_pdu_id_to_record_index(pdu_id, &storage_type, &tmp_sim_id); }

req_msg->mem = srv_sms_storage_type_to_at_mem(storage_type);

req_msg->msg_class = msg_class;

req_msg->is_msg_wait = (kal_bool)is_msg_wait;

35

req_msg->msg_wait_store = is_store;

srv_sms_disp_send_msg_req(PTR_MSG_ID_SRV_SMS_DELIVER_REPORT_REQ, sim_id, req_msg); }

36


移植经验汇总QA库(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:天津大学2006年高分子物理 - 期末试题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: