Bug 1297569 - Disable XUL popup contextmenu handler for all remote targets. r=felipc
This expands the existing escape hatch added by
bug 516753 (which disabled this
same handler for content within a remote xul:browser). After this change, it is
is disabled for any remote target (`EventStateManager::IsRemoteTarget`), which
in practice means remote xul:browser or remote iframe mozbrowser.
MozReview-Commit-ID: Ix7fdtDH54R
--- a/dom/xul/nsXULPopupListener.cpp
+++ b/dom/xul/nsXULPopupListener.cpp
@@ -133,18 +133,17 @@ nsXULPopupListener::HandleEvent(nsIDOMEv
return NS_ERROR_FAILURE;
}
}
nsCOMPtr<nsIContent> targetContent = do_QueryInterface(target);
if (!targetContent) {
return NS_OK;
}
- if (targetContent->IsXULElement(nsGkAtoms::browser) &&
- EventStateManager::IsRemoteTarget(targetContent)) {
+ if (EventStateManager::IsRemoteTarget(targetContent)) {
return NS_OK;
}
bool preventDefault;
mouseEvent->AsEvent()->GetDefaultPrevented(&preventDefault);
if (preventDefault && targetNode && mIsContext) {
// Someone called preventDefault on a context menu.
// Let's make sure they are allowed to do so.