wineconsole[6/6]: WM_RBUTTONDOWN lParam is in client coordinates
not window coordinates
Mikołaj Zalewski
mikolaj at zalewski.pl
Wed Oct 18 08:56:36 CDT 2006
This makes the popup menu show in the correct place.
-------------- next part --------------
diff --git a/programs/wineconsole/user.c b/programs/wineconsole/user.c
index 19a1625..5254e71 100644
--- a/programs/wineconsole/user.c
+++ b/programs/wineconsole/user.c
@@ -1184,12 +1184,14 @@ static LRESULT CALLBACK WCUSER_Proc(HWND
case WM_RBUTTONDOWN:
if ((wParam & (MK_CONTROL|MK_SHIFT)) == data->curcfg.menu_mask)
{
- RECT r;
+ POINT pt;
- GetWindowRect(hWnd, &r);
+ pt.x = LOWORD(lParam);
+ pt.y = HIWORD(lParam);
+ ClientToScreen(hWnd, &pt);
WCUSER_SetMenuDetails(data, PRIVATE(data)->hPopMenu);
TrackPopupMenu(PRIVATE(data)->hPopMenu, TPM_LEFTALIGN|TPM_TOPALIGN,
- r.left + LOWORD(lParam), r.top + HIWORD(lParam), 0, hWnd, NULL);
+ pt.x, pt.y, 0, hWnd, NULL);
}
else
{
--
1.4.2.3
More information about the wine-patches
mailing list