Commit 2686b9b5 authored by Erich Hoover's avatar Erich Hoover Committed by Alexandre Julliard

hhctrl.ocx: Permit WS_CHILD help windows.

parent 97bcef99
......@@ -1585,7 +1585,7 @@ static LRESULT CALLBACK Help_WndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
static BOOL HH_CreateHelpWindow(HHInfo *info)
{
HWND hWnd;
HWND hWnd, parent = 0;
RECT winPos = info->WinType.rcWindowPos;
WNDCLASSEXW wcex;
DWORD dwStyles, dwExStyles;
......@@ -1613,7 +1613,11 @@ static BOOL HH_CreateHelpWindow(HHInfo *info)
/* Read in window parameters if available */
if (info->WinType.fsValidMembers & HHWIN_PARAM_STYLES)
dwStyles = info->WinType.dwStyles | WS_OVERLAPPEDWINDOW;
{
dwStyles = info->WinType.dwStyles;
if (!(info->WinType.dwStyles & WS_CHILD))
dwStyles |= WS_OVERLAPPEDWINDOW;
}
else
dwStyles = WS_OVERLAPPEDWINDOW | WS_VISIBLE |
WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
......@@ -1655,8 +1659,11 @@ static BOOL HH_CreateHelpWindow(HHInfo *info)
caption = info->WinType.pszCaption;
if (!*caption) caption = info->pCHMInfo->defTitle;
if (info->WinType.dwStyles & WS_CHILD)
parent = info->WinType.hwndCaller;
hWnd = CreateWindowExW(dwExStyles, windowClassW, caption,
dwStyles, x, y, width, height, NULL, NULL, hhctrl_hinstance, NULL);
dwStyles, x, y, width, height, parent, NULL, hhctrl_hinstance, NULL);
if (!hWnd)
return FALSE;
......@@ -1773,7 +1780,7 @@ void ReleaseHelpViewer(HHInfo *info)
OleUninitialize();
}
HHInfo *CreateHelpViewer(LPCWSTR filename)
HHInfo *CreateHelpViewer(LPCWSTR filename, HWND caller)
{
HHInfo *info = heap_alloc_zero(sizeof(HHInfo));
int i;
......@@ -1796,6 +1803,7 @@ HHInfo *CreateHelpViewer(LPCWSTR filename)
ReleaseHelpViewer(info);
return NULL;
}
info->WinType.hwndCaller = caller;
if(!CreateViewer(info)) {
ReleaseHelpViewer(info);
......
......@@ -181,7 +181,7 @@ HWND WINAPI HtmlHelpW(HWND caller, LPCWSTR filename, UINT command, DWORD_PTR dat
}
index = default_index;
info = CreateHelpViewer(fullname);
info = CreateHelpViewer(fullname, caller);
if(!info)
{
heap_free(default_index);
......@@ -253,7 +253,7 @@ HWND WINAPI HtmlHelpW(HWND caller, LPCWSTR filename, UINT command, DWORD_PTR dat
return 0;
}
info = CreateHelpViewer(fullname);
info = CreateHelpViewer(fullname, caller);
if(!info)
return NULL;
......
......@@ -194,7 +194,7 @@ IStream *GetChmStream(CHMInfo*,LPCWSTR,ChmPath*) DECLSPEC_HIDDEN;
LPWSTR FindContextAlias(CHMInfo*,DWORD) DECLSPEC_HIDDEN;
WCHAR *GetDocumentTitle(CHMInfo*,LPCWSTR) DECLSPEC_HIDDEN;
HHInfo *CreateHelpViewer(LPCWSTR) DECLSPEC_HIDDEN;
HHInfo *CreateHelpViewer(LPCWSTR,HWND) DECLSPEC_HIDDEN;
void ReleaseHelpViewer(HHInfo*) DECLSPEC_HIDDEN;
BOOL NavigateToUrl(HHInfo*,LPCWSTR) DECLSPEC_HIDDEN;
BOOL NavigateToChm(HHInfo*,LPCWSTR,LPCWSTR) DECLSPEC_HIDDEN;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment