Vincent Povirk : comctl32: Disable owner of modal property sheets before creating the dialog.
Alexandre Julliard
julliard at winehq.org
Wed Jul 9 06:10:37 CDT 2008
Module: wine
Branch: master
Commit: 2893294f4b80ea363b75bfb9d784e7201fc0eb36
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2893294f4b80ea363b75bfb9d784e7201fc0eb36
Author: Vincent Povirk <vincent at codeweavers.com>
Date: Tue Jul 8 16:43:03 2008 -0500
comctl32: Disable owner of modal property sheets before creating the dialog.
---
dlls/comctl32/propsheet.c | 8 ++++++--
dlls/comctl32/tests/propsheet.c | 2 +-
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/dlls/comctl32/propsheet.c b/dlls/comctl32/propsheet.c
index 84b1b7f..f33bd54 100644
--- a/dlls/comctl32/propsheet.c
+++ b/dlls/comctl32/propsheet.c
@@ -2784,17 +2784,21 @@ static INT do_loop(const PropSheetInfo *psInfo)
static INT_PTR PROPSHEET_PropertySheet(PropSheetInfo* psInfo, BOOL unicode)
{
INT_PTR bRet = 0;
+ HWND parent = NULL;
if (psInfo->active_page >= psInfo->nPages) psInfo->active_page = 0;
TRACE("startpage: %d of %d pages\n", psInfo->active_page, psInfo->nPages);
psInfo->unicode = unicode;
psInfo->ended = FALSE;
- bRet = PROPSHEET_CreateDialog(psInfo);
if(!psInfo->isModeless)
{
- HWND parent = GetParent(psInfo->hwnd);
+ parent = psInfo->ppshheader.hwndParent;
if (parent) EnableWindow(parent, FALSE);
+ }
+ bRet = PROPSHEET_CreateDialog(psInfo);
+ if(!psInfo->isModeless)
+ {
bRet = do_loop(psInfo);
if (parent) EnableWindow(parent, TRUE);
}
diff --git a/dlls/comctl32/tests/propsheet.c b/dlls/comctl32/tests/propsheet.c
index f73bca3..45c8d97 100644
--- a/dlls/comctl32/tests/propsheet.c
+++ b/dlls/comctl32/tests/propsheet.c
@@ -140,7 +140,7 @@ static int CALLBACK disableowner_callback(HWND hwnd, UINT msg, LPARAM lparam)
{
case PSCB_INITIALIZED:
{
- todo_wine ok(IsWindowEnabled(parent) == 0, "parent window should be disabled\n");
+ ok(IsWindowEnabled(parent) == 0, "parent window should be disabled\n");
PostQuitMessage(0);
return FALSE;
}
More information about the wine-cvs
mailing list