mshtml: Open pages in the native browser in HlinkTarget_Navigate().
This matches native Windows behaviour as well, as demonstrated by running the interactive hlink:hlink tests. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44423 Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
f3457d6a8d
commit
f29317dcc2
|
@ -30,6 +30,7 @@
|
||||||
#include "shlguid.h"
|
#include "shlguid.h"
|
||||||
#include "idispids.h"
|
#include "idispids.h"
|
||||||
#include "mimeole.h"
|
#include "mimeole.h"
|
||||||
|
#include "shellapi.h"
|
||||||
|
|
||||||
#define NO_SHLWAPI_REG
|
#define NO_SHLWAPI_REG
|
||||||
#include "shlwapi.h"
|
#include "shlwapi.h"
|
||||||
|
@ -1187,8 +1188,19 @@ static HRESULT WINAPI HlinkTarget_Navigate(IHlinkTarget *iface, DWORD grfHLNF, L
|
||||||
if(pwzJumpLocation)
|
if(pwzJumpLocation)
|
||||||
FIXME("JumpLocation not supported\n");
|
FIXME("JumpLocation not supported\n");
|
||||||
|
|
||||||
if(!This->doc_obj->client)
|
if(!This->doc_obj->client) {
|
||||||
return navigate_new_window(This->window, This->window->uri, NULL, NULL, NULL);
|
static const WCHAR szOpen[] = {'o','p','e','n',0};
|
||||||
|
HRESULT hres;
|
||||||
|
BSTR uri;
|
||||||
|
|
||||||
|
hres = IUri_GetAbsoluteUri(This->window->uri, &uri);
|
||||||
|
if (FAILED(hres))
|
||||||
|
return hres;
|
||||||
|
|
||||||
|
ShellExecuteW(NULL, szOpen, uri, NULL, NULL, SW_SHOW);
|
||||||
|
SysFreeString(uri);
|
||||||
|
return S_OK;
|
||||||
|
}
|
||||||
|
|
||||||
return IOleObject_DoVerb(&This->IOleObject_iface, OLEIVERB_SHOW, NULL, NULL, -1, NULL, NULL);
|
return IOleObject_DoVerb(&This->IOleObject_iface, OLEIVERB_SHOW, NULL, NULL, -1, NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue