Rebase against 330dc601978922aa1d5864d29d94882d6b1990d1.

This commit is contained in:
Alistair Leslie-Hughes
2022-03-12 11:27:46 +11:00
parent 0e1d830578
commit f077cbe2d3
28 changed files with 467 additions and 458 deletions

View File

@@ -1,4 +1,4 @@
From 229c08d829424f218cb09b0b6e9cc8c2d8489359 Mon Sep 17 00:00:00 2001
From 98b6fa0725d376b912932352637968f8e53432de Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 16 Aug 2015 17:34:22 +0200
Subject: [PATCH] shell32: Implement NewMenu with new folder item.
@@ -21,7 +21,7 @@ Correct header issue when compiling i386 (var_arg)
create mode 100644 dlls/shell32/shellnew.c
diff --git a/dlls/shell32/Makefile.in b/dlls/shell32/Makefile.in
index bb03300f9c9..c52017a7490 100644
index 7cc704e56b6..40df42aaaf2 100644
--- a/dlls/shell32/Makefile.in
+++ b/dlls/shell32/Makefile.in
@@ -29,6 +29,7 @@ C_SRCS = \
@@ -49,10 +49,10 @@ index 22ef49ae5c7..699ad1a2f03 100644
threading(apartment),
uuid(00bb2763-6a77-11d0-a535-00c04fd7d062)
diff --git a/dlls/shell32/shell32_main.h b/dlls/shell32/shell32_main.h
index 388f6ace073..8a1bca0fa7c 100644
index c39520371ec..26034777f0e 100644
--- a/dlls/shell32/shell32_main.h
+++ b/dlls/shell32/shell32_main.h
@@ -102,6 +102,7 @@ HRESULT WINAPI RecycleBin_Constructor(IUnknown * pUnkOuter, REFIID riif, LPVOID
@@ -101,6 +101,7 @@ HRESULT WINAPI RecycleBin_Constructor(IUnknown * pUnkOuter, REFIID riif, LPVOID
HRESULT WINAPI QueryAssociations_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppOutput) DECLSPEC_HIDDEN;
HRESULT WINAPI ExplorerBrowser_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv) DECLSPEC_HIDDEN;
HRESULT WINAPI KnownFolderManager_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv) DECLSPEC_HIDDEN;
@@ -62,7 +62,7 @@ index 388f6ace073..8a1bca0fa7c 100644
HRESULT WINAPI CPanel_ExtractIconA(LPITEMIDLIST pidl, LPCSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) DECLSPEC_HIDDEN;
diff --git a/dlls/shell32/shellnew.c b/dlls/shell32/shellnew.c
new file mode 100644
index 00000000000..04d718f0f0d
index 00000000000..a825d5a39a9
--- /dev/null
+++ b/dlls/shell32/shellnew.c
@@ -0,0 +1,497 @@
@@ -564,10 +564,10 @@ index 00000000000..04d718f0f0d
+ return hr;
+}
diff --git a/dlls/shell32/shellole.c b/dlls/shell32/shellole.c
index 5b72fecf07e..fc29a73fbb7 100644
index 7cd46ba2d98..7265e1660ac 100644
--- a/dlls/shell32/shellole.c
+++ b/dlls/shell32/shellole.c
@@ -73,6 +73,7 @@ static const struct {
@@ -72,6 +72,7 @@ static const struct {
{&CLSID_MyComputer, ISF_MyComputer_Constructor},
{&CLSID_MyDocuments, MyDocuments_Constructor},
{&CLSID_NetworkPlaces, ISF_NetworkPlaces_Constructor},
@@ -576,7 +576,7 @@ index 5b72fecf07e..fc29a73fbb7 100644
{&CLSID_QueryAssociations, QueryAssociations_Constructor},
{&CLSID_RecycleBin, RecycleBin_Constructor},
diff --git a/dlls/shell32/tests/shlview.c b/dlls/shell32/tests/shlview.c
index 48ba72a4c0e..dbb24d93564 100644
index b405a84bc19..c5849965777 100644
--- a/dlls/shell32/tests/shlview.c
+++ b/dlls/shell32/tests/shlview.c
@@ -1479,7 +1479,6 @@ static void test_newmenu(void)
@@ -584,11 +584,11 @@ index 48ba72a4c0e..dbb24d93564 100644
hr = CoCreateInstance(&CLSID_NewMenu, NULL, CLSCTX_INPROC_SERVER, &IID_IUnknown, (void **)&unk);
- todo_wine
ok(hr == S_OK, "Failed to create NewMenu object, hr %#x.\n", hr);
ok(hr == S_OK, "Failed to create NewMenu object, hr %#lx.\n", hr);
if (hr != S_OK)
{
@@ -1491,6 +1490,14 @@ static void test_newmenu(void)
ok(hr == S_OK, "Failed to get IShellExtInit, hr %#x.\n", hr);
ok(hr == S_OK, "Failed to get IShellExtInit, hr %#lx.\n", hr);
IUnknown_Release(unk2);
+ hr = IUnknown_QueryInterface(unk, &IID_IContextMenu, (void **)&unk2);
@@ -600,8 +600,8 @@ index 48ba72a4c0e..dbb24d93564 100644
+ IUnknown_Release(unk2);
+
hr = IUnknown_QueryInterface(unk, &IID_IContextMenu3, (void **)&unk2);
ok(hr == S_OK, "Failed to get IContextMenu3, hr %#x.\n", hr);
ok(hr == S_OK, "Failed to get IContextMenu3, hr %#lx.\n", hr);
IUnknown_Release(unk2);
--
2.34.1
2.35.1