删除本地邮件时,默认不要删除 server端的邮件
0赞[DESCRIPTION]
在10A上,如果对本地邮件做了删除后,对于POP3账户来说,用户选择Disconnect的选项后,手机端会发送
command给server删除对应的server上面的邮件。如果是IMAP4账户,处于connection状态时,则会直接发送delete命令
删除server端的邮件,如果处于disconnection状态则在下一次连接网络时发送命令。如何修改为:删除手机端邮件时,
半导体社区不删除server端邮件?
[SOLUTION]
如下以函数mmi_email_acct_folder_delete_msg()为例,在该进行如下方式的更改:
if (num > 0)
{
if ((acct_info->protocol == SRV_EMAIL_PROT_IMAP4) &&
mmi_email_get_acct_main_nwk_state() )
{
delete_info.delete_all = MMI_FALSE;
delete_info.delete_all_marked = MMI_TRUE;
delete_info.delete_header = MMI_FALSE;
delete_info.delete_server = MMI_TRUE;
delete_info.msg_id = 0;
}
else
{
delete_info.delete_all = MMI_FALSE;
delete_info.delete_all_marked = MMI_TRUE;
delete_info.delete_header = MMI_TRUE;
delete_info.delete_server =MMI_FALSE ;
delete_info.msg_id = 0;
}
}
else
{
if ((acct_info->protocol == SRV_EMAIL_PROT_IMAP4) &&
mmi_email_get_acct_main_nwk_state() )
{
delete_info.delete_all = MMI_FALSE;
delete_info.delete_all_marked = MMI_FALSE;
delete_info.delete_header = MMI_FALSE;
delete_info.delete_server = MMI_TRUE;
delete_info.msg_id = msg_id;
}
else
{
delete_info.delete_all = MMI_FALSE;
delete_info.delete_all_marked = MMI_FALSE;
delete_info.delete_header = MMI_TRUE;
delete_info.delete_server = MMI_FALSE;
delete_info.msg_id = msg_id;
}
}
即根据判断条件,令 delete_info.delete_server = MMI_FALSE 即可。
