nsINotificationHandler.idl (1400B)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 #include "nsISupports.idl" 7 8 interface nsIPrincipal; 9 10 [scriptable, uuid(55051271-52a2-48c6-9a47-2aff6baf1d7b)] 11 interface nsINotificationHandler : nsISupports 12 { 13 /** 14 * Either ping the service worker corresponding to the notification, or open 15 * a new window if none is found. 16 * 17 * The principal and notification ID must match the values stored in DB to 18 * call the service worker, otherwise it'll behave as if none is found. 19 * 20 * @param aPrincipal The principal that this notification is for. 21 * @param aNotificationID The ID for the notification. 22 * Corresponding to `nsINotificationStorageEntry.id` and 23 * `nsIAlertNotification.id`. 24 * @param aActionName The notification action in case the action button is 25 * clicked. 26 * @param aAutoClosed Whether the notification is auto-closed by system after 27 * a click, e.g. on Windows. Checking this will remove the 28 * notification from the DB. 29 */ 30 Promise respondOnClick( 31 in nsIPrincipal aPrincipal, 32 in AString aNotificationId, 33 in AString aActionName, 34 in boolean aAutoClosed 35 ); 36 };