summaryrefslogtreecommitdiffstats
path: root/dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl
diff options
context:
space:
mode:
Diffstat (limited to 'dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl')
-rw-r--r--dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl41
1 files changed, 41 insertions, 0 deletions
diff --git a/dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl b/dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl
new file mode 100644
index 000000000..4cc571b4e
--- /dev/null
+++ b/dom/interfaces/sidebar/nsIWebContentHandlerRegistrar.idl
@@ -0,0 +1,41 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+#include "nsISupports.idl"
+
+/**
+ * nsIWebContentHandlerRegistrar
+ *
+ * Applications wishing to use web content handlers need to implement this
+ * interface. Typically they will prompt the user to confirm adding an entry
+ * to the local list.
+ *
+ * The component must have the contract id defined below so that nsNavigator
+ * can invoke it.
+ */
+
+[scriptable, uuid(65a3fafd-0e4a-4b06-8b4e-6a611da63d98)]
+interface nsIWebContentHandlerRegistrar : nsISupports
+{
+ /**
+ * See documentation in Navigator.webidl
+ * The additional contentWindow param for both methods represents the dom
+ * content window from which the method has been called.
+ */
+ void registerContentHandler(in DOMString mimeType,
+ in DOMString uri,
+ in DOMString title,
+ in nsISupports windowOrBrowser);
+ void registerProtocolHandler(in DOMString protocol,
+ in DOMString uri,
+ in DOMString title,
+ in nsISupports windowOrBrowser);
+};
+
+%{ C++
+
+#define NS_WEBCONTENTHANDLERREGISTRAR_CONTRACTID "@mozilla.org/embeddor.implemented/web-content-handler-registrar;1"
+%}