[ros-diffs] [mkupfer] 39703: - implements an initial DrawMenuBar function (fixes the taskbar menu redraw bug) - sorry, may contain a potentially hackfix (SendMessage WM_NCPAINT)
mkupfer at svn.reactos.org
mkupfer at svn.reactos.org
Sat Feb 21 23:35:12 CET 2009
Author: mkupfer
Date: Sun Feb 22 01:35:11 2009
New Revision: 39703
URL: http://svn.reactos.org/svn/reactos?rev=39703&view=rev
Log:
- implements an initial DrawMenuBar function (fixes the taskbar menu redraw bug)
- sorry, may contain a potentially hackfix (SendMessage WM_NCPAINT)
Modified:
trunk/reactos/dll/win32/user32/windows/menu.c
Modified: trunk/reactos/dll/win32/user32/windows/menu.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/menu.c?rev=39703&r1=39702&r2=39703&view=diff
==============================================================================
--- trunk/reactos/dll/win32/user32/windows/menu.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/user32/windows/menu.c [iso-8859-1] Sun Feb 22 01:35:11 2009
@@ -4033,7 +4033,21 @@
BOOL WINAPI
DrawMenuBar(HWND hWnd)
{
- return (BOOL)NtUserCallHwndLock(hWnd, HWNDLOCK_ROUTINE_DRAWMENUBAR);
+ ROSMENUINFO MenuInfo;
+ HMENU hMenu;
+ hMenu = GetMenu(hWnd);
+ if (!hMenu)
+ return FALSE;
+ MenuGetRosMenuInfo(&MenuInfo, hMenu);
+ MenuInfo.Height = 0; // make sure to recalc size
+ MenuSetRosMenuInfo(&MenuInfo);
+ /* The wine method doesn't work and I suspect it's more effort
+ then hackfix solution
+ SetWindowPos( hWnd, 0, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE |
+ SWP_NOZORDER | SWP_FRAMECHANGED );
+ return TRUE;*/
+ // FIXME: hackfix
+ return SendMessage(hWnd,WM_NCPAINT,(WPARAM)1,(LPARAM)0L);
}
More information about the Ros-diffs
mailing list