From e5c3a111c5045610a4509e2ef3a8151f179cd510 Mon Sep 17 00:00:00 2001 From: Jactry Zeng Date: Sat, 8 Apr 2023 09:51:02 -0500 Subject: [PATCH] shell32: Assign a default view mode value for IShellView. --- dlls/shell32/shlview.c | 1 + dlls/shell32/tests/shlview.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/dlls/shell32/shlview.c b/dlls/shell32/shlview.c index 40a7d76c359..f2e8bc67267 100644 --- a/dlls/shell32/shlview.c +++ b/dlls/shell32/shlview.c @@ -3779,6 +3779,7 @@ IShellView *IShellView_Constructor(IShellFolder *folder) sv->cScrollDelay = 0; sv->ptLastMousePos.x = 0; sv->ptLastMousePos.y = 0; + sv->FolderSettings.ViewMode = FVM_TILE; TRACE("(%p)->(%p)\n", sv, folder); return (IShellView*)&sv->IShellView3_iface; diff --git a/dlls/shell32/tests/shlview.c b/dlls/shell32/tests/shlview.c index a83f3137509..d25d626f829 100644 --- a/dlls/shell32/tests/shlview.c +++ b/dlls/shell32/tests/shlview.c @@ -1094,14 +1094,20 @@ static void test_GetSetCurrentViewMode(void) hr = IShellFolder_CreateViewObject(desktop, NULL, &IID_IShellView, (void**)&sview); ok(hr == S_OK, "got (0x%08lx)\n", hr); + hr = IShellView_QueryInterface(sview, &IID_IFolderView, (void **)&fview); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + viewmode = 0xdeadbeef; + hr = IFolderView_GetCurrentViewMode(fview, &viewmode); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + ok(viewmode == FVM_TILE || broken(viewmode == 0) /* pre win7 */, "Got view mode %u.\n", viewmode); + fs.ViewMode = 1; fs.fFlags = 0; browser = IShellBrowserImpl_Construct(); hr = IShellView_CreateViewWindow(sview, NULL, &fs, browser, &rc, &hwnd); ok(hr == S_OK || broken(hr == S_FALSE /*Win2k*/ ), "got (0x%08lx)\n", hr); - hr = IShellView_QueryInterface(sview, &IID_IFolderView, (void**)&fview); - ok(hr == S_OK || broken(hr == E_NOINTERFACE), "got (0x%08lx)\n", hr); if(SUCCEEDED(hr)) { HWND hwnd_lv; -- 2.11.4.GIT