1 /* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
3 * ***** BEGIN LICENSE BLOCK *****
4 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
6 * The contents of this file are subject to the Mozilla Public License Version
7 * 1.1 (the "License"); you may not use this file except in compliance with
8 * the License. You may obtain a copy of the License at
9 * http://www.mozilla.org/MPL/
11 * Software distributed under the License is distributed on an "AS IS" basis,
12 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13 * for the specific language governing rights and limitations under the
16 * The Original Code is the Mozilla browser.
18 * The Initial Developer of the Original Code is
19 * Netscape Communications, Inc.
20 * Portions created by the Initial Developer are Copyright (C) 1999
21 * the Initial Developer. All Rights Reserved.
24 * Travis Bogard <travis@netscape.com>
26 * Alternatively, the contents of this file may be used under the terms of
27 * either of the GNU General Public License Version 2 or later (the "GPL"),
28 * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
29 * in which case the provisions of the GPL or the LGPL are applicable instead
30 * of those above. If you wish to allow use of your version of this file only
31 * under the terms of either the GPL or the LGPL, and not to allow others to
32 * use your version of this file under the terms of the MPL, indicate your
33 * decision by deleting the provisions above and replace them with the notice
34 * and other provisions required by the GPL or the LGPL. If you do not delete
35 * the provisions above, a recipient may use your version of this file under
36 * the terms of any one of the MPL, the GPL or the LGPL.
38 * ***** END LICENSE BLOCK ***** */
40 #include
"nsISupports.idl"
43 * The nsIDocShellTreeOwner
46 interface nsIDocShellTreeItem
;
48 [scriptable
, uuid(bc0eb30e
-656e
-491e
-a7ae
-7f460b660c8d
)]
49 interface nsIDocShellTreeOwner
: nsISupports
52 Return the child DocShellTreeItem with the specified name.
53 name - This is the name of the item that is trying to be found.
54 aRequestor - This is the docshellTreeItem that is requesting the find. This
55 parameter is used to identify when the child is asking its parent to find
56 a child with the specific name. The parent uses this parameter to ensure
57 a resursive state does not occur by not again asking the requestor for find
58 a shell by the specified name. Inversely the child uses it to ensure it
59 does not ask its parent to do the search if its parent is the one that
61 aOriginalRequestor - The original treeitem that made the request, if any.
62 This is used to ensure that we don't run into cross-site issues.
65 nsIDocShellTreeItem findItemWithName
(in wstring name
,
66 in nsIDocShellTreeItem aRequestor
,
67 in nsIDocShellTreeItem aOriginalRequestor
);
70 * Called when a content shell is added to the docshell tree. This is
71 * _only_ called for "root" content shells (that is, ones whose parent is a
74 * @param aContentShell the shell being added.
75 * @param aPrimary whether the shell is primary.
76 * @param aTargetable whether the shell can be a target for named window
78 * @param aID the "id" of the shell. What this actually means is
79 * undefined. Don't rely on this for anything.
81 void contentShellAdded
(in nsIDocShellTreeItem aContentShell
,
82 in boolean aPrimary
, in boolean aTargetable
,
86 * Called when a content shell is removed from the docshell tree. This is
87 * _only_ called for "root" content shells (that is, ones whose parent is a
88 * chrome shell). Note that if aContentShell was never added,
89 * contentShellRemoved should just do nothing.
91 * @param aContentShell the shell being removed.
93 void contentShellRemoved
(in nsIDocShellTreeItem aContentShell
);
96 Returns the Primary Content Shell
98 readonly attribute nsIDocShellTreeItem primaryContentShell
;
101 Tells the tree owner to size its window or parent window in such a way
102 that the shell passed along will be the size specified.
104 void sizeShellTo
(in nsIDocShellTreeItem shell
, in long cx
, in long cy
);
107 Sets the persistence of different attributes of the window.
109 void setPersistence
(in boolean aPersistPosition
,
110 in boolean aPersistSize
,
111 in boolean aPersistSizeMode
);
114 Gets the current persistence states of the window.
116 void getPersistence
(out boolean aPersistPosition
,
117 out boolean aPersistSize
,
118 out boolean aPersistSizeMode
);