michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsISupports.idl" michael@0: michael@0: interface nsIMacWebAppUtils; michael@0: michael@0: [scriptable, function, uuid(8c899c4f-58c1-4b74-9034-3bb64e484b68)] michael@0: interface nsITrashAppCallback : nsISupports michael@0: { michael@0: void trashAppFinished(in nsresult rv); michael@0: }; michael@0: michael@0: /** michael@0: * Allow MozApps API to locate and manipulate natively installed apps michael@0: */ michael@0: michael@0: [scriptable, uuid(c69cf343-ea41-428b-b161-4655fd54d8e7)] michael@0: interface nsIMacWebAppUtils : nsISupports { michael@0: /** michael@0: * Find the path for an app with the given signature. michael@0: */ michael@0: AString pathForAppWithIdentifier(in AString bundleIdentifier); michael@0: michael@0: /** michael@0: * Launch the app with the given identifier, if it exists. michael@0: */ michael@0: void launchAppWithIdentifier(in AString bundleIdentifier); michael@0: michael@0: /** michael@0: * Move the app from the given directory to the Trash. michael@0: */ michael@0: void trashApp(in AString path, in nsITrashAppCallback callback); michael@0: };