Author: jimtabor Date: Wed Dec 17 19:14:39 2008 New Revision: 38162
URL: http://svn.reactos.org/svn/reactos?rev=38162&view=rev Log: Patch by Aric Stewart : user32: Implement handling of WM_INPUTLANGCHANGE. Updated header and made WIN_ListChildren global.
Modified: trunk/reactos/dll/win32/user32/include/window.h trunk/reactos/dll/win32/user32/windows/defwnd.c trunk/reactos/dll/win32/user32/windows/mdi.c
Modified: trunk/reactos/dll/win32/user32/include/window.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/include/wi... ============================================================================== --- trunk/reactos/dll/win32/user32/include/window.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/user32/include/window.h [iso-8859-1] Wed Dec 17 19:14:39 2008 @@ -63,3 +63,5 @@ HINSTANCE hInstance, LPVOID lpParam, BOOL Unicode); + +HWND* WIN_ListChildren (HWND hWndparent);
Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/de... ============================================================================== --- trunk/reactos/dll/win32/user32/windows/defwnd.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/user32/windows/defwnd.c [iso-8859-1] Wed Dec 17 19:14:39 2008 @@ -1574,8 +1574,15 @@
case WM_INPUTLANGCHANGE: { - //FIXME: What to do? - return TRUE; + int count = 0; + HWND *win_array = WIN_ListChildren( hWnd ); + + if (!win_array) + break; + while (win_array[count]) + SendMessageW( win_array[count++], WM_INPUTLANGCHANGE, wParam, lParam); + HeapFree(GetProcessHeap(),0,win_array); + break; }
case WM_ENDSESSION:
Modified: trunk/reactos/dll/win32/user32/windows/mdi.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/md... ============================================================================== --- trunk/reactos/dll/win32/user32/windows/mdi.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/user32/windows/mdi.c [iso-8859-1] Wed Dec 17 19:14:39 2008 @@ -126,7 +126,6 @@ static LRESULT WINAPI MDIClientWndProcA( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam ); static LRESULT WINAPI MDIClientWndProcW( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam );
-static HWND* WIN_ListChildren (HWND hWndparent) {