An optional interface for embedding clients wishing to receive notifications for context menu events (e.g. generated by a user right-mouse clicking on a link). The embedder implements this interface on the web browser chrome object associated with the window that notifications are required for. When a context menu event, the browser will call this interface if present. @see nsIDOMNode @see nsIDOMEvent @status FROZEN
[scriptable, uuid(3478b6b0-3875-11d4-94ef-0020183bf181)]
interface nsIContextMenuListener : nsISupports
Constants
Flag. No context. */
const
unsigned long
CONTEXT_NONE = 0
Flag. Context is a link element. */
const
unsigned long
CONTEXT_LINK = 1
Flag. Context is an image element. */
const
unsigned long
CONTEXT_IMAGE = 2
Flag. Context is the whole document. */
const
unsigned long
CONTEXT_DOCUMENT = 4
Flag. Context is a text area element. */
const
unsigned long
CONTEXT_TEXT = 8
Flag. Context is an input element. */
const
unsigned long
CONTEXT_INPUT = 16
Methods
Called when the browser receives a context menu event (e.g. user is right-mouse
clicking somewhere on the document). The combination of flags, event and node
provided in the call indicate where and what was clicked on.
The following table describes what context flags and node combinations are
possible.
<TABLE>
<TR><TD><B>aContextFlag</B></TD><TD>aNode</TD></TR>
<TR><TD>CONTEXT_LINK</TD><TD><A></TD></TR>
<TR><TD>CONTEXT_IMAGE</TD><TD><IMG></TD></TR>
<TR><TD>CONTEXT_IMAGE | CONTEXT_LINK</TD><TD><IMG>
with an <A> as an ancestor</TD></TR>
<TR><TD>CONTEXT_INPUT</TD><TD><INPUT></TD></TR>
<TR><TD>CONTEXT_TEXT</TD><TD><TEXTAREA></TD></TR>
<TR><TD>CONTEXT_DOCUMENT</TD><TD><HTML></TD></TR>
</TABLE>
@param aContextFlags Flags indicating the kind of context.
@param aEvent The DOM context menu event.
@param aNode The DOM node most relevant to the context.
@return <CODE>NS_OK</CODE> always.
void
onShowContextMenu(in unsigned long aContextFlags, in nsIDOMEvent aEvent, in nsIDOMNode aNode)
Compare to: