uriloader/exthandler/nsIExternalURLHandlerService.idl
author Eitan Isaacson <eitan@monotonous.org>
Mon, 10 Dec 2018 03:30:21 +0000
changeset 449682 3386ff76878d83496bb822d09115c77472808b53
parent 94475 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
Bug 1511955 - Don't traverse into children without hypertext interfaces. r=Jamie This prevents an infinite loop where we go into a child only to find the nearest hypertext accessible being its parent. Differential Revision: https://phabricator.services.mozilla.com/D13998

/* 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 "nsIMIMEInfo.idl"

/**
 * The external URL handler service is used for finding
 * platform-specific applications for handling particular URLs.
 */

[scriptable, uuid(56c5c7d3-6fd3-43f8-9429-4397e111453a)]
interface nsIExternalURLHandlerService : nsISupports
{
  /**
   * Given a URL, looks up the handler info from the OS. This should be
   * overridden by each OS's implementation.
   *
   * @param aURL The URL we are looking for.
   * @param aFound  Was an OS default handler for this URL found?
   * @return  An nsIHanderInfo for the protocol.
   */
  nsIHandlerInfo getURLHandlerInfoFromOS(in nsIURI aURL,
                                         out boolean aFound);

};