comdlg32: fix a problem with resizing a customized file dialog.
Rein Klazes
wijn at online.nl
Thu Jul 9 02:36:04 CDT 2009
Origin: multiple ascii import dialog does not properly move some
custom buttons.
---
dlls/comdlg32/filedlg.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/dlls/comdlg32/filedlg.c b/dlls/comdlg32/filedlg.c
index 6093952..f0bdfa4 100644
--- a/dlls/comdlg32/filedlg.c
+++ b/dlls/comdlg32/filedlg.c
@@ -1118,9 +1118,6 @@ static LRESULT FILEDLG95_OnWMSize(HWND hwnd, WPARAM wParam, LPARAM lParam)
if(fodInfos->DlgInfos.hwndCustomDlg &&
(fodInfos->ofnInfos->Flags & (OFN_ENABLETEMPLATE | OFN_ENABLETEMPLATEHANDLE)))
{
- GetClientRect(hwnd, &rc);
- DeferWindowPos( hdwp,fodInfos->DlgInfos.hwndCustomDlg, NULL,
- 0, 0, rc.right, rc.bottom, SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOZORDER);
for( ctrl = GetWindow( fodInfos->DlgInfos.hwndCustomDlg, GW_CHILD);
ctrl ; ctrl = GetWindow( ctrl, GW_HWNDNEXT))
{
@@ -1143,6 +1140,11 @@ static LRESULT FILEDLG95_OnWMSize(HWND hwnd, WPARAM wParam, LPARAM lParam)
SWP_NOSIZE | SWP_NOACTIVATE | SWP_NOZORDER);
}
}
+ /* size the custom dialog at the end: some applications do some
+ * control re-arranging at this point */
+ GetClientRect(hwnd, &rc);
+ DeferWindowPos( hdwp,fodInfos->DlgInfos.hwndCustomDlg, NULL,
+ 0, 0, rc.right, rc.bottom, SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOZORDER);
}
EndDeferWindowPos( hdwp);
/* should not be needed */
--
1.6.3.3
More information about the wine-patches
mailing list