mshtml: Move IOleInPlaceFrame::SetActiveObject call to separated function.
This commit is contained in:
parent
22ac3704ba
commit
3f444cae92
|
@ -398,6 +398,7 @@ BOOL install_wine_gecko(BOOL);
|
||||||
void hlink_frame_navigate(HTMLDocument*,IHlinkFrame*,LPCWSTR,nsIInputStream*,DWORD);
|
void hlink_frame_navigate(HTMLDocument*,IHlinkFrame*,LPCWSTR,nsIInputStream*,DWORD);
|
||||||
|
|
||||||
void call_property_onchanged(ConnectionPoint*,DISPID);
|
void call_property_onchanged(ConnectionPoint*,DISPID);
|
||||||
|
HRESULT call_set_active_object(IOleInPlaceUIWindow*,IOleInPlaceActiveObject*);
|
||||||
|
|
||||||
void *nsalloc(size_t);
|
void *nsalloc(size_t);
|
||||||
void nsfree(void*);
|
void nsfree(void*);
|
||||||
|
|
|
@ -415,6 +415,18 @@ void hide_tooltip(HTMLDocument *This)
|
||||||
SendMessageW(This->tooltips_hwnd, TTM_ACTIVATE, FALSE, 0);
|
SendMessageW(This->tooltips_hwnd, TTM_ACTIVATE, FALSE, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HRESULT call_set_active_object(IOleInPlaceUIWindow *window, IOleInPlaceActiveObject *act_obj)
|
||||||
|
{
|
||||||
|
static WCHAR html_documentW[30];
|
||||||
|
|
||||||
|
if(act_obj && !html_documentW[0]) {
|
||||||
|
LoadStringW(hInst, IDS_HTMLDOCUMENT, html_documentW,
|
||||||
|
sizeof(html_documentW)/sizeof(WCHAR));
|
||||||
|
}
|
||||||
|
|
||||||
|
return IOleInPlaceFrame_SetActiveObject(window, act_obj, act_obj ? html_documentW : NULL);
|
||||||
|
}
|
||||||
|
|
||||||
/**********************************************************
|
/**********************************************************
|
||||||
* IOleDocumentView implementation
|
* IOleDocumentView implementation
|
||||||
*/
|
*/
|
||||||
|
@ -564,7 +576,6 @@ static HRESULT WINAPI OleDocumentView_UIActivate(IOleDocumentView *iface, BOOL f
|
||||||
}
|
}
|
||||||
|
|
||||||
if(fUIActivate) {
|
if(fUIActivate) {
|
||||||
OLECHAR wszHTMLDocument[30];
|
|
||||||
RECT rcBorderWidths;
|
RECT rcBorderWidths;
|
||||||
|
|
||||||
if(This->ui_active)
|
if(This->ui_active)
|
||||||
|
@ -583,12 +594,9 @@ static HRESULT WINAPI OleDocumentView_UIActivate(IOleDocumentView *iface, BOOL f
|
||||||
|
|
||||||
update_doc(This, UPDATE_UI);
|
update_doc(This, UPDATE_UI);
|
||||||
|
|
||||||
LoadStringW(hInst, IDS_HTMLDOCUMENT, wszHTMLDocument,
|
|
||||||
sizeof(wszHTMLDocument)/sizeof(WCHAR));
|
|
||||||
|
|
||||||
hres = IOleInPlaceSite_OnUIActivate(This->ipsite);
|
hres = IOleInPlaceSite_OnUIActivate(This->ipsite);
|
||||||
if(SUCCEEDED(hres)) {
|
if(SUCCEEDED(hres)) {
|
||||||
IOleInPlaceFrame_SetActiveObject(This->frame, ACTOBJ(This), wszHTMLDocument);
|
call_set_active_object((IOleInPlaceUIWindow*)This->frame, ACTOBJ(This));
|
||||||
}else {
|
}else {
|
||||||
FIXME("OnUIActivate failed: %08x\n", hres);
|
FIXME("OnUIActivate failed: %08x\n", hres);
|
||||||
IOleInPlaceFrame_Release(This->frame);
|
IOleInPlaceFrame_Release(This->frame);
|
||||||
|
@ -604,7 +612,7 @@ static HRESULT WINAPI OleDocumentView_UIActivate(IOleDocumentView *iface, BOOL f
|
||||||
IDocHostUIHandler_HideUI(This->hostui);
|
IDocHostUIHandler_HideUI(This->hostui);
|
||||||
|
|
||||||
if(This->ip_window)
|
if(This->ip_window)
|
||||||
IOleInPlaceUIWindow_SetActiveObject(This->ip_window, ACTOBJ(This), wszHTMLDocument);
|
call_set_active_object(This->ip_window, ACTOBJ(This));
|
||||||
|
|
||||||
memset(&rcBorderWidths, 0, sizeof(rcBorderWidths));
|
memset(&rcBorderWidths, 0, sizeof(rcBorderWidths));
|
||||||
IOleInPlaceFrame_SetBorderSpace(This->frame, &rcBorderWidths);
|
IOleInPlaceFrame_SetBorderSpace(This->frame, &rcBorderWidths);
|
||||||
|
@ -614,9 +622,9 @@ static HRESULT WINAPI OleDocumentView_UIActivate(IOleDocumentView *iface, BOOL f
|
||||||
if(This->ui_active) {
|
if(This->ui_active) {
|
||||||
This->ui_active = FALSE;
|
This->ui_active = FALSE;
|
||||||
if(This->ip_window)
|
if(This->ip_window)
|
||||||
IOleInPlaceUIWindow_SetActiveObject(This->ip_window, NULL, NULL);
|
call_set_active_object(This->ip_window, NULL);
|
||||||
if(This->frame)
|
if(This->frame)
|
||||||
IOleInPlaceFrame_SetActiveObject(This->frame, NULL, NULL);
|
call_set_active_object((IOleInPlaceUIWindow*)This->frame, NULL);
|
||||||
if(This->hostui)
|
if(This->hostui)
|
||||||
IDocHostUIHandler_HideUI(This->hostui);
|
IDocHostUIHandler_HideUI(This->hostui);
|
||||||
if(This->ipsite)
|
if(This->ipsite)
|
||||||
|
|
Loading…
Reference in New Issue