This function is used to help manage the input panel and your application. When a window is activated, the input panel should be restored to the state it was in when the window lost activation This function helps manage the restoration of the original state.
WINSHELLAPI BOOL SHHandleWMActivate( HWND hwnd, WPARAM wParam, LPARAM lParam, SHACTIVATEINFO * psai, DWORD dwFlags );
[in] Handle to window processing the WM_ACTIVATE message.
[in] Specifies the wParam of the WM_ACTIVATE message.
[in] Specifies the lParam of the WM_ACTIVATE message.
[in] Pointer to a SHACTIVATEINFO structure. If you are also sizing your window when the input panel is raised or lowered, this should be a pointer to the same memory you pass to SHHandleWMSettingChange.
[in] SHA_INPUTDIALOG is used in dialog boxes where the user is entering a large amount of data. For example, when creating a new appointment in Calendar, use this flag in conjunction with
SHSipPreference (hwnd, SIP_INPUTDIALOG). That is, call SHSipPreference during WM_INITDIALOG processing, and then pass this flag to SHHandleWMActivate. Using this flag will prevent the input panel from being raised or lowered when the user navigates to different fields in the dialog box. Instead, the input panel will stay raised until the user explicitly lowers it.