mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-05 08:35:26 +00:00
63 lines
2.7 KiB
Plaintext
63 lines
2.7 KiB
Plaintext
/* 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"
|
|
|
|
[scriptable, uuid(4b731983-9542-49f4-b16b-de68ad1c2068)]
|
|
interface nsIPrivateBrowsingService : nsISupports
|
|
{
|
|
// When read, determines whether the private browsing mode is currently
|
|
// active. Setting to true enters the private browsing mode, and setting
|
|
// to false leaves the private browsing mode.
|
|
// Setting this value while handling one of the notifications generated
|
|
// by the private browsing service throws NS_ERROR_FAILURE.
|
|
attribute boolean privateBrowsingEnabled;
|
|
|
|
// Determine whether the private browsing mode has been started
|
|
// automatically at application startup.
|
|
// This value will never be true if privateBrowsingEnabled is false.
|
|
readonly attribute boolean autoStarted;
|
|
|
|
// Determine whether the last private browsing transition was performed through
|
|
// the command line (using either the -private or -private-toggle switches).
|
|
readonly attribute boolean lastChangedByCommandLine;
|
|
|
|
/**
|
|
* Removes all data stored for a given domain. This includes all data for
|
|
* subdomains of the given domain.
|
|
*
|
|
* @param aDomain
|
|
* The domain that will have its data removed.
|
|
*/
|
|
void removeDataFromDomain(in AUTF8String aDomain);
|
|
};
|
|
|
|
%{C++
|
|
/**
|
|
* Private Browsing service notifications:
|
|
*
|
|
* - NS_PRIVATE_BROWSING_REQUEST_TOPIC:
|
|
* The data parameter determines which kind of request this represents:
|
|
* --- NS_PRIVATE_BROWSING_ENTER:
|
|
* We send this notification before switching to the private browsing mode.
|
|
* The subject parameter is set to a nsISupportsPRBool, which observers can
|
|
* set to true to prevent the switch to the private browsing mode.
|
|
* --- NS_PRIVATE_BROWSING_LEAVE:
|
|
* We send this notification before leaving the private browsing mode.
|
|
* The subject parameter is set to a nsISupportsPRBool, which observers can
|
|
* set to true to prevent leaving the private browsing mode.
|
|
*
|
|
* - NS_PRIVATE_BROWSING_SWITCH_TOPIC:
|
|
* The data parameter determines which kind of switch this represents:
|
|
* --- NS_PRIVATE_BROWSING_ENTER:
|
|
* We send this notification while switching to the private browsing mode.
|
|
* --- NS_PRIVATE_BROWSING_LEAVE:
|
|
* We send this notification while leaving the private browsing mode.
|
|
*/
|
|
#define NS_PRIVATE_BROWSING_SWITCH_TOPIC "private-browsing"
|
|
#define NS_PRIVATE_BROWSING_REQUEST_TOPIC "private-browsing-cancel-vote"
|
|
#define NS_PRIVATE_BROWSING_ENTER "enter"
|
|
#define NS_PRIVATE_BROWSING_LEAVE "exit"
|
|
%}
|