diff --git a/dlls/comdlg32/filedlg.c b/dlls/comdlg32/filedlg.c index de3dc38bc47..4986122a8e4 100644 --- a/dlls/comdlg32/filedlg.c +++ b/dlls/comdlg32/filedlg.c @@ -1150,7 +1150,7 @@ INT_PTR CALLBACK FileOpenDlgProc95(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM l case WM_INITDIALOG: { FileOpenDlgInfos * fodInfos = (FileOpenDlgInfos *)lParam; - RECT rc; + RECT rc, rcstc; int gripx = GetSystemMetrics( SM_CYHSCROLL); int gripy = GetSystemMetrics( SM_CYVSCROLL); @@ -1185,6 +1185,18 @@ INT_PTR CALLBACK FileOpenDlgProc95(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM l SendCustomDlgNotificationMessage(hwnd,CDN_FOLDERCHANGE); } + /* if the app has changed the position of the invisible listbox, + * change that of the listview (browser) as well */ + GetWindowRect( fodInfos->ShellInfos.hwndView, &rc); + GetWindowRect( GetDlgItem( hwnd, IDC_SHELLSTATIC ), &rcstc); + if( !EqualRect( &rc, &rcstc)) + { + MapWindowPoints( NULL, hwnd, (LPPOINT) &rcstc, 2); + SetWindowPos( fodInfos->ShellInfos.hwndView, NULL, + rcstc.left, rcstc.top, rcstc.right - rcstc.left, rcstc.bottom - rcstc.top, + SWP_NOACTIVATE | SWP_NOZORDER); + } + if (fodInfos->ofnInfos->Flags & OFN_ENABLESIZING) { GetWindowRect( hwnd, &rc);