mirror of
https://github.com/reactos/reactos.git
synced 2025-01-04 21:38:43 +00:00
Make dialogs update the UI state
svn path=/trunk/; revision=30613
This commit is contained in:
parent
6e7848434b
commit
fc02f8d454
2 changed files with 9 additions and 1 deletions
|
@ -1683,7 +1683,7 @@ User32DefWindowProc(HWND hWnd,
|
|||
{
|
||||
/* We're a child window and we need to pass this message down until
|
||||
we reach the root */
|
||||
hWnd = UserHMGetHandle(Wnd->Parent);
|
||||
hWnd = UserHMGetHandle((PWINDOW)DesktopPtrToUser(Wnd->Parent));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -816,6 +816,8 @@ static HWND DIALOG_CreateIndirect( HINSTANCE hInst, LPCVOID dlgTemplate,
|
|||
SetFocus( dlgInfo->hwndFocus );
|
||||
}
|
||||
|
||||
SendMessageW( hwnd, WM_CHANGEUISTATE, MAKEWPARAM(UIS_INITIALIZE, 0), 0);
|
||||
|
||||
if (template.style & WS_VISIBLE && !(GetWindowLongW( hwnd, GWL_STYLE ) & WS_VISIBLE))
|
||||
{
|
||||
ShowWindow( hwnd, SW_SHOWNORMAL ); /* SW_SHOW doesn't always work */
|
||||
|
@ -2207,6 +2209,8 @@ IsDialogMessageW(
|
|||
case VK_TAB:
|
||||
if (!(dlgCode & DLGC_WANTTAB))
|
||||
{
|
||||
SendMessageW(hDlg, WM_CHANGEUISTATE, MAKEWPARAM(UIS_CLEAR, UISF_HIDEFOCUS), 0);
|
||||
|
||||
/* I am not sure under which circumstances the TAB is handled
|
||||
* each way. All I do know is that it does not always simply
|
||||
* send WM_NEXTDLGCTL. (Personally I have never yet seen it
|
||||
|
@ -2306,6 +2310,10 @@ IsDialogMessageW(
|
|||
return TRUE;
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_SYSKEYDOWN:
|
||||
SendMessageW(hDlg, WM_CHANGEUISTATE, MAKEWPARAM(UIS_CLEAR, UISF_HIDEFOCUS), 0);
|
||||
break;
|
||||
}
|
||||
|
||||
TranslateMessage( lpMsg );
|
||||
|
|
Loading…
Reference in a new issue