[PATCH v2 6/6] win32u: Move GetMenuItemID implementation from user32.
Jacek Caban
wine at gitlab.winehq.org
Tue Jun 21 08:10:03 CDT 2022
From: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
---
dlls/user32/menu.c | 12 ++----------
dlls/win32u/menu.c | 6 ++++++
include/ntuser.h | 1 +
3 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/dlls/user32/menu.c b/dlls/user32/menu.c
index 434353e8892..76144706771 100644
--- a/dlls/user32/menu.c
+++ b/dlls/user32/menu.c
@@ -537,17 +537,9 @@ INT WINAPI GetMenuItemCount( HMENU menu )
/**********************************************************************
* GetMenuItemID (USER32.@)
*/
-UINT WINAPI GetMenuItemID( HMENU hMenu, INT nPos )
+UINT WINAPI GetMenuItemID( HMENU menu, INT pos )
{
- POPUPMENU *menu;
- UINT id, pos;
-
- if (!(menu = find_menu_item(hMenu, nPos, MF_BYPOSITION, &pos)))
- return -1;
-
- id = menu->items[pos].fType & MF_POPUP ? -1 : menu->items[pos].wID;
- release_menu_ptr(menu);
- return id;
+ return NtUserThunkedMenuItemInfo( menu, pos, MF_BYPOSITION, NtUserGetMenuItemID, NULL, NULL );
}
diff --git a/dlls/win32u/menu.c b/dlls/win32u/menu.c
index bee04f36dbf..eab97e58d39 100644
--- a/dlls/win32u/menu.c
+++ b/dlls/win32u/menu.c
@@ -1121,6 +1121,12 @@ UINT WINAPI NtUserThunkedMenuItemInfo( HMENU handle, UINT pos, UINT flags, UINT
switch (method)
{
+ case NtUserGetMenuItemID:
+ if (!(menu = find_menu_item( handle, pos, flags, &i ))) return -1;
+ ret = menu->items[i].fType & MF_POPUP ? -1 : menu->items[i].wID;
+ release_menu_ptr( menu );
+ break;
+
case NtUserGetMenuItemInfoA:
return get_menu_item_info( handle, pos, flags, info, TRUE );
diff --git a/include/ntuser.h b/include/ntuser.h
index d92332f13b9..41b328376a9 100644
--- a/include/ntuser.h
+++ b/include/ntuser.h
@@ -224,6 +224,7 @@ enum
NtUserSetMenuItemInfo,
NtUserInsertMenuItem,
/* Wine extensions */
+ NtUserGetMenuItemID,
NtUserGetMenuItemInfoA,
NtUserGetMenuItemInfoW,
NtUserGetMenuState,
--
GitLab
https://gitlab.winehq.org/wine/wine/-/merge_requests/294
More information about the wine-devel
mailing list