[WIN32SS] For application menu's, only exclude the menu item,

not the entire window.
Because the application menu is part of the application window,
this would lead to bad results.
This commit is contained in:
Mark Jansen
2019-08-08 19:51:15 +02:00
parent f7e39f7d2a
commit 3cbdcc6363
+13 -3
View File
@@ -3354,10 +3354,20 @@ static PMENU FASTCALL MENU_ShowSubPopup(PWND WndOwner, PMENU Menu, BOOL SelectFi
pWnd = ValidateHwndNoErr(Menu->hWnd);
/* Grab the rect of our (entire) parent menu, so we can try to not overlap it */
if (!IntGetWindowRect(pWnd, &ParentRect))
if (Menu->fFlags & MNF_POPUP)
{
ERR("No pWnd\n");
ParentRect = Rect;
if (!IntGetWindowRect(pWnd, &ParentRect))
{
ERR("No pWnd\n");
ParentRect = Rect;
}
}
else
{
/* Inside the menu bar, we do not want to grab the entire window... */
ParentRect = Rect;
if (pWnd)
RECTL_vOffsetRect(&ParentRect, pWnd->rcWindow.left, pWnd->rcWindow.top);
}
/* correct item if modified as a reaction to WM_INITMENUPOPUP message */