diff options
Diffstat (limited to 'docshell/base/nsIGlobalHistory2.idl')
-rw-r--r-- | docshell/base/nsIGlobalHistory2.idl | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/docshell/base/nsIGlobalHistory2.idl b/docshell/base/nsIGlobalHistory2.idl new file mode 100644 index 000000000..aa8b44620 --- /dev/null +++ b/docshell/base/nsIGlobalHistory2.idl @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* 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/. */ + +/** + * Provides information about global history to gecko. + * + * @note This interface replaces and deprecates nsIGlobalHistory. + */ + +#include "nsISupports.idl" +interface nsIURI; + +%{ C++ + +// nsIObserver topic to fire when you add new visited URIs to the history; +// the nsIURI is the subject +#define NS_LINK_VISITED_EVENT_TOPIC "link-visited" + +%} + +[scriptable, uuid(cf777d42-1270-4b34-be7b-2931c93feda5)] +interface nsIGlobalHistory2 : nsISupports +{ + /** + * Add a URI to global history + * + * @param aURI the URI of the page + * @param aRedirect whether the URI was redirected to another location; + * this is 'true' for the original URI which is + * redirected. + * @param aToplevel whether the URI is loaded in a top-level window + * @param aReferrer the URI of the referring page + * + * @note Docshell will not filter out URI schemes like chrome: data: + * about: and view-source:. Embedders should consider filtering out + * these schemes and others, e.g. mailbox: for the main URI and the + * referrer. + */ + void addURI(in nsIURI aURI, in boolean aRedirect, in boolean aToplevel, in nsIURI aReferrer); + + /** + * Checks to see whether the given URI is in history. + * + * @param aURI the uri to the page + * @return true if a URI has been visited + */ + boolean isVisited(in nsIURI aURI); + + /** + * Set the page title for the given uri. URIs that are not already in + * global history will not be added. + * + * @param aURI the URI for which to set to the title + * @param aTitle the page title + */ + void setPageTitle(in nsIURI aURI, in AString aTitle); +}; |