Jacek Caban : mshtml: Pass the IDispatch interface of the element right-clicked on to IDocHostUIHandler_ShowContextMenu if applicable instead of always the document 's one.
Alexandre Julliard
julliard at winehq.org
Wed Oct 3 06:08:15 CDT 2007
Module: wine
Branch: master
Commit: f5ef66a36951f88542d3bce8a612c5897d9f9314
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f5ef66a36951f88542d3bce8a612c5897d9f9314
Author: Jacek Caban <jacek at codeweavers.com>
Date: Tue Oct 2 14:20:59 2007 +0200
mshtml: Pass the IDispatch interface of the element right-clicked on to IDocHostUIHandler_ShowContextMenu if applicable instead of always the document's one.
Found by Rob Shearman.
---
dlls/mshtml/mshtml_private.h | 2 +-
dlls/mshtml/nsembed.c | 2 +-
dlls/mshtml/olecmd.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h
index 3038d6f..3db047f 100644
--- a/dlls/mshtml/mshtml_private.h
+++ b/dlls/mshtml/mshtml_private.h
@@ -362,7 +362,7 @@ NSContainer *NSContainer_Create(HTMLDocument*,NSContainer*);
void NSContainer_Release(NSContainer*);
void HTMLDocument_LockContainer(HTMLDocument*,BOOL);
-void show_context_menu(HTMLDocument*,DWORD,POINT*);
+void show_context_menu(HTMLDocument*,DWORD,POINT*,IDispatch*);
void notif_focus(HTMLDocument*);
void show_tooltip(HTMLDocument*,DWORD,DWORD,LPCWSTR);
diff --git a/dlls/mshtml/nsembed.c b/dlls/mshtml/nsembed.c
index 19bf85c..23b2193 100644
--- a/dlls/mshtml/nsembed.c
+++ b/dlls/mshtml/nsembed.c
@@ -997,7 +997,7 @@ static nsresult NSAPI nsContextMenuListener_OnShowContextMenu(nsIContextMenuList
FIXME("aContextFlags=%08x\n", aContextFlags);
};
- show_context_menu(This->doc, dwID, &pt);
+ show_context_menu(This->doc, dwID, &pt, (IDispatch*)HTMLDOMNODE(get_node(This->doc, aNode)));
return NS_OK;
}
diff --git a/dlls/mshtml/olecmd.c b/dlls/mshtml/olecmd.c
index b33d305..a137057 100644
--- a/dlls/mshtml/olecmd.c
+++ b/dlls/mshtml/olecmd.c
@@ -852,14 +852,14 @@ static const IOleCommandTargetVtbl OleCommandTargetVtbl = {
OleCommandTarget_Exec
};
-void show_context_menu(HTMLDocument *This, DWORD dwID, POINT *ppt)
+void show_context_menu(HTMLDocument *This, DWORD dwID, POINT *ppt, IDispatch *elem)
{
HMENU menu_res, menu;
DWORD cmdid;
HRESULT hres;
hres = IDocHostUIHandler_ShowContextMenu(This->hostui, dwID, ppt,
- (IUnknown*)CMDTARGET(This), (IDispatch*)HTMLDOC(This));
+ (IUnknown*)CMDTARGET(This), elem);
if(hres == S_OK)
return;
More information about the wine-cvs
mailing list