https://git.reactos.org/?p=reactos.git;a=commitdiff;h=fc19c80d5239ca61c38fb8...
commit fc19c80d5239ca61c38fb8a99746a842b19eebff Author: Amine Khaldi amine.khaldi@reactos.org AuthorDate: Thu Mar 15 12:26:26 2018 +0100 Commit: Amine Khaldi amine.khaldi@reactos.org CommitDate: Thu Mar 15 12:26:26 2018 +0100
[IEFRAME] Sync with Wine Staging 3.3. CORE-14434 --- dll/win32/ieframe/CMakeLists.txt | 4 +- dll/win32/ieframe/classinfo.c | 4 ++ dll/win32/ieframe/client.c | 9 +++++ dll/win32/ieframe/dochost.c | 9 ++++- dll/win32/ieframe/events.c | 6 +++ dll/win32/ieframe/frame.c | 4 ++ dll/win32/ieframe/ie.c | 4 ++ dll/win32/ieframe/ieframe.h | 77 +++++++++++---------------------------- dll/win32/ieframe/ieframe.rc | 5 +-- dll/win32/ieframe/ieframe_main.c | 10 ++++- dll/win32/ieframe/iehtmlwnd.c | 4 ++ dll/win32/ieframe/iexplore.c | 28 +++++++++++--- dll/win32/ieframe/intshcut.c | 16 ++++++++ dll/win32/ieframe/navigate.c | 15 +++++++- dll/win32/ieframe/oleobject.c | 10 +++++ dll/win32/ieframe/persist.c | 4 ++ dll/win32/ieframe/precomp.h | 31 ++++++++++++++++ dll/win32/ieframe/resource.h | 3 ++ dll/win32/ieframe/shellbrowser.c | 8 +++- dll/win32/ieframe/shelluihelper.c | 4 ++ dll/win32/ieframe/urlhist.c | 5 ++- dll/win32/ieframe/view.c | 6 ++- dll/win32/ieframe/webbrowser.c | 7 ++++ media/doc/README.WINE | 2 +- 24 files changed, 202 insertions(+), 73 deletions(-)
diff --git a/dll/win32/ieframe/CMakeLists.txt b/dll/win32/ieframe/CMakeLists.txt index 3cbc2acb26..bf7b6034cd 100644 --- a/dll/win32/ieframe/CMakeLists.txt +++ b/dll/win32/ieframe/CMakeLists.txt @@ -22,7 +22,7 @@ list(APPEND SOURCE urlhist.c view.c webbrowser.c - ieframe.h + precomp.h ${CMAKE_CURRENT_BINARY_DIR}/ieframe_stubs.c)
add_library(ieframe SHARED @@ -42,5 +42,5 @@ add_dependencies(ieframe stdole2) set_module_type(ieframe win32dll) target_link_libraries(ieframe uuid wine) add_importlibs(ieframe urlmon shell32 comctl32 shlwapi oleaut32 ole32 user32 gdi32 advapi32 msvcrt kernel32 ntdll) -add_pch(ieframe ieframe.h SOURCE) +add_pch(ieframe precomp.h SOURCE) add_cd_file(TARGET ieframe DESTINATION reactos/system32 FOR all) diff --git a/dll/win32/ieframe/classinfo.c b/dll/win32/ieframe/classinfo.c index 267064b00d..3fa77bb6ce 100644 --- a/dll/win32/ieframe/classinfo.c +++ b/dll/win32/ieframe/classinfo.c @@ -20,6 +20,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + /********************************************************************** * Implement the IProvideClassInfo2 interface */ diff --git a/dll/win32/ieframe/client.c b/dll/win32/ieframe/client.c index 36f1a59331..4846e28a05 100644 --- a/dll/win32/ieframe/client.c +++ b/dll/win32/ieframe/client.c @@ -16,8 +16,17 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#include <stdio.h> + #include "ieframe.h"
+#include "mshtmdid.h" +#include "idispids.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + static inline DocHost *impl_from_IOleClientSite(IOleClientSite *iface) { return CONTAINING_RECORD(iface, DocHost, IOleClientSite_iface); diff --git a/dll/win32/ieframe/dochost.c b/dll/win32/ieframe/dochost.c index 6213aa4d67..424868d62e 100644 --- a/dll/win32/ieframe/dochost.c +++ b/dll/win32/ieframe/dochost.c @@ -18,7 +18,14 @@
#include "ieframe.h"
-#include <initguid.h> +#include "exdispid.h" +#include "mshtml.h" +#include "perhist.h" +#include "initguid.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
DEFINE_OLEGUID(CGID_DocHostCmdPriv, 0x000214D4L, 0, 0);
diff --git a/dll/win32/ieframe/events.c b/dll/win32/ieframe/events.c index 17bc7f1ce8..eef1c17e6c 100644 --- a/dll/win32/ieframe/events.c +++ b/dll/win32/ieframe/events.c @@ -22,8 +22,14 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#include <string.h> + #include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + struct ConnectionPoint { IConnectionPoint IConnectionPoint_iface;
diff --git a/dll/win32/ieframe/frame.c b/dll/win32/ieframe/frame.c index 73fea3786e..d86c2714c9 100644 --- a/dll/win32/ieframe/frame.c +++ b/dll/win32/ieframe/frame.c @@ -18,6 +18,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + static inline DocHost *impl_from_IOleInPlaceFrame(IOleInPlaceFrame *iface) { return CONTAINING_RECORD(iface, DocHost, IOleInPlaceFrame_iface); diff --git a/dll/win32/ieframe/ie.c b/dll/win32/ieframe/ie.c index dc8e329330..d7e3aa150c 100644 --- a/dll/win32/ieframe/ie.c +++ b/dll/win32/ieframe/ie.c @@ -18,6 +18,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + static inline InternetExplorer *impl_from_IWebBrowser2(IWebBrowser2 *iface) { return CONTAINING_RECORD(iface, InternetExplorer, IWebBrowser2_iface); diff --git a/dll/win32/ieframe/ieframe.h b/dll/win32/ieframe/ieframe.h index bab08f4f6e..fc56da9e46 100644 --- a/dll/win32/ieframe/ieframe.h +++ b/dll/win32/ieframe/ieframe.h @@ -18,44 +18,33 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#ifndef _IEFRAME_H_ -#define _IEFRAME_H_ +#pragma once
-#include <stdio.h> - -#define WIN32_NO_STATUS -#define _INC_WINDOWS -#define COM_NO_WINDOWS_H +#include <stdarg.h>
#define COBJMACROS -#define NONAMELESSUNION -#define NONAMELESSSTRUCT
-#include <windef.h> -#include <winbase.h> -#include <wingdi.h> -#include <winreg.h> +#include "windef.h" +#include "winbase.h" +#include "wingdi.h" +#include "winuser.h" +#ifdef __REACTOS__ #include <wincon.h> -#include <shlobj.h> -#include <mshtmhst.h> -#include <mshtmdid.h> -#include <exdispid.h> -#include <htiface.h> -#include <idispids.h> -#include <intshcut.h> -#include <perhist.h> -#include <shellapi.h> -#include <shlwapi.h> -#include <shdeprecated.h> -#include <docobjectservice.h> - -#include <wine/unicode.h> -#include <wine/list.h> - -#include <wine/debug.h> -WINE_DEFAULT_DEBUG_CHANNEL(ieframe); - -#include "resource.h" +#endif + +#include "ole2.h" +#include "olectl.h" +#include "shlobj.h" +#include "mshtmhst.h" +#include "exdisp.h" +#include "hlink.h" +#include "htiface.h" +#include "shdeprecated.h" +#include "docobjectservice.h" + +#include "wine/unicode.h" +#include "wine/heap.h" +#include "wine/list.h"
typedef struct ConnectionPoint ConnectionPoint; typedef struct DocHost DocHost; @@ -351,26 +340,6 @@ static inline void unlock_module(void) { InterlockedDecrement(&module_ref); }
-static inline void* __WINE_ALLOC_SIZE(1) heap_alloc(size_t size) -{ - return HeapAlloc(GetProcessHeap(), 0, size); -} - -static inline void* __WINE_ALLOC_SIZE(1) heap_alloc_zero(size_t size) -{ - return HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, size); -} - -static inline void* __WINE_ALLOC_SIZE(2) heap_realloc(void *mem, size_t size) -{ - return HeapReAlloc(GetProcessHeap(), 0, mem, size); -} - -static inline BOOL heap_free(void *mem) -{ - return HeapFree(GetProcessHeap(), 0, mem); -} - static inline LPWSTR heap_strdupW(LPCWSTR str) { LPWSTR ret = NULL; @@ -416,5 +385,3 @@ static inline LPSTR co_strdupWtoA(LPCWSTR str) WideCharToMultiByte(CP_ACP, 0, str, -1, ret, len, 0, 0); return ret; } - -#endif /* _IEFRAME_H_ */ diff --git a/dll/win32/ieframe/ieframe.rc b/dll/win32/ieframe/ieframe.rc index 685c70470c..2c90628291 100644 --- a/dll/win32/ieframe/ieframe.rc +++ b/dll/win32/ieframe/ieframe.rc @@ -16,9 +16,6 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#include <windef.h> -#include <winuser.h> - #include "resource.h"
#include <reactos/manifest_dll.rc> @@ -77,7 +74,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #define WINE_PRODUCTVERSION_STR "8.0.6001.18702" #define WINE_EXTRAVALUES VALUE "OLESelfRegister",""
-#include <wine/wine_common_ver.rc> +#include "wine/wine_common_ver.rc"
/* @makedep: ietoolbar.bmp */ IDB_IETOOLBAR BITMAP "resources/ietoolbar.bmp" diff --git a/dll/win32/ieframe/ieframe_main.c b/dll/win32/ieframe/ieframe_main.c index f1fddab0b7..a862f9afe5 100644 --- a/dll/win32/ieframe/ieframe_main.c +++ b/dll/win32/ieframe/ieframe_main.c @@ -18,7 +18,15 @@
#include "ieframe.h"
-#include <rpcproxy.h> +#include "initguid.h" +#include "rpcproxy.h" +#include "shlguid.h" +#include "isguids.h" +#include "ieautomation.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
LONG module_ref = 0; HINSTANCE ieframe_instance; diff --git a/dll/win32/ieframe/iehtmlwnd.c b/dll/win32/ieframe/iehtmlwnd.c index 9ab2e74db5..fe97c6373d 100644 --- a/dll/win32/ieframe/iehtmlwnd.c +++ b/dll/win32/ieframe/iehtmlwnd.c @@ -18,6 +18,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + static inline IEHTMLWindow *impl_from_IHTMLWindow2(IHTMLWindow2 *iface) { return CONTAINING_RECORD(iface, IEHTMLWindow, IHTMLWindow2_iface); diff --git a/dll/win32/ieframe/iexplore.c b/dll/win32/ieframe/iexplore.c index 1e93ea945c..3d581732ad 100644 --- a/dll/win32/ieframe/iexplore.c +++ b/dll/win32/ieframe/iexplore.c @@ -19,13 +19,31 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#include "ieframe.h" +#define COBJMACROS
-#include <mshtmcid.h> -#include <ddeml.h> +#include <stdarg.h>
-#include <initguid.h> -#include <ieautomation.h> +#include "ieframe.h" +#include "resource.h" + +#include "winuser.h" +#include "wingdi.h" +#include "winnls.h" +#include "ole2.h" +#include "exdisp.h" +#include "oleidl.h" + +#include "mshtmcid.h" +#include "shellapi.h" +#include "winreg.h" +#include "shlwapi.h" +#include "intshcut.h" +#include "ddeml.h" +#include "ieautomation.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
#define IDI_APPICON 1
diff --git a/dll/win32/ieframe/intshcut.c b/dll/win32/ieframe/intshcut.c index df357d4865..2376b1b424 100644 --- a/dll/win32/ieframe/intshcut.c +++ b/dll/win32/ieframe/intshcut.c @@ -27,8 +27,24 @@ * The installer for the Zuma Deluxe Popcap game is good for testing. */
+#include <stdio.h> + +#define NONAMELESSUNION + #include "ieframe.h"
+#include "shlobj.h" +#include "shobjidl.h" +#include "intshcut.h" +#include "shellapi.h" +#include "winreg.h" +#include "shlwapi.h" +#include "shlguid.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + typedef struct { IUniformResourceLocatorA IUniformResourceLocatorA_iface; diff --git a/dll/win32/ieframe/navigate.c b/dll/win32/ieframe/navigate.c index 39130e09f6..658857fadd 100644 --- a/dll/win32/ieframe/navigate.c +++ b/dll/win32/ieframe/navigate.c @@ -16,9 +16,22 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#define NONAMELESSUNION + #include "ieframe.h"
-#include <wininet.h> +#include "exdispid.h" +#include "shellapi.h" +#include "winreg.h" +#include "shlwapi.h" +#include "wininet.h" +#include "mshtml.h" +#include "perhist.h" +#include "resource.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
static const WCHAR emptyW[] = {0};
diff --git a/dll/win32/ieframe/oleobject.c b/dll/win32/ieframe/oleobject.c index 01e1821df7..1ff9a92666 100644 --- a/dll/win32/ieframe/oleobject.c +++ b/dll/win32/ieframe/oleobject.c @@ -23,8 +23,18 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#include <string.h> + #include "ieframe.h"
+#include "htiframe.h" +#include "idispids.h" +#include "mshtmdid.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + /* shlwapi.dll */ HWND WINAPI SHSetParentHwnd(HWND hWnd, HWND hWndParent);
diff --git a/dll/win32/ieframe/persist.c b/dll/win32/ieframe/persist.c index e09f2045e0..4c890d7ebf 100644 --- a/dll/win32/ieframe/persist.c +++ b/dll/win32/ieframe/persist.c @@ -21,6 +21,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + /********************************************************************** * Implement the IPersistStorage interface */ diff --git a/dll/win32/ieframe/precomp.h b/dll/win32/ieframe/precomp.h new file mode 100644 index 0000000000..98cb77ff39 --- /dev/null +++ b/dll/win32/ieframe/precomp.h @@ -0,0 +1,31 @@ + +#ifndef _IEFRAME_PRECOMP_H_ +#define _IEFRAME_PRECOMP_H_ + +#include <stdio.h> + +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +#define NONAMELESSUNION +#define NONAMELESSSTRUCT + +#include "ieframe.h" + +#include <wingdi.h> +#include <winreg.h> +#include <wincon.h> +#include <mshtmdid.h> +#include <exdispid.h> +#include <idispids.h> +#include <intshcut.h> +#include <perhist.h> +#include <shellapi.h> +#include <shlwapi.h> + +#include <wine/debug.h> + +#include "resource.h" + +#endif /* !_IEFRAME_PRECOMP_H_ */ diff --git a/dll/win32/ieframe/resource.h b/dll/win32/ieframe/resource.h index 81af1582d9..00c79beee7 100644 --- a/dll/win32/ieframe/resource.h +++ b/dll/win32/ieframe/resource.h @@ -20,6 +20,9 @@
#pragma once
+#include <windef.h> +#include <winuser.h> + #define IDR_BROWSE_MAIN_MENU 1000 #define IDD_BROWSE_OPEN 1001 #define IDC_BROWSE_OPEN_URL 1002 diff --git a/dll/win32/ieframe/shellbrowser.c b/dll/win32/ieframe/shellbrowser.c index 11ce0736d8..f75689e49a 100644 --- a/dll/win32/ieframe/shellbrowser.c +++ b/dll/win32/ieframe/shellbrowser.c @@ -19,9 +19,15 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#include <assert.h> + #include "ieframe.h" +#include "exdispid.h" +#include "shlwapi.h"
-#include <assert.h> +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
static inline ShellBrowser *impl_from_IShellBrowser(IShellBrowser *iface) { diff --git a/dll/win32/ieframe/shelluihelper.c b/dll/win32/ieframe/shelluihelper.c index b6c70300d6..cc636f6bdb 100644 --- a/dll/win32/ieframe/shelluihelper.c +++ b/dll/win32/ieframe/shelluihelper.c @@ -18,6 +18,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + struct ShellUIHelper { IShellUIHelper2 IShellUIHelper2_iface; LONG ref; diff --git a/dll/win32/ieframe/urlhist.c b/dll/win32/ieframe/urlhist.c index e15e312111..d963d9517c 100644 --- a/dll/win32/ieframe/urlhist.c +++ b/dll/win32/ieframe/urlhist.c @@ -17,8 +17,11 @@ */
#include "ieframe.h" +#include "urlhist.h"
-#include <urlhist.h> +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe);
static HRESULT WINAPI UrlHistoryStg_QueryInterface(IUrlHistoryStg2 *iface, REFIID riid, void **ppv) { diff --git a/dll/win32/ieframe/view.c b/dll/win32/ieframe/view.c index 021dd1bc77..546e2511a3 100644 --- a/dll/win32/ieframe/view.c +++ b/dll/win32/ieframe/view.c @@ -19,6 +19,10 @@
#include "ieframe.h"
+#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + /********************************************************************** * Implement the IViewObject interface */ @@ -56,7 +60,7 @@ static HRESULT WINAPI ViewObject_Draw(IViewObject2 *iface, DWORD dwDrawAspect, FIXME("(%p)->(%d %d %p %p %p %p %p %p %p %08lx)\n", This, dwDrawAspect, lindex, pvAspect, ptd, hdcTargetDev, hdcDraw, lprcBounds, lprcWBounds, pfnContinue, dwContinue); - return E_NOTIMPL; + return S_OK; }
static HRESULT WINAPI ViewObject_GetColorSet(IViewObject2 *iface, DWORD dwAspect, diff --git a/dll/win32/ieframe/webbrowser.c b/dll/win32/ieframe/webbrowser.c index 88abd89f74..03acf38869 100644 --- a/dll/win32/ieframe/webbrowser.c +++ b/dll/win32/ieframe/webbrowser.c @@ -21,6 +21,13 @@
#include "ieframe.h"
+#include "exdispid.h" +#include "mshtml.h" + +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(ieframe); + static inline WebBrowser *impl_from_IWebBrowser2(IWebBrowser2 *iface) { return CONTAINING_RECORD(iface, WebBrowser, IWebBrowser2_iface); diff --git a/media/doc/README.WINE b/media/doc/README.WINE index 0fdb236751..24ceb481b9 100644 --- a/media/doc/README.WINE +++ b/media/doc/README.WINE @@ -74,7 +74,7 @@ reactos/dll/win32/hlink # Synced to WineStaging-3.3 reactos/dll/win32/hnetcfg # Synced to WineStaging-3.3 reactos/dll/win32/httpapi # Synced to WineStaging-3.3 reactos/dll/win32/iccvid # Synced to WineStaging-3.3 -reactos/dll/win32/ieframe # Synced to Wine-3.0 +reactos/dll/win32/ieframe # Synced to WineStaging-3.3 reactos/dll/win32/imaadp32.acm # Synced to WineStaging-2.16 reactos/dll/win32/imagehlp # Synced to Wine-3.0 reactos/dll/win32/imm32 # Synced to Wine-2.22