/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- * * 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" interface mozIDOMWindowProxy; interface nsIDocShellTreeOwner; interface nsPIDOMWindowOuter; webidl Document; webidl BrowsingContext; /** * The nsIDocShellTreeItem supplies the methods that are required of any item * that wishes to be able to live within the docshell tree either as a middle * node or a leaf. */ [scriptable, builtinclass, uuid(9b7c586f-9214-480c-a2c4-49b526fff1a6)] interface nsIDocShellTreeItem : nsISupports { /* name of the DocShellTreeItem */ attribute AString name; /** * Compares the provided name against the item's name and * returns the appropriate result. * * @return PR_TRUE if names match; * PR_FALSE otherwise. */ boolean nameEquals(in AString name); /* Definitions for the item types. */ const long typeChrome=0; // typeChrome must equal 0 const long typeContent=1; // typeContent must equal 1 const long typeContentWrapper=2; // typeContentWrapper must equal 2 const long typeChromeWrapper=3; // typeChromeWrapper must equal 3 const long typeAll=0x7FFFFFFF; /* The type this item is. */ readonly attribute long itemType; [noscript,notxpcom,nostdcall] long ItemType(); /* Parent DocShell. @deprecated: Use `BrowsingContext::GetParent()` instead. (NOTE: `BrowsingContext::GetParent()` will not cross isolation boundaries) */ [binaryname(InProcessParent)] readonly attribute nsIDocShellTreeItem parent; /* This getter returns the same thing parent does however if the parent is of a different itemType, or if the parent is an