summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2021-01-25 18:26:58 -0500
committerMatt A. Tobin <email@mattatobin.com>2021-01-25 18:26:58 -0500
commitdd932e001139845ec4c1bb5acbbb2573d62c74e4 (patch)
tree1eeba4779a8b4b0f0433bdcd829a0a42510e95ad
parent874330d4538bd4704730d57fa35fd678c7d6fbf2 (diff)
parent7702d1f3fa94d77931a1fd76a7b8a3288f98ce60 (diff)
downloadUXP-dd932e001139845ec4c1bb5acbbb2573d62c74e4.tar
UXP-dd932e001139845ec4c1bb5acbbb2573d62c74e4.tar.gz
UXP-dd932e001139845ec4c1bb5acbbb2573d62c74e4.tar.lz
UXP-dd932e001139845ec4c1bb5acbbb2573d62c74e4.tar.xz
UXP-dd932e001139845ec4c1bb5acbbb2573d62c74e4.zip
Merge branch 'presentation-cleanup'
-rw-r--r--dom/base/nsContentUtils.cpp56
-rw-r--r--dom/base/nsContentUtils.h6
-rw-r--r--dom/base/nsFrameLoader.cpp16
-rw-r--r--dom/base/nsGkAtomList.h1
-rw-r--r--dom/ipc/PTabContext.ipdlh5
-rw-r--r--dom/ipc/TabChild.cpp5
-rw-r--r--dom/ipc/TabContext.cpp16
-rw-r--r--dom/ipc/TabContext.h20
-rw-r--r--modules/libpref/init/all.js15
9 files changed, 6 insertions, 134 deletions
diff --git a/dom/base/nsContentUtils.cpp b/dom/base/nsContentUtils.cpp
index a34752554..107daaede 100644
--- a/dom/base/nsContentUtils.cpp
+++ b/dom/base/nsContentUtils.cpp
@@ -9341,62 +9341,6 @@ nsContentUtils::SetScrollbarsVisibility(nsIDocShell* aDocShell, bool aVisible)
}
}
-/* static */ void
-nsContentUtils::GetPresentationURL(nsIDocShell* aDocShell, nsAString& aPresentationUrl)
-{
- MOZ_ASSERT(aDocShell);
-
- // Simulate receiver context for web platform test
- if (Preferences::GetBool("dom.presentation.testing.simulate-receiver")) {
- nsCOMPtr<nsIDocument> doc;
-
- nsCOMPtr<nsPIDOMWindowOuter> docShellWin =
- do_QueryInterface(aDocShell->GetScriptGlobalObject());
- if (docShellWin) {
- doc = docShellWin->GetExtantDoc();
- }
-
- if (NS_WARN_IF(!doc)) {
- return;
- }
-
- nsCOMPtr<nsIURI> uri = doc->GetDocumentURI();
- if (NS_WARN_IF(!uri)) {
- return;
- }
-
- nsAutoCString uriStr;
- uri->GetSpec(uriStr);
- aPresentationUrl = NS_ConvertUTF8toUTF16(uriStr);
- return;
- }
-
- if (XRE_IsContentProcess()) {
- nsCOMPtr<nsIDocShellTreeItem> sameTypeRoot;
- aDocShell->GetSameTypeRootTreeItem(getter_AddRefs(sameTypeRoot));
- nsCOMPtr<nsIDocShellTreeItem> root;
- aDocShell->GetRootTreeItem(getter_AddRefs(root));
- if (sameTypeRoot.get() == root.get()) {
- // presentation URL is stored in TabChild for the top most
- // <iframe mozbrowser> in content process.
- TabChild* tabChild = TabChild::GetFrom(aDocShell);
- if (tabChild) {
- aPresentationUrl = tabChild->PresentationURL();
- }
- return;
- }
- }
-
- nsCOMPtr<nsILoadContext> loadContext(do_QueryInterface(aDocShell));
- nsCOMPtr<nsIDOMElement> topFrameElement;
- loadContext->GetTopFrameElement(getter_AddRefs(topFrameElement));
- if (!topFrameElement) {
- return;
- }
-
- topFrameElement->GetAttribute(NS_LITERAL_STRING("mozpresentation"), aPresentationUrl);
-}
-
/* static */ nsIDocShell*
nsContentUtils::GetDocShellForEventTarget(EventTarget* aTarget)
{
diff --git a/dom/base/nsContentUtils.h b/dom/base/nsContentUtils.h
index e0c023fff..83ee41740 100644
--- a/dom/base/nsContentUtils.h
+++ b/dom/base/nsContentUtils.h
@@ -2680,12 +2680,6 @@ public:
static void SetScrollbarsVisibility(nsIDocShell* aDocShell, bool aVisible);
/*
- * Return the associated presentation URL of the presented content.
- * Will return empty string if the docshell is not in a presented content.
- */
- static void GetPresentationURL(nsIDocShell* aDocShell, nsAString& aPresentationUrl);
-
- /*
* Try to find the docshell corresponding to the given event target.
*/
static nsIDocShell* GetDocShellForEventTarget(mozilla::dom::EventTarget* aTarget);
diff --git a/dom/base/nsFrameLoader.cpp b/dom/base/nsFrameLoader.cpp
index 79c889596..b4397d063 100644
--- a/dom/base/nsFrameLoader.cpp
+++ b/dom/base/nsFrameLoader.cpp
@@ -3102,14 +3102,6 @@ nsFrameLoader::ApplySandboxFlags(uint32_t sandboxFlags)
// The child can only add restrictions, never remove them.
sandboxFlags |= parentSandboxFlags;
- // If this frame is a receiving browsing context, we should add
- // sandboxed auxiliary navigation flag to sandboxFlags. See
- // https://w3c.github.io/presentation-api/#creating-a-receiving-browsing-context
- nsAutoString presentationURL;
- nsContentUtils::GetPresentationURL(mDocShell, presentationURL);
- if (!presentationURL.IsEmpty()) {
- sandboxFlags |= SANDBOXED_AUXILIARY_NAVIGATION;
- }
mDocShell->SetSandboxFlags(sandboxFlags);
}
}
@@ -3427,11 +3419,6 @@ nsFrameLoader::GetNewTabContext(MutableTabContext* aTabContext,
rv = PopulateUserContextIdFromAttribute(attrs);
NS_ENSURE_SUCCESS(rv, rv);
- nsAutoString presentationURLStr;
- mOwnerContent->GetAttr(kNameSpaceID_None,
- nsGkAtoms::mozpresentation,
- presentationURLStr);
-
nsCOMPtr<nsIDocShell> docShell = mOwnerContent->OwnerDoc()->GetDocShell();
nsCOMPtr<nsILoadContext> parentContext = do_QueryInterface(docShell);
NS_ENSURE_STATE(parentContext);
@@ -3459,8 +3446,7 @@ nsFrameLoader::GetNewTabContext(MutableTabContext* aTabContext,
containingApp,
showAccelerators,
showFocusRings,
- attrs,
- presentationURLStr);
+ attrs);
NS_ENSURE_STATE(tabContextUpdated);
return NS_OK;
diff --git a/dom/base/nsGkAtomList.h b/dom/base/nsGkAtomList.h
index a1a0b15f9..5e08fdc20 100644
--- a/dom/base/nsGkAtomList.h
+++ b/dom/base/nsGkAtomList.h
@@ -1038,7 +1038,6 @@ GK_ATOM(predicate, "predicate")
GK_ATOM(prefix, "prefix")
GK_ATOM(preload, "preload")
GK_ATOM(prerendered, "prerendered")
-GK_ATOM(mozpresentation, "mozpresentation")
GK_ATOM(preserve, "preserve")
GK_ATOM(preserveSpace, "preserve-space")
GK_ATOM(preventdefault, "preventdefault")
diff --git a/dom/ipc/PTabContext.ipdlh b/dom/ipc/PTabContext.ipdlh
index 72cd90e2a..62d6ec0f3 100644
--- a/dom/ipc/PTabContext.ipdlh
+++ b/dom/ipc/PTabContext.ipdlh
@@ -48,11 +48,6 @@ struct FrameIPCTabContext
// Whether this TabContext should work in prerender mode.
bool isPrerendered;
- // The requested presentation URL.
- // This value would be empty if the TabContext isn't created for
- // presented content.
- nsString presentationURL;
-
// Keyboard indicator state inherited from the parent.
UIStateChangeType showAccelerators;
UIStateChangeType showFocusRings;
diff --git a/dom/ipc/TabChild.cpp b/dom/ipc/TabChild.cpp
index 182aa628b..caae91fa5 100644
--- a/dom/ipc/TabChild.cpp
+++ b/dom/ipc/TabChild.cpp
@@ -770,11 +770,6 @@ TabChild::NotifyTabContextUpdated(bool aIsPreallocated)
if (aIsPreallocated) {
nsDocShell::Cast(docShell)->SetOriginAttributes(OriginAttributesRef());
}
-
- // Set SANDBOXED_AUXILIARY_NAVIGATION flag if this is a receiver page.
- if (!PresentationURL().IsEmpty()) {
- docShell->SetSandboxFlags(SANDBOXED_AUXILIARY_NAVIGATION);
- }
}
void
diff --git a/dom/ipc/TabContext.cpp b/dom/ipc/TabContext.cpp
index 66a279052..b313da0ff 100644
--- a/dom/ipc/TabContext.cpp
+++ b/dom/ipc/TabContext.cpp
@@ -190,12 +190,6 @@ TabContext::OriginAttributesRef() const
return mOriginAttributes;
}
-const nsAString&
-TabContext::PresentationURL() const
-{
- return mPresentationURL;
-}
-
UIStateChangeType
TabContext::ShowAccelerators() const
{
@@ -215,8 +209,7 @@ TabContext::SetTabContext(bool aIsMozBrowserElement,
mozIApplication* aAppFrameOwnerApp,
UIStateChangeType aShowAccelerators,
UIStateChangeType aShowFocusRings,
- const DocShellOriginAttributes& aOriginAttributes,
- const nsAString& aPresentationURL)
+ const DocShellOriginAttributes& aOriginAttributes)
{
NS_ENSURE_FALSE(mInitialized, false);
@@ -248,7 +241,6 @@ TabContext::SetTabContext(bool aIsMozBrowserElement,
mContainingAppId = containingAppId;
mOwnApp = aOwnApp;
mContainingApp = aAppFrameOwnerApp;
- mPresentationURL = aPresentationURL;
mShowAccelerators = aShowAccelerators;
mShowFocusRings = aShowFocusRings;
return true;
@@ -261,7 +253,6 @@ TabContext::AsIPCTabContext() const
mContainingAppId,
mIsMozBrowserElement,
mIsPrerendered,
- mPresentationURL,
mShowAccelerators,
mShowFocusRings));
}
@@ -285,7 +276,6 @@ MaybeInvalidTabContext::MaybeInvalidTabContext(const IPCTabContext& aParams)
bool isPrerendered = false;
uint32_t containingAppId = NO_APP_ID;
DocShellOriginAttributes originAttributes;
- nsAutoString presentationURL;
UIStateChangeType showAccelerators = UIStateChangeType_NoChange;
UIStateChangeType showFocusRings = UIStateChangeType_NoChange;
@@ -348,7 +338,6 @@ MaybeInvalidTabContext::MaybeInvalidTabContext(const IPCTabContext& aParams)
isMozBrowserElement = ipcContext.isMozBrowserElement();
isPrerendered = ipcContext.isPrerendered();
containingAppId = ipcContext.frameOwnerAppId();
- presentationURL = ipcContext.presentationURL();
showAccelerators = ipcContext.showAccelerators();
showFocusRings = ipcContext.showFocusRings();
originAttributes = ipcContext.originAttributes();
@@ -395,8 +384,7 @@ MaybeInvalidTabContext::MaybeInvalidTabContext(const IPCTabContext& aParams)
containingApp,
showAccelerators,
showFocusRings,
- originAttributes,
- presentationURL);
+ originAttributes);
if (!rv) {
mInvalidReason = "Couldn't initialize TabContext.";
}
diff --git a/dom/ipc/TabContext.h b/dom/ipc/TabContext.h
index 1507a0dc8..e0b6f0d96 100644
--- a/dom/ipc/TabContext.h
+++ b/dom/ipc/TabContext.h
@@ -125,12 +125,6 @@ public:
*/
const DocShellOriginAttributes& OriginAttributesRef() const;
- /**
- * Returns the presentation URL associated with the tab if this tab is
- * created for presented content
- */
- const nsAString& PresentationURL() const;
-
UIStateChangeType ShowAccelerators() const;
UIStateChangeType ShowFocusRings() const;
@@ -169,8 +163,7 @@ protected:
mozIApplication* aAppFrameOwnerApp,
UIStateChangeType aShowAccelerators,
UIStateChangeType aShowFocusRings,
- const DocShellOriginAttributes& aOriginAttributes,
- const nsAString& aPresentationURL);
+ const DocShellOriginAttributes& aOriginAttributes);
/**
* Modify this TabContext to match the given TabContext. This is a special
@@ -226,11 +219,6 @@ private:
DocShellOriginAttributes mOriginAttributes;
/**
- * The requested presentation URL.
- */
- nsString mPresentationURL;
-
- /**
* Keyboard indicator state (focus rings, accelerators).
*/
UIStateChangeType mShowAccelerators;
@@ -257,8 +245,7 @@ public:
mozIApplication* aAppFrameOwnerApp,
UIStateChangeType aShowAccelerators,
UIStateChangeType aShowFocusRings,
- const DocShellOriginAttributes& aOriginAttributes,
- const nsAString& aPresentationURL = EmptyString())
+ const DocShellOriginAttributes& aOriginAttributes)
{
return TabContext::SetTabContext(aIsMozBrowserElement,
aIsPrerendered,
@@ -266,8 +253,7 @@ public:
aAppFrameOwnerApp,
aShowAccelerators,
aShowFocusRings,
- aOriginAttributes,
- aPresentationURL);
+ aOriginAttributes);
}
};
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
index 77b1a430c..7cd18a9ff 100644
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -5170,21 +5170,6 @@ pref("dom.udpsocket.enabled", false);
// Disable before keyboard events and after keyboard events by default.
pref("dom.beforeAfterKeyboardEvent.enabled", false);
-// Presentation API
-pref("dom.presentation.enabled", false);
-pref("dom.presentation.controller.enabled", false);
-pref("dom.presentation.receiver.enabled", false);
-
-// Presentation Device
-pref("dom.presentation.tcp_server.debug", false);
-pref("dom.presentation.discovery.enabled", false);
-pref("dom.presentation.discovery.legacy.enabled", false);
-pref("dom.presentation.discovery.timeout_ms", 10000);
-pref("dom.presentation.discoverable", false);
-pref("dom.presentation.discoverable.encrypted", true);
-pref("dom.presentation.discoverable.retry_ms", 5000);
-pref("dom.presentation.session_transport.data_channel.enable", false);
-
#ifdef XP_MACOSX
#if defined(DEBUG)
// In debug builds we crash by default on insecure text input (when a