简单的分析一下History管理机制与EntryNewScreen的关系
1. 与EntryNewScreen函数有关的全局变量:
currEntryFuncPtr,
currExitScrnID, currTopScrnID,
currExitFuncPtr
2. EntryNewScreen函数部分流程:
Step1: 保存新屏幕ID(函数第一参数)-->currTopScrnID ;
Step2: 调用ExecuteCurrExitHandler ;
Step3: 保存新屏幕ID-->currExitScrnID ;
Step4: 调用SetGenericExitHandler ;
Step5: ......
......
3. 分析 ExecuteCurrExitHandler
函数原型: void ExecuteCurrExitHandler( void ) ;
A. 该函数主要流程就是依次调用了 ExecuteCurrExitHandler_Ext, ClearInputEventHandler
B. 主要分析 ExecuteCurrExitHandler_Ext函数的作用
函数原型: void ExecuteCurrExitHandler_Ext( void ) ;
函数功能: This function is used for executes current exit func handler without clear keys ;
函数主要流程(伪代码表示):
Step1: if(currEntryFuncPtr||currExitFuncPtr)
{
清除所有中断事件句柄 ;
}