summaryrefslogtreecommitdiffstats
path: root/uriloader/exthandler/nsIContentDispatchChooser.idl
diff options
context:
space:
mode:
Diffstat (limited to 'uriloader/exthandler/nsIContentDispatchChooser.idl')
-rw-r--r--uriloader/exthandler/nsIContentDispatchChooser.idl45
1 files changed, 45 insertions, 0 deletions
diff --git a/uriloader/exthandler/nsIContentDispatchChooser.idl b/uriloader/exthandler/nsIContentDispatchChooser.idl
new file mode 100644
index 000000000..7c186deee
--- /dev/null
+++ b/uriloader/exthandler/nsIContentDispatchChooser.idl
@@ -0,0 +1,45 @@
+/* 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"
+
+interface nsIHandlerInfo;
+interface nsIHelperAppLauncher;
+interface nsIURI;
+interface nsIInterfaceRequestor;
+
+/**
+ * This is used to ask a user what they would like to do with a given piece of
+ * content.
+ */
+[scriptable, uuid(456ca3b2-02be-4f97-89a2-08c08d3ad88f)]
+interface nsIContentDispatchChooser : nsISupports {
+ /**
+ * This request is passed to the helper app dialog because Gecko can not
+ * handle content of this type.
+ */
+ const unsigned long REASON_CANNOT_HANDLE = 0;
+
+ /**
+ * Asks the user what to do with the content.
+ *
+ * @param aHander
+ * The interface describing the details of how this content should or
+ * can be handled.
+ * @param aWindowContext
+ * The parent window context to show this chooser. This can be null,
+ * and some implementations may not care about it. Generally, you'll
+ * want to pass an nsIDOMWindow in so the chooser can be properly
+ * parented when opened.
+ * @param aURI
+ * The URI of the resource that we are asking about.
+ * @param aReason
+ * The reason why we are asking (see above).
+ */
+ void ask(in nsIHandlerInfo aHandler,
+ in nsIInterfaceRequestor aWindowContext,
+ in nsIURI aURI,
+ in unsigned long aReason);
+};
+