[PATCH 0/1] MR11400: winhlp32: MACRO_PopupContext for bug #56516
From: Stian Low <wineryyyyy@gmail.com> --- programs/winhlp32/macro.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/programs/winhlp32/macro.c b/programs/winhlp32/macro.c index 36bda654afd..cfaaa32bb43 100644 --- a/programs/winhlp32/macro.c +++ b/programs/winhlp32/macro.c @@ -671,7 +671,8 @@ static void CALLBACK MACRO_NoShow(void) void CALLBACK MACRO_PopupContext(LPCSTR str, LONG u) { - WINE_FIXME("(%s, %lu)\n", debugstr_a(str), u); + WINE_TRACE("(%s, %lu)\n", debugstr_a(str), u); + MACRO_JumpContext (str, "main", u); } static void CALLBACK MACRO_PopupHash(LPCSTR str, LONG u) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/11400
Maybe all MACRO_Popup* should call corresponding MACRO_Jump*? If so I'll add those changes as part of patch. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/11400#note_145747
as far I remember, PopupContext should open a new popup window and display the context in it this MR incorrectly displays the context in the main window instead of the new popup -- https://gitlab.winehq.org/wine/wine/-/merge_requests/11400#note_145788
Correct, expected behavior is {width=441 height=342} IMO opening a full-size help viewer is better than doing absolutely nothing, but how much better certainly is debatable. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/11400#note_145810
completely untested nor compiled, but solution should be something along these lines ``` void CALLBACK MACRO_PopupContext(LPCSTR str, LONG u) { HLPFILE *hlpfile = WINHELP_LookupHelpFile(str); if (hlpfile) WINHELP_OpenHelpWindow(HLPFILE_PageByOffset, hlpfile, u, WINHELP_GetPopupWindowInfo(hlpfile, MACRO_CurrentWindow(), 0L), SW_NORMAL); } ``` and the other friends macro shall be defined accordingly, changing the HLPFILE_PageByOffset with the appropriate lookup helper (side note: the 0L is debatable, as it'll but the popup at the topleft of screen ; could be other values -not sure what native does here) HTH -- https://gitlab.winehq.org/wine/wine/-/merge_requests/11400#note_145816
On Thu Jul 16 10:26:56 2026 +0000, Alfred Agrell wrote:
Correct, expected behavior is {width=441 height=342} IMO opening a full-size help viewer is better than doing absolutely nothing, but how much better certainly is debatable. Thanks for clarifying. I should have tested for Windows.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/11400#note_145820
On Thu Jul 16 10:30:24 2026 +0000, eric pouech wrote:
completely untested nor compiled, but solution should be something along these lines ``` void CALLBACK MACRO_PopupContext(LPCSTR str, LONG u) { HLPFILE *hlpfile = WINHELP_LookupHelpFile(str); if (hlpfile) WINHELP_OpenHelpWindow(HLPFILE_PageByOffset, hlpfile, u, WINHELP_GetPopupWindowInfo(hlpfile, MACRO_CurrentWindow(), 0L), SW_NORMAL); } ``` and the other friends macro shall be defined accordingly, changing the HLPFILE_PageByOffset with the appropriate lookup helper (side note: the 0L is debatable, as it'll but the popup at the topleft of screen ; could be other values -not sure what native does here) HTH Patch causes "Failed to launch help" but is more correct than what I had so I'll use it as the basis for fixing whatever else is missing.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/11400#note_145821
participants (4)
-
Alfred Agrell (@Alcaro) -
eric pouech (@epo) -
Stian Low -
Stian Low (@stianlow)