[MSHTML]
[reactos.git] / reactos / dll / win32 / mshtml / nsiface.idl
1 /*
2 * Copyright 2005-2012 Jacek Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19 /*
20 * NOTE:
21 * This file is not a typical idl file. Interfaces in this file are XPCOM
22 * interfaces (NOT MSCOM!), but we generate the header file with WIDL
23 * compatible with XPCOM, usable in C code.
24 */
25
26 cpp_quote("#define GECKO_VERSION \"2.21\"")
27 cpp_quote("#define GECKO_VERSION_STRING \"Wine Gecko \" GECKO_VERSION")
28
29 import "wtypes.idl";
30
31 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
32 cpp_quote("#undef GetForm")
33 cpp_quote("#undef SetPort")
34 cpp_quote("#endif")
35
36 typedef HRESULT nsresult;
37 typedef ULONG nsrefcnt;
38
39 typedef IID nsID;
40 typedef IID nsIID;
41 typedef nsIID nsCID;
42 typedef REFIID nsIIDRef;
43 typedef nsIIDRef nsCIDRef;
44
45 typedef WCHAR PRUnichar;
46
47 /*
48 * Mozilla uses stdint.h types for its headers. Following defines make this IDL file
49 * more similar to original declarations. Note that it's only a widl trick, we can't
50 * use stdint.h types in C.
51 */
52 #define int16_t short
53 #define int32_t LONG
54 #define int64_t INT64
55
56 #define uint8_t UINT8
57 #define uint16_t UINT16
58 #define uint32_t UINT32
59 #define uint64_t UINT64
60
61 typedef uint64_t DOMTimeStamp;
62 typedef uint32_t nsLoadFlags;
63 typedef int64_t PRTime;
64
65 /* Similar trick to stdint.h types for C++ bool type */
66 typedef unsigned char cpp_bool;
67 #define bool cpp_bool
68
69 typedef struct {
70 void *v;
71 void *d1;
72 uint32_t d2;
73 void *d3;
74 } nsCStringContainer;
75
76 typedef struct {
77 void *v;
78 void *d1;
79 uint32_t d2;
80 void *d3;
81 } nsStringContainer;
82
83 typedef nsCStringContainer nsACString;
84 typedef nsStringContainer nsAString;
85
86 interface nsIWebBrowserChrome;
87 interface nsILoadGroup;
88 interface nsIDOMNode;
89 interface nsIDOMDocument;
90 interface nsIDOMEvent;
91 interface nsIEditor;
92 interface nsISelectionController;
93 interface nsITransactionManager;
94 interface nsITransaction;
95 interface nsIInlineSpellChecker;
96 interface nsIOutputStream;
97 interface nsIEditorObserver;
98 interface nsIEditActionListener;
99 interface nsIDocumentStateListener;
100 interface nsIDOMCSSStyleSheet;
101 interface nsIDOMDocumentView;
102 interface nsIDOMWindow;
103 interface nsIDOMElement;
104 interface nsIDOMRange;
105 interface nsIDOMEventTarget;
106 interface nsISelection;
107 interface nsIDOMHTMLSelectElement;
108 interface nsIFile;
109
110 interface IMoniker;
111
112 [
113 object,
114 uuid(00000000-0000-0000-c000-000000000046),
115 local
116 ]
117 interface nsISupports
118 {
119 nsresult QueryInterface(nsIIDRef riid, void **result);
120 nsrefcnt AddRef();
121 nsrefcnt Release();
122 }
123
124 /* Currently we don't need a full declaration of these interfaces */
125 typedef nsISupports nsISHistory;
126 typedef nsISupports nsIWidget;
127 typedef nsISupports nsIDOMBarProp;
128 typedef nsISupports nsIPrompt;
129 typedef nsISupports nsIAuthPrompt;
130 typedef nsISupports nsIDOMDocumentType;
131 typedef nsISupports nsIDOMDOMImplementation;
132 typedef nsISupports nsIDOMCDATASection;
133 typedef nsISupports nsIDOMProcessingInstruction;
134 typedef nsISupports nsIDOMEntityReference;
135 typedef nsISupports nsIWebProgressListener;
136 typedef nsISupports nsIDOMCSSValue;
137 typedef nsISupports nsIPrintSession;
138 typedef nsISupports nsIControllerCommandTable;
139 typedef nsISupports nsIPrincipal;
140 typedef nsISupports nsIAtom;
141 typedef nsISupports nsISupportsArray;
142 typedef nsISupports nsIContentFilter;
143 typedef nsISupports nsIDOMMediaList;
144 typedef nsISupports nsIDOMHTMLTableCaptionElement;
145 typedef nsISupports nsIDOMHTMLTableSectionElement;
146 typedef nsISupports nsIDOMClientRectList;
147 typedef nsISupports nsINode;
148 typedef nsISupports nsIStyleSheet;
149 typedef nsISupports nsIStyleRule;
150 typedef nsISupports nsIDOMUserDataHandler;
151 typedef nsISupports nsIDocShellLoadInfo;
152 typedef nsISupports nsISHEntry;
153 typedef nsISupports nsIPresShell;
154 typedef nsISupports nsIContentViewer;
155 typedef nsISupports nsIDocumentCharsetInfo;
156 typedef nsISupports nsILayoutHistoryState;
157 typedef nsISupports nsISecureBrowserUI;
158 typedef nsISupports nsIDOMStorage;
159 typedef nsISupports nsIDOMDOMTokenList;
160 typedef nsISupports nsITransferable;
161 typedef nsISupports nsIDOMFileList;
162 typedef nsISupports nsIDOMFile;
163 typedef nsISupports nsIControllers;
164 typedef nsISupports nsIDOMValidityState;
165 typedef nsISupports nsIPluginInstanceOwner;
166 typedef nsISupports nsIPluginStreamListener;
167 typedef nsISupports nsIContentSink;
168 typedef nsISupports nsIParserFilter;
169 typedef nsISupports nsIDTD;
170 typedef nsISupports nsIObserver;
171 typedef nsISupports nsIDOMNodeFilter;
172 typedef nsISupports nsIDOMNodeIterator;
173 typedef nsISupports nsIDOMTreeWalker;
174 typedef nsISupports nsIHttpUpgradeListener;
175 typedef nsISupports nsIDOMDOMStringMap;
176 typedef nsISupports nsIDOMDOMStringList;
177 typedef nsISupports nsIDOMOfflineResourceList;
178 typedef nsISupports nsIDOMHistory;
179 typedef nsISupports nsIDOMNavigator;
180 typedef nsISupports nsIDOMMediaQueryList;
181 typedef nsISupports nsIDOMScreen;
182 typedef nsISupports nsIAnimationFrameListener;
183 typedef nsISupports nsIDOMStorageList;
184 typedef nsISupports nsILocalFile;
185 typedef nsISupports nsIDOMHTMLMenuElement;
186 typedef nsISupports nsIDOMCaretPosition;
187 typedef nsISupports nsIFrameRequestCallback;
188 typedef nsISupports nsICycleCollectorListener;
189 typedef nsISupports nsIDOMHTMLCanvasElement;
190 typedef nsISupports nsIQueryContentEventResult;
191 typedef nsISupports nsIDOMBlob;
192 typedef nsISupports nsIPrivacyTransitionObserver;
193 typedef nsISupports nsIDOMHTMLPropertiesCollection;
194 typedef nsISupports mozIDOMApplication;
195 typedef nsISupports nsILoadGroupConnectionInfo;
196 typedef nsISupports nsIDOMCrypto;
197 typedef nsISupports nsIDOMPkcs11;
198 typedef nsISupports nsIDocShellTreeOwner;
199
200 typedef void *JSContext;
201 typedef void *JSObject;
202 typedef uint64_t jsval;
203
204 [
205 object,
206 uuid(8bb35ed9-e332-462d-9155-4a002ab5c958),
207 local
208 ]
209 interface nsIServiceManager : nsISupports
210 {
211 nsresult GetService(nsCIDRef aClass, nsIIDRef aIID, void **result);
212 nsresult GetServiceByContractID(const char *aContractID, nsIIDRef aIID, void **result);
213 nsresult IsServiceInstantiated(nsCIDRef aClass, nsIIDRef aIID, BOOL *_retval);
214 nsresult IsServiceInstantiatedByContractID(const char *aContractID, nsIIDRef aIID, BOOL *_retval);
215 }
216
217 [
218 object,
219 uuid(00000001-0000-0000-c000-000000000046),
220 local
221 ]
222 interface nsIFactory : nsISupports
223 {
224 nsresult CreateInstance(nsISupports *aOuter, const nsIID *iid, void **result);
225 nsresult LockFactory(bool lock);
226 }
227
228 [
229 object,
230 uuid(6aef11c4-8615-44a6-9711-98f43805693d),
231 local
232 ]
233 interface nsIMemory : nsISupports
234 {
235 void *Alloc(/*size_t*/ int size);
236 void *Realloc(void *_ptr, /*size_t*/ int newSize);
237 void Free(void *_ptr);
238 nsresult HeapMinimize(bool immediate);
239 nsresult IsLowMemory(bool *_retval);
240 nsresult IsLowMemoryPlatform(bool *_retval);
241 }
242
243 [
244 object,
245 uuid(9188bc85-f92e-11d2-81ef-0060083a0bcf),
246 local
247 ]
248 interface nsIWeakReference : nsISupports
249 {
250 nsresult QueryReferent(const nsIID *riid, void **result);
251 }
252
253 [
254 object,
255 uuid(9188bc86-f92e-11d2-81ef-0060083a0bcf),
256 local
257 ]
258 interface nsISupportsWeakReference : nsISupports
259 {
260 nsresult GetWeakReference(nsIWeakReference **_retval);
261 }
262
263 [
264 object,
265 uuid(033a1470-8b2a-11d3-af88-00a024ffc08c),
266 local
267 ]
268 interface nsIInterfaceRequestor : nsISupports
269 {
270 nsresult GetInterface(const nsIID *riid, void **result);
271 }
272
273 [
274 object,
275 uuid(4a2abaf0-6886-11d3-9382-00104ba0fd40),
276 local
277 ]
278 interface nsIRunnable : nsISupports
279 {
280 nsresult Run();
281 }
282
283 [
284 object,
285 uuid(d1899240-f9d2-11d2-bdd6-000064657374),
286 local
287 ]
288 interface nsISimpleEnumerator : nsISupports
289 {
290 nsresult HasMoreElements(bool *_retval);
291 nsresult GetNext(nsISupports **_retval);
292 }
293
294 [
295 object,
296 uuid(81e4c2de-acac-4ad6-901a-b5fb1b851a0d),
297 local
298 ]
299 interface nsIVariant : nsISupports
300 {
301 nsresult GetDataType(uint16_t *aDataType);
302 nsresult GetAsInt8(uint8_t *_retval);
303 nsresult GetAsInt16(int16_t *_retval);
304 nsresult GetAsInt32(int32_t *_retval);
305 nsresult GetAsInt64(int64_t *_retval);
306 nsresult GetAsUint8(uint8_t *_retval);
307 nsresult GetAsUint16(uint16_t *_retval);
308 nsresult GetAsUint32(uint32_t *_retval);
309 nsresult GetAsUint64(uint64_t *_retval);
310 nsresult GetAsFloat(float *_retval);
311 nsresult GetAsDouble(double *_retval);
312 nsresult GetAsBool(bool *_retval);
313 nsresult GetAsChar(char *_retval);
314 nsresult GetAsWChar(PRUnichar *_retval);
315 nsresult GetAsID(nsID *retval);
316 nsresult GetAsAString(nsAString *_retval);
317 nsresult GetAsDOMString(nsAString *_retval);
318 nsresult GetAsACString(nsACString *_retval);
319 nsresult GetAsAUTF8String(nsACString *_retval);
320 nsresult GetAsString(char * *_retval);
321 nsresult GetAsWString(PRUnichar * *_retval);
322 nsresult GetAsISupports(nsISupports * *_retval);
323 nsresult GetAsJSVal(long /*jsval*/ *_retval);
324 nsresult GetAsInterface(nsIID **iid, void **iface);
325 nsresult GetAsArray(uint16_t *type, nsIID *iid, uint32_t *count, void **ptr);
326 nsresult GetAsStringWithSize(uint32_t *size, char **str);
327 nsresult GetAsWStringWithSize(uint32_t *size, PRUnichar **str);
328 }
329
330 [
331 object,
332 uuid(5586a590-8c82-11d5-90f3-0010a4e73d9a),
333 local
334 ]
335 interface nsIWritableVariant : nsIVariant
336 {
337 nsresult GetWritable(bool *aWritable);
338 nsresult SetWritable(bool aWritable);
339 nsresult SetAsInt8(uint8_t aValue);
340 nsresult SetAsInt16(int16_t aValue);
341 nsresult SetAsInt32(int32_t aValue);
342 nsresult SetAsInt64(int64_t aValue);
343 nsresult SetAsUint8(uint8_t aValue);
344 nsresult SetAsUint16(uint16_t aValue);
345 nsresult SetAsUint32(uint32_t aValue);
346 nsresult SetAsUint64(uint64_t aValue);
347 nsresult SetAsFloat(float aValue);
348 nsresult SetAsDouble(double aValue);
349 nsresult SetAsBool(bool aValue);
350 nsresult SetAsChar(char aValue);
351 nsresult SetAsWChar(PRUnichar aValue);
352 nsresult SetAsID(const nsID *aValue);
353 nsresult SetAsAString(const nsAString *aValue);
354 nsresult SetAsDOMString(const nsAString *aValue);
355 nsresult SetAsACString(const nsACString *aValue);
356 nsresult SetAsAUTF8String(const nsACString *aValue);
357 nsresult SetAsString(const char * aValue);
358 nsresult SetAsWString(const PRUnichar * aValue);
359 nsresult SetAsISupports(nsISupports *aValue);
360 nsresult SetAsInterface(const nsIID *iid, void *iface);
361 nsresult SetAsArray(uint16_t type, const nsIID *iid, uint32_t count, void *ptr);
362 nsresult SetAsStringWithSize(uint32_t size, const char *str);
363 nsresult SetAsWStringWithSize(uint32_t size, const PRUnichar *str);
364 nsresult SetAsVoid();
365 nsresult SetAsEmpty();
366 nsresult SetAsEmptyArray();
367 nsresult SetFromVariant(nsIVariant *aValue);
368 }
369
370 [
371 object,
372 uuid(53cdbc97-c2d7-4e30-b2c3-45b2ee79db18),
373 local
374 ]
375 interface nsIInputStream : nsISupports
376 {
377 nsresult Close();
378 nsresult Available(uint64_t *_retval);
379 nsresult Read(char *aBuf, uint32_t aCount, uint32_t *_retval);
380 nsresult ReadSegments(nsresult (*aWriter)(nsIInputStream *aInStream,
381 void *aClosure, const char *aFromSegment, uint32_t aToOffset,
382 uint32_t aCount, uint32_t *aWriteCount),
383 void *aClosure, uint32_t aCount, uint32_t *_retval);
384 nsresult IsNonBlocking(bool *_retval);
385 }
386
387 [
388 object,
389 uuid(395fe045-7d18-4adb-a3fd-af98c8a1af11),
390 local
391 ]
392 interface nsIURI : nsISupports
393 {
394 nsresult GetSpec(nsACString *aSpec);
395 nsresult SetSpec(const nsACString *aSpec);
396 nsresult GetPrePath(nsACString *aPrePath);
397 nsresult GetScheme(nsACString *aScheme);
398 nsresult SetScheme(const nsACString *aScheme);
399 nsresult GetUserPass(nsACString *aUserPass);
400 nsresult SetUserPass(const nsACString *aUserPass);
401 nsresult GetUsername(nsACString *aUsername);
402 nsresult SetUsername(const nsACString *aUsername);
403 nsresult GetPassword(nsACString *aPassword);
404 nsresult SetPassword(const nsACString *aPassword);
405 nsresult GetHostPort(nsACString *aHostPort);
406 nsresult SetHostPort(const nsACString *aHostPort);
407 nsresult GetHost(nsACString *aHost);
408 nsresult SetHost(const nsACString *aHost);
409 nsresult GetPort(int32_t *aPort);
410 nsresult SetPort(int32_t aPort);
411 nsresult GetPath(nsACString *aPath);
412 nsresult SetPath(const nsACString *aPath);
413 nsresult Equals(nsIURI *other, bool *_retval);
414 nsresult SchemeIs(const char *scheme, bool *_retval);
415 nsresult Clone(nsIURI **_retval);
416 nsresult Resolve(const nsACString *relativePath, nsACString *_retval);
417 nsresult GetAsciiSpec(nsACString *aAsciiSpec);
418 nsresult GetAsciiHost(nsACString *aAsciiHost);
419 nsresult GetOriginCharset(nsACString *aOriginCharset);
420 nsresult GetRef(nsACString *aRef);
421 nsresult SetRef(const nsACString *aRef);
422 nsresult EqualsExceptRef(nsIURI *other, bool *_retval);
423 nsresult CloneIgnoringRef(nsIURI **_retval);
424 nsresult GetSpecIgnoringRef(nsACString *aSpecIgnoringRef);
425 nsresult GetHasRef(bool *aHasRef);
426 }
427
428 [
429 object,
430 uuid(1419aa16-f134-4154-9886-00c7c5147a13),
431 local
432 ]
433 interface nsIURL : nsIURI
434 {
435 nsresult GetFilePath(nsACString *aFilePath);
436 nsresult SetFilePath(const nsACString *aFilePath);
437 nsresult GetQuery(nsACString *aQuery);
438 nsresult SetQuery(const nsACString *aQuery);
439 nsresult GetDirectory(nsACString *aDirectory);
440 nsresult SetDirectory(const nsACString *aDirectory);
441 nsresult GetFileName(nsACString *aFileName);
442 nsresult SetFileName(const nsACString *aFileName);
443 nsresult GetFileBaseName(nsACString *aFileBaseName);
444 nsresult SetFileBaseName(const nsACString *aFileBaseName);
445 nsresult GetFileExtension(nsACString *aFileExtension);
446 nsresult SetFileExtension(const nsACString *aFileExtension);
447 nsresult GetCommonBaseSpec(nsIURI *aURIToCompare, nsACString *_retval);
448 nsresult GetRelativeSpec(nsIURI *aURIToCompare, nsACString *_retval);
449 }
450
451 [
452 object,
453 uuid(7750029c-1b0a-414e-8359-a77f24a2a0a6),
454 local
455 ]
456 interface nsIFileURL : nsIURL
457 {
458 nsresult GetFile(nsIFile **aFile);
459 nsresult SetFile(nsIFile *aFile);
460 }
461
462 [
463 object,
464 uuid(321578d0-03c1-4d95-8821-021ac612d18d),
465 local
466 ]
467 interface nsIMutable : nsISupports
468 {
469 nsresult GetMutable(bool *aMutable);
470 nsresult SetMutable(bool aMutable);
471 }
472
473 [
474 object,
475 uuid(babd6cca-ebe7-4329-967c-d6b9e33caa81),
476 local
477 ]
478 interface nsIStandardURL : nsIMutable
479 {
480 nsresult Init(uint32_t aUrlType, int32_t aDefaultPort, const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI);
481 }
482
483 [
484 object,
485 uuid(ef6bfbd2-fd46-48d8-96b7-9f8f0fd387fe),
486 local
487 ]
488 interface nsIRequest : nsISupports
489 {
490 nsresult GetName(nsACString *aName);
491 nsresult IsPending(bool *_retval);
492 nsresult GetStatus(nsresult *aStatus);
493 nsresult Cancel(nsresult aStatus);
494 nsresult Suspend();
495 nsresult Resume();
496 nsresult GetLoadGroup(nsILoadGroup **aLoadGroup);
497 nsresult SetLoadGroup(nsILoadGroup *aLoadGroup);
498 nsresult GetLoadFlags(nsLoadFlags *aLoadFlags);
499 nsresult SetLoadFlags(nsLoadFlags aLoadFlags);
500 }
501
502 [
503 object,
504 uuid(fd91e2e0-1481-11d3-9333-00104ba0fd40),
505 local
506 ]
507 interface nsIRequestObserver : nsISupports
508 {
509 nsresult OnStartRequest(nsIRequest *aRequest, nsISupports *aContext);
510 nsresult OnStopRequest(nsIRequest *aRequest, nsISupports *aContext, nsresult aStatusCode);
511 }
512
513 [
514 object,
515 uuid(3b4c8a77-76ba-4610-b316-678c73a3b88c),
516 local
517 ]
518 interface nsIStreamListener : nsIRequestObserver
519 {
520 nsresult OnDataAvailable(nsIRequest *aRequest, nsISupports *aContext,
521 nsIInputStream *aInputStream, uint64_t aOffset, uint32_t aCount);
522 }
523
524 [
525 object,
526 uuid(19501006-46e3-4634-b97d-26eff894b4d3),
527 local
528 ]
529 interface nsILoadGroup : nsIRequest
530 {
531 nsresult GetGroupObserver(nsIRequestObserver **aGroupObserver);
532 nsresult SetGroupObserver(nsIRequestObserver *aGroupObserver);
533 nsresult GetDefaultLoadRequest(nsIRequest **aDefaultLoadRequest);
534 nsresult SetDefaultLoadRequest(nsIRequest *aDefaultLoadRequest);
535 nsresult AddRequest(nsIRequest *aRequest, nsISupports *aContext);
536 nsresult RemoveRequest(nsIRequest *aRequest, nsISupports *aContext, nsresult aStatus);
537 nsresult GetRequests(nsISimpleEnumerator **aRequests);
538 nsresult GetActiveCount(uint32_t *aActiveCount);
539 nsresult GetNotificationCallbacks(nsIInterfaceRequestor **aNotificationCallbacks);
540 nsresult SetNotificationCallbacks(nsIInterfaceRequestor *aNotificationCallbacks);
541 nsresult GetConnectionInfo(nsILoadGroupConnectionInfo **aConnectionInfo);
542 }
543
544 [
545 object,
546 uuid(2a8a7237-c1e2-4de7-b669-2002af29e42d),
547 local
548 ]
549 interface nsIChannel : nsIRequest
550 {
551 const UINT LOAD_DOCUMENT_URI = 1 << 16;
552 const UINT LOAD_RETARGETED_DOCUMENT_URI = 1 << 17;
553 const UINT LOAD_REPLACE = 1 << 18;
554 const UINT LOAD_INITIAL_DOCUMENT_URI = 1 << 19;
555 const UINT LOAD_TARGETED = 1 << 20;
556 const UINT LOAD_CALL_CONTENT_SNIFFERS = 1 << 21;
557 const UINT LOAD_CLASSIFY_URI = 1 << 22;
558 const UINT LOAD_TREAT_APPLICATION_OCTET_STREAM_AS_UNKNOWN = 1 << 23;
559 const UINT LOAD_EXPLICIT_CREDENTIALS = 1 << 24;
560
561 nsresult GetOriginalURI(nsIURI **aOriginalURI);
562 nsresult SetOriginalURI(nsIURI *aOriginalURI);
563 nsresult GetURI(nsIURI **aURI);
564 nsresult GetOwner(nsISupports **aOwner);
565 nsresult SetOwner(nsISupports *aOwner);
566 nsresult GetNotificationCallbacks(nsIInterfaceRequestor **aNotificationCallbacks);
567 nsresult SetNotificationCallbacks(nsIInterfaceRequestor *aNotificationCallbacks);
568 nsresult GetSecurityInfo(nsISupports **aSecurityInfo);
569 nsresult GetContentType(nsACString *aContentType);
570 nsresult SetContentType(const nsACString *aContentType);
571 nsresult GetContentCharset(nsACString *aContentCharset);
572 nsresult SetContentCharset(const nsACString *aContentCharset);
573 nsresult GetContentLength(int64_t *aContentLength);
574 nsresult SetContentLength(int64_t aContentLength);
575 nsresult Open(nsIInputStream **_retval);
576 nsresult AsyncOpen(nsIStreamListener *aListener, nsISupports *aContext);
577 nsresult GetContentDisposition(uint32_t *aContentDisposition);
578 nsresult SetContentDisposition(uint32_t aContentDisposition);
579 nsresult GetContentDispositionFilename(nsAString *aContentDispositionFilename);
580 nsresult SetContentDispositionFilename(const nsAString *aContentDispositionFilename);
581 nsresult GetContentDispositionHeader(nsACString *aContentDispositionHeader);
582 }
583
584 [
585 object,
586 uuid(35412859-b9d9-423c-8866-2d4559fdd2be),
587 local
588 ]
589 interface nsIHttpHeaderVisitor : nsISupports
590 {
591 nsresult VisitHeader(const nsACString *aHeader, const nsACString *aValue);
592 }
593
594 [
595 object,
596 uuid(a01362a0-5c45-11e2-bcfd-0800200c9a66),
597 local
598 ]
599 interface nsIHttpChannel : nsIChannel
600 {
601 nsresult GetRequestMethod(nsACString *aRequestMethod);
602 nsresult SetRequestMethod(const nsACString *aRequestMethod);
603 nsresult GetReferrer(nsIURI **aReferrer);
604 nsresult SetReferrer(nsIURI *aReferrer);
605 nsresult GetRequestHeader(const nsACString *aHeader, nsACString *_retval);
606 nsresult SetRequestHeader(const nsACString *aHeader, const nsACString *aValue, bool aMerge);
607 nsresult VisitRequestHeaders(nsIHttpHeaderVisitor *aVisitor);
608 nsresult GetAllowPipelining(bool *aAllowPipelining);
609 nsresult SetAllowPipelining(bool aAllowPipelining);
610 nsresult GetRedirectionLimit(uint32_t *aRedirectionLimit);
611 nsresult SetRedirectionLimit(uint32_t aRedirectionLimit);
612 nsresult GetResponseStatus(uint32_t *aResponseStatus);
613 nsresult GetResponseStatusText(nsACString *aResponseStatusText);
614 nsresult GetRequestSucceeded(bool *aRequestSucceeded);
615 nsresult GetResponseHeader(const nsACString *header, nsACString *_retval);
616 nsresult SetResponseHeader(const nsACString *header, const nsACString *value, bool merge);
617 nsresult VisitResponseHeaders(nsIHttpHeaderVisitor *aVisitor);
618 nsresult IsNoStoreResponse(bool *_retval);
619 nsresult IsNoCacheResponse(bool *_retval);
620 nsresult RedirectTo(nsIURI *aNewURI);
621 }
622
623 [
624 object,
625 uuid(74d13d41-85cd-490f-9942-300d0c01c726),
626 local
627 ]
628 interface nsIHttpChannelInternal : nsISupports
629 {
630 nsresult GetDocumentURI(nsIURI **aDocumentURI);
631 nsresult SetDocumentURI(nsIURI *aDocumentURI);
632 nsresult GetRequestVersion(uint32_t *major, uint32_t *minor);
633 nsresult GetResponseVersion(uint32_t *major, uint32_t *minor);
634 nsresult SetCookie(const char *aCookieHeader);
635 nsresult SetupFallbackChannel(const char *aFallbackKey);
636 nsresult GetForceAllowThirdPartyCookie(bool *aForceAllowThirdPartyCookie);
637 nsresult SetForceAllowThirdPartyCookie(bool aForceAllowThirdPartyCookie);
638 nsresult GetCanceled(bool *aCanceled);
639 nsresult GetChannelIsForDownload(bool *aChannelIsForDownload);
640 nsresult SetChannelIsForDownload(bool aChannelIsForDownload);
641 nsresult GetLocalAddress(nsACString *aLocalAddress);
642 nsresult GetLocalPort(int32_t *aLocalPort);
643 nsresult GetRemoteAddress(nsACString *aRemoteAddress);
644 nsresult GetRemotePort(int32_t *aRemotePort);
645 nsresult SetCacheKeysRedirectChain(void /*nsTArray<nsCString>*/ *cacheKeys);
646 nsresult HTTPUpgrade(const nsACString *aProtocolName, nsIHttpUpgradeListener *aListener);
647 nsresult GetAllowSpdy(bool *aAllowSpdy);
648 nsresult SetAllowSpdy(bool aAllowSpdy);
649 nsresult GetLoadAsBlocking(bool *aLoadAsBlocking);
650 nsresult SetLoadAsBlocking(bool aLoadAsBlocking);
651 nsresult GetLoadUnblocked(bool *aLoadUnblocked);
652 nsresult SetLoadUnblocked(bool aLoadUnblocked);
653 }
654
655 [
656 object,
657 uuid(5cfe15bd-5adb-4a7f-9e55-4f5a67d15794),
658 local
659 ]
660 interface nsIUploadChannel : nsISupports
661 {
662 nsresult SetUploadStream(nsIInputStream *aStream, const nsACString *aContentType,
663 int64_t aContentLength);
664 nsresult GetUploadStream(nsIInputStream **aUploadStream);
665 }
666
667 [
668 object,
669 uuid(8d171460-a716-41f1-92be-8c659db39b45),
670 local
671 ]
672 interface nsIAsyncVerifyRedirectCallback : nsISupports
673 {
674 nsresult OnRedirectVerifyCallback(nsresult result);
675 }
676
677 [
678 object,
679 uuid(a430d870-df77-4502-9570-d46a8de33154),
680 local
681 ]
682 interface nsIChannelEventSink : nsISupports
683 {
684 cpp_quote("#define REDIRECT_TEMPORARY 1")
685 cpp_quote("#define REDIRECT_PERMANENT 2")
686 cpp_quote("#define REDIRECT_INTERNAL 4")
687
688 nsresult AsyncOnChannelRedirect(nsIChannel *oldChannel, nsIChannel *newChannel, uint32_t flags,
689 nsIAsyncVerifyRedirectCallback *callback);
690 }
691
692 [
693 object,
694 uuid(79de76e5-994e-4f6b-81aa-42d9adb6e67e),
695 local
696 ]
697 interface nsIDOMLocation : nsISupports
698 {
699 nsresult GetHash(nsAString *aHash);
700 nsresult SetHash(const nsAString *aHash);
701 nsresult GetHost(nsAString *aHost);
702 nsresult SetHost(const nsAString *aHost);
703 nsresult GetHostname(nsAString *aHostname);
704 nsresult SetHostname(const nsAString *aHostname);
705 nsresult GetHref(nsAString *aHref);
706 nsresult SetHref(const nsAString *aHref);
707 nsresult GetPathname(nsAString *aPathname);
708 nsresult SetPathname(const nsAString *aPathname);
709 nsresult GetPort(nsAString *aPort);
710 nsresult SetPort(const nsAString *aPort);
711 nsresult GetProtocol(nsAString *aProtocol);
712 nsresult SetProtocol(const nsAString *aProtocol);
713 nsresult GetSearch(nsAString *aSearch);
714 nsresult SetSearch(const nsAString *aSearch);
715 nsresult GetOrigin(nsAString *aOrigin);
716 nsresult Reload(bool forceget);
717 nsresult Replace(const nsAString *url);
718 nsresult Assign(const nsAString *url);
719 nsresult ToString(nsAString *_retval);
720 nsresult ValueOf(nsIDOMLocation **_retval);
721 }
722
723 [
724 object,
725 uuid(2938307a-9d70-4b63-8afc-0197e82318ad),
726 local
727 ]
728 interface nsIDOMCSSRule : nsISupports
729 {
730 nsresult GetType(uint16_t *aType);
731 nsresult GetCssText(nsAString *aCssText);
732 nsresult SetCssText(const nsAString *aCssText);
733 nsresult GetParentStyleSheet(nsIDOMCSSStyleSheet **aParentStyleSheet);
734 nsresult GetParentRule(nsIDOMCSSRule **aParentRule);
735 }
736
737 [
738 object,
739 uuid(a6cf90be-15b3-11d2-932e-00805f8add32),
740 local
741 ]
742 interface nsIDOMCSSStyleDeclaration : nsISupports
743 {
744 nsresult GetCssText(nsAString *aCssText);
745 nsresult SetCssText(const nsAString *aCssText);
746 nsresult GetPropertyValue(const nsAString *propertyName, nsAString *_retval);
747 nsresult GetPropertyCSSValue(const nsAString *propertyName, nsIDOMCSSValue **_retval);
748 nsresult RemoveProperty(const nsAString *propertyName, nsAString *_retval);
749 nsresult GetPropertyPriority(const nsAString *propertyName, nsAString *_retval);
750 nsresult SetProperty(const nsAString *propertyName, const nsAString *value,
751 const nsAString *priority);
752 nsresult GetLength(uint32_t *aLength);
753 nsresult Item(uint32_t index, nsAString *_retval);
754 nsresult GetParentRule(nsIDOMCSSRule **aParentRule);
755 }
756
757 [
758 object,
759 uuid(a6cf90c0-15b3-11d2-932e-00805f8add32),
760 local
761 ]
762 interface nsIDOMCSSRuleList : nsISupports
763 {
764 nsresult GetLength(uint32_t *aLength);
765 nsresult Item(uint32_t index, nsIDOMCSSRule **_retval);
766 }
767
768 [
769 object,
770 uuid(a6cf9080-15b3-11d2-932e-00805f8add32),
771 local
772 ]
773 interface nsIDOMStyleSheet : nsISupports
774 {
775 nsresult GetType(nsAString *aType);
776 nsresult GetDisabled(bool *aDisabled);
777 nsresult SetDisabled(bool aDisabled);
778 nsresult GetOwnerNode(nsIDOMNode **aOwnerNode);
779 nsresult GetParentStyleSheet(nsIDOMStyleSheet **aParentStyleSheet);
780 nsresult GetHref(nsAString *aHref);
781 nsresult GetTitle(nsAString *aTitle);
782 nsresult GetMedia(nsIDOMMediaList **aMedia);
783 }
784
785 [
786 object,
787 uuid(a6cf90c2-15b3-11d2-932e-00805f8add32),
788 local
789 ]
790 interface nsIDOMCSSStyleSheet : nsIDOMStyleSheet
791 {
792 nsresult GetOwnerRule(nsIDOMCSSRule **aOwnerRule);
793 nsresult GetCssRules(nsIDOMCSSRuleList **aCssRules);
794 nsresult InsertRule(const nsAString *rule, uint32_t index, uint32_t *_retval);
795 nsresult DeleteRule(uint32_t index);
796 }
797
798 [
799 object,
800 uuid(a6cf9081-15b3-11d2-932e-00805f8add32),
801 local
802 ]
803 interface nsIDOMStyleSheetList : nsISupports
804 {
805 nsresult GetLength(uint32_t *aLength);
806 nsresult Item(uint32_t index, nsIDOMStyleSheet **_retval);
807 }
808
809 [
810 object,
811 uuid(450cf0ba-de90-4f86-85bf-e10cc8b8713f),
812 local
813 ]
814 interface nsIDOMNodeList : nsISupports
815 {
816 nsresult Item(uint32_t index, nsIDOMNode **_retval);
817 nsresult GetLength(uint32_t *aLength);
818 }
819
820 [
821 object,
822 uuid(bb07f567-5b37-4172-92aa-7d00ceed4809),
823 local
824 ]
825 interface nsIDOMHTMLCollection : nsISupports
826 {
827 nsresult GetLength(uint32_t *aLength);
828 nsresult Item(uint32_t index, nsIDOMNode **_retval);
829 nsresult NamedItem(const nsAString *name, nsIDOMNode **_retval);
830 }
831
832 [
833 object,
834 uuid(a6cf907b-15b3-11d2-932e-00805f8add32),
835 local
836 ]
837 interface nsIDOMNamedNodeMap : nsISupports
838 {
839 nsresult GetNamedItem(const nsAString *name, nsIDOMNode **_retval);
840 nsresult SetNamedItem(nsIDOMNode *arg, nsIDOMNode **_retval);
841 nsresult RemoveNamedItem(const nsAString *name, nsIDOMNode **_retval);
842 nsresult Item(uint32_t index, nsIDOMNode **_retval);
843 nsresult GetLength(uint32_t *aLength);
844 nsresult GetNamedItemNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMNode **_retval);
845 nsresult SetNamedItemNS(nsIDOMNode *arg, nsIDOMNode **_retval);
846 nsresult RemoveNamedItemNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMNode **_retval);
847 }
848
849 [
850 object,
851 uuid(5e9bcec9-5928-4f77-8a9c-424ef01c20e1),
852 local
853 ]
854 interface nsIDOMNode : nsISupports
855 {
856 enum NSNODETYPE {
857 ELEMENT_NODE = 1,
858 ATTRIBUTE_NODE = 2,
859 TEXT_NODE = 3,
860 CDATA_SELECTION_NODE = 4,
861 ENTITY_REFERENCE_NODE = 5,
862 ENTITY_NODE = 6,
863 PROCESSING_INSTRUCTION_NODE = 7,
864 COMMENT_NODE = 8,
865 DOCUMENT_NODE = 9,
866 DOCUMENT_TYPE_NODE = 10,
867 DOCUMENT_FRAGMENT_NODE = 11,
868 NOTATION_NODE = 12
869 };
870
871 enum {
872 DOCUMENT_POSITION_DISCONNECTED = 1,
873 DOCUMENT_POSITION_PRECEDING = 2,
874 DOCUMENT_POSITION_FOLLOWING = 4,
875 DOCUMENT_POSITION_CONTAINS = 8,
876 DOCUMENT_POSITION_CONTAINED_BY = 16,
877 DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32
878 };
879
880 nsresult GetNodeName(nsAString *aNodeName);
881 nsresult GetNodeValue(nsAString *aNodeValue);
882 nsresult SetNodeValue(const nsAString *aNodeValue);
883 nsresult GetNodeType(uint16_t *aNodeType);
884 nsresult GetParentNode(nsIDOMNode **aParentNode);
885 nsresult GetParentElement(nsIDOMElement **aParentElement);
886 nsresult GetChildNodes(nsIDOMNodeList **aChildNodes);
887 nsresult GetFirstChild(nsIDOMNode **aFirstChild);
888 nsresult GetLastChild(nsIDOMNode **aLastChild);
889 nsresult GetPreviousSibling(nsIDOMNode **aPreviousSibling);
890 nsresult GetNextSibling(nsIDOMNode **aNextSibling);
891 nsresult GetAttributes(nsIDOMNamedNodeMap **aAttributes);
892 nsresult GetOwnerDocument(nsIDOMDocument **aOwnerDocument);
893 nsresult InsertBefore(nsIDOMNode *newChild, nsIDOMNode *refChild, nsIDOMNode **_retval);
894 nsresult ReplaceChild(nsIDOMNode *newChild, nsIDOMNode *oldChild, nsIDOMNode **_retval);
895 nsresult RemoveChild(nsIDOMNode *oldChild, nsIDOMNode **_retval);
896 nsresult AppendChild(nsIDOMNode *newChild, nsIDOMNode **_retval);
897 nsresult HasChildNodes(bool *_retval);
898 nsresult CloneNode(bool deep, uint8_t _argc, nsIDOMNode **_retval);
899 nsresult Normalize();
900 nsresult IsSupported(const nsAString *feature, const nsAString *version, bool *_retval);
901 nsresult GetNamespaceURI(nsAString *aNamespaceURI);
902 nsresult GetPrefix(nsAString *aPrefix);
903 nsresult GetLocalName(nsAString *aLocalName);
904 nsresult HasAttributes(bool *_retval);
905 nsresult GetDOMBaseURI(nsAString *aBaseURI);
906 nsresult CompareDocumentPosition(nsIDOMNode *other, uint16_t *_retval);
907 nsresult GetTextContent(nsAString *aTextContent);
908 nsresult SetTextContent(const nsAString *aTextContent);
909 nsresult LookupPrefix(const nsAString *namespaceURI, nsAString *_retval);
910 nsresult IsDefaultNamespace(const nsAString *namespaceURI, bool *_retval);
911 nsresult LookupNamespaceURI(const nsAString *prefix, nsAString *_retval);
912 nsresult IsEqualNode(nsIDOMNode *arg, bool *_retval);
913 nsresult SetUserData(const nsAString *key, nsIVariant *data, nsIDOMUserDataHandler *handler, nsIVariant **_retval);
914 nsresult GetUserData(const nsAString *key, nsIVariant **_retval);
915 nsresult Contains(nsIDOMNode *aOther, bool *_retval);
916
917 nsresult GetMshtmlNode(nsISupports **aMshtmlNode);
918 nsresult SetMshtmlNode(nsISupports *aMshtmlNode);
919 }
920
921 [
922 object,
923 uuid(03da4bc9-1b9a-41dc-a1a4-32414d48d704),
924 local
925 ]
926 interface nsIDOMAttr : nsIDOMNode
927 {
928 nsresult GetName(nsAString *aName);
929 nsresult GetSpecified(bool *aSpecified);
930 nsresult GetValue(nsAString *aValue);
931 nsresult SetValue(const nsAString *aValue);
932 nsresult GetOwnerElement(nsIDOMElement **aOwnerElement);
933 nsresult GetIsId(bool *aIsId);
934 }
935
936 [
937 object,
938 uuid(b2f824c4-d9d3-499b-8d3b-45c8245497c6),
939 local
940 ]
941 interface nsIDOMClientRect : nsISupports
942 {
943 nsresult GetLeft(float *aLeft);
944 nsresult GetTop(float *aTop);
945 nsresult GetRight(float *aRight);
946 nsresult GetBottom(float *aBottom);
947 nsresult GetWidth(float *aWidth);
948 nsresult GetHeight(float *aHeight);
949 }
950
951 [
952 object,
953 uuid(8f972a47-1f20-4906-b59d-19310349a2c2),
954 local
955 ]
956 interface nsIDOMElement : nsIDOMNode
957 {
958 nsresult GetTagName(nsAString *aTagName);
959 nsresult GetClassList(nsISupports **aClassList);
960 nsresult GetAttribute(const nsAString *name, nsAString *_retval);
961 nsresult GetAttributeNS(const nsAString *namespaceURI, const nsAString *localName, nsAString *_retval);
962 nsresult SetAttribute(const nsAString *name, const nsAString *value);
963 nsresult SetAttributeNS(const nsAString *namespaceURI, const nsAString *qualifiedName, const nsAString *value);
964 nsresult RemoveAttribute(const nsAString *name);
965 nsresult RemoveAttributeNS(const nsAString *namespaceURI, const nsAString *localName);
966 nsresult HasAttribute(const nsAString *name, bool *_retval);
967 nsresult HasAttributeNS(const nsAString *namespaceURI, const nsAString *localName, bool *_retval);
968 nsresult GetAttributeNode(const nsAString *name, nsIDOMAttr **_retval);
969 nsresult SetAttributeNode(nsIDOMAttr *newAttr, nsIDOMAttr **_retval);
970 nsresult RemoveAttributeNode(nsIDOMAttr *oldAttr, nsIDOMAttr **_retval);
971 nsresult GetAttributeNodeNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMAttr **_retval);
972 nsresult SetAttributeNodeNS(nsIDOMAttr *newAttr, nsIDOMAttr **_retval);
973 nsresult GetElementsByTagName(const nsAString *name, nsIDOMHTMLCollection **_retval);
974 nsresult GetElementsByTagNameNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMHTMLCollection **_retval);
975 nsresult GetElementsByClassName(const nsAString *classes, nsIDOMHTMLCollection **_retval);
976 nsresult GetChildElements(nsIDOMNodeList **aChildren);
977 nsresult GetFirstElementChild(nsIDOMElement **aFirstElementChild);
978 nsresult GetLastElementChild(nsIDOMElement **aLastElementChild);
979 nsresult GetPreviousElementSibling(nsIDOMElement **aPreviousElementSibling);
980 nsresult GetNextElementSibling(nsIDOMElement **aNextElementSibling);
981 nsresult GetChildElementCount(uint32_t *aChildElementCount);
982 nsresult GetOnmouseenter(JSContext *cx, jsval *aOnmouseenter);
983 nsresult SetOnmouseenter(JSContext *cx, const jsval *aOnmouseenter);
984 nsresult GetOnmouseleave(JSContext *cx, jsval *aOnmouseleave);
985 nsresult SetOnmouseleave(JSContext *cx, const jsval *aOnmouseleave);
986 nsresult GetClientRects(nsIDOMClientRectList **_retval);
987 nsresult GetBoundingClientRect(nsIDOMClientRect **_retval);
988 nsresult GetScrollTop(int32_t *aScrollTop);
989 nsresult SetScrollTop(int32_t aScrollTop);
990 nsresult GetScrollLeft(int32_t *aScrollLeft);
991 nsresult SetScrollLeft(int32_t aScrollLeft);
992 nsresult GetScrollWidth(int32_t *aScrollWidth);
993 nsresult GetScrollHeight(int32_t *aScrollHeight);
994 nsresult GetClientTop(int32_t *aClientTop);
995 nsresult GetClientLeft(int32_t *aClientLeft);
996 nsresult GetClientWidth(int32_t *aClientWidth);
997 nsresult GetClientHeight(int32_t *aClientHeight);
998 nsresult GetScrollLeftMax(int32_t *aScrollLeftMax);
999 nsresult GetScrollTopMax(int32_t *aScrollTopMax);
1000 nsresult MozMatchesSelector(const nsAString *selector, bool *_retval);
1001 nsresult SetCapture(bool retargetToElement);
1002 nsresult ReleaseCapture();
1003 nsresult MozRequestFullScreen();
1004 nsresult MozRequestPointerLock();
1005 }
1006
1007 [
1008 object,
1009 uuid(99715845-95fc-4a56-aa53-214b65c26e22),
1010 local
1011 ]
1012 interface nsIDOMElementCSSInlineStyle : nsISupports
1013 {
1014 nsresult GetStyle(nsIDOMCSSStyleDeclaration **aStyle);
1015 }
1016
1017 cpp_quote("#undef GetClassName")
1018
1019 [
1020 object,
1021 uuid(9a677a5b-e6f7-4e2e-9ef9-22c2ac9967b3),
1022 local
1023 ]
1024 interface nsIDOMHTMLElement : nsIDOMElement
1025 {
1026 nsresult GetId(nsAString *aId);
1027 nsresult SetId(const nsAString *aId);
1028 nsresult GetTitle(nsAString *aTitle);
1029 nsresult SetTitle(const nsAString *aTitle);
1030 nsresult GetLang(nsAString *aLang);
1031 nsresult SetLang(const nsAString *aLang);
1032 nsresult GetDir(nsAString *aDir);
1033 nsresult SetDir(const nsAString *aDir);
1034 nsresult GetClassName(nsAString *aClassName);
1035 nsresult SetClassName(const nsAString *aClassName);
1036 nsresult GetDataset(nsISupports **aDataset);
1037 nsresult GetItemScope(bool *aItemScope);
1038 nsresult SetItemScope(bool aItemScope);
1039 nsresult GetItemType(nsIVariant **aItemType);
1040 nsresult SetItemType(nsIVariant *aItemType);
1041 nsresult GetItemId(nsAString *aItemId);
1042 nsresult SetItemId(const nsAString *aItemId);
1043 nsresult GetProperties(nsISupports **aProperties);
1044 nsresult GetItemValue(nsIVariant **aItemValue);
1045 nsresult SetItemValue(nsIVariant *aItemValue);
1046 nsresult GetItemProp(nsIVariant **aItemProp);
1047 nsresult SetItemProp(nsIVariant *aItemProp);
1048 nsresult GetItemRef(nsIVariant **aItemRef);
1049 nsresult SetItemRef(nsIVariant *aItemRef);
1050 nsresult GetHidden(bool *aHidden);
1051 nsresult SetHidden(bool aHidden);
1052 nsresult Click();
1053 nsresult GetTabIndex(int32_t *aTabIndex);
1054 nsresult SetTabIndex(int32_t aTabIndex);
1055 nsresult Focus();
1056 nsresult Blur();
1057 nsresult GetAccessKey(nsAString *aAccessKey);
1058 nsresult SetAccessKey(const nsAString *aAccessKey);
1059 nsresult GetAccessKeyLabel(nsAString *aAccessKeyLabel);
1060 nsresult GetDraggable(bool *aDraggable);
1061 nsresult SetDraggable(bool aDraggable);
1062 nsresult GetContentEditable(nsAString *aContentEditable);
1063 nsresult SetContentEditable(const nsAString *aContentEditable);
1064 nsresult GetIsContentEditable(bool *aIsContentEditable);
1065 nsresult GetContextMenu(nsIDOMHTMLMenuElement **aContextMenu);
1066 nsresult GetSpellcheck(bool *aSpellcheck);
1067 nsresult SetSpellcheck(bool aSpellcheck);
1068 nsresult GetInnerHTML(nsAString *aInnerHTML);
1069 nsresult SetInnerHTML(const nsAString *aInnerHTML);
1070 nsresult GetOuterHTML(nsAString *aInnerHTML);
1071 nsresult SetOuterHTML(const nsAString *aInnerHTML);
1072 nsresult InsertAdjacentHTML(const nsAString *position, const nsAString *text);
1073 nsresult ScrollIntoView(bool top, uint8_t _argc);
1074 nsresult GetOffsetParent(nsIDOMElement * *aOffsetParent);
1075 nsresult GetOffsetTop(int32_t *aOffsetTop);
1076 nsresult GetOffsetLeft(int32_t *aOffsetLeft);
1077 nsresult GetOffsetWidth(int32_t *aOffsetWidth);
1078 nsresult GetOffsetHeight(int32_t *aOffsetHeight);
1079 }
1080
1081 [
1082 object,
1083 uuid(8b38545f-7fa5-47d5-a902-c8ea8e78fb0d),
1084 local
1085 ]
1086 interface nsIDOMHTMLHeadElement : nsIDOMHTMLElement
1087 {
1088 }
1089
1090 [
1091 object,
1092 uuid(cb75c251-afc7-444f-b2d6-b9635555f3ed),
1093 local
1094 ]
1095 interface nsIDOMCharacterData : nsIDOMNode
1096 {
1097 nsresult GetData(nsAString *aData);
1098 nsresult SetData(const nsAString *aData);
1099 nsresult GetLength(uint32_t *aLength);
1100 nsresult SubstringData(uint32_t offset, uint32_t count, nsAString *_retval);
1101 nsresult AppendData(const nsAString *arg);
1102 nsresult InsertData(uint32_t offset, const nsAString *arg);
1103 nsresult DeleteData(uint32_t offset, uint32_t count);
1104 nsresult ReplaceData(uint32_t offset, uint32_t count, const nsAString *arg);
1105 }
1106
1107 [
1108 object,
1109 uuid(437ed60c-febd-4bd0-892f-cf358adc3c96),
1110 local
1111 ]
1112 interface nsIDOMText : nsIDOMCharacterData
1113 {
1114 nsresult SplitText(uint32_t offset, nsIDOMText **_retval);
1115 nsresult GetWholeText(nsAString *aWholeText);
1116 }
1117
1118 [
1119 object,
1120 uuid(cea49a35-dac9-4c4d-9830-4660abb3b6bc),
1121 local
1122 ]
1123 interface nsIDOMComment : nsIDOMCharacterData
1124 {
1125 }
1126
1127 [
1128 object,
1129 uuid(4a15eb0c-d5bc-4902-9d50-21b12cab47e7),
1130 local
1131 ]
1132 interface nsIDOMDocumentFragment : nsIDOMNode
1133 {
1134 }
1135
1136 [
1137 object,
1138 uuid(9b93f82b-9691-4021-8f45-1bf505db77ba),
1139 local
1140 ]
1141 interface nsIDOMDocument : nsIDOMNode
1142 {
1143 nsresult GetDoctype(nsIDOMDocumentType **aDoctype);
1144 nsresult GetImplementation(nsIDOMDOMImplementation **aImplementation);
1145 nsresult GetDocumentElement(nsIDOMElement **aDocumentElement);
1146 nsresult CreateElement(const nsAString *tagName, nsIDOMElement **_retval);
1147 nsresult CreateDocumentFragment(nsIDOMDocumentFragment **_retval);
1148 nsresult CreateTextNode(const nsAString *data, nsIDOMText **_retval);
1149 nsresult CreateComment(const nsAString *data, nsIDOMComment **_retval);
1150 nsresult CreateCDATASection(const nsAString *data, nsIDOMCDATASection **_retval);
1151 nsresult CreateProcessingInstruction(const nsAString *target, const nsAString *data, nsIDOMProcessingInstruction **_retval);
1152 nsresult CreateAttribute(const nsAString *name, nsIDOMAttr **_retval);
1153 nsresult GetElementsByTagName(const nsAString *tagname, nsIDOMNodeList **_retval);
1154 nsresult ImportNode(nsIDOMNode *importedNode, bool deep, uint8_t _argc, nsIDOMNode **_retval);
1155 nsresult CreateElementNS(const nsAString *namespaceURI, const nsAString *qualifiedName, nsIDOMElement **_retval);
1156 nsresult CreateAttributeNS(const nsAString *namespaceURI, const nsAString *qualifiedName, nsIDOMAttr **_retval);
1157 nsresult GetElementsByTagNameNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMNodeList **_retval);
1158 nsresult GetElementById(const nsAString *elementId, nsIDOMElement **_retval);
1159 nsresult GetInputEncoding(nsAString *aInputEncoding);
1160 nsresult GetDocumentURI(nsAString *aDocumentURI);
1161 nsresult GetURL(nsAString *aURL);
1162 nsresult AdoptNode(nsIDOMNode *source, nsIDOMNode **_retval);
1163 nsresult CreateRange(nsIDOMRange **_retval);
1164 nsresult CreateNodeIterator(nsIDOMNode *root, uint32_t whatToShow, nsIDOMNodeFilter *filter, uint8_t _argc,
1165 nsIDOMNodeIterator **_retval);
1166 nsresult CreateTreeWalker(nsIDOMNode *root, uint32_t whatToShow, nsIDOMNodeFilter *filter, uint8_t _argc,
1167 nsIDOMTreeWalker **_retval);
1168 cpp_quote("#undef CreateEvent")
1169 nsresult CreateEvent(const nsAString *eventType, nsIDOMEvent **_retval);
1170 nsresult GetDefaultView(nsIDOMWindow **aDefaultView);
1171 nsresult GetCharacterSet(nsAString *aCharacterSet);
1172 nsresult GetDir(nsAString *aDir);
1173 nsresult SetDir(const nsAString *aDir);
1174 nsresult GetLocation(nsIDOMLocation **aLocation);
1175 nsresult GetTitle(nsAString *aTitle);
1176 nsresult SetTitle(const nsAString *aTitle);
1177 nsresult GetReadyState(nsAString *aReadyState);
1178 nsresult GetLastModified(nsAString *aLastModified);
1179 nsresult GetReferrer(nsAString *aReferrer);
1180 nsresult HasFocus(bool *_retval);
1181 nsresult GetActiveElement(nsIDOMElement **aActiveElement);
1182 nsresult GetElementsByClassName(const nsAString *classes, nsIDOMNodeList **_retval);
1183 nsresult GetStyleSheets(nsIDOMStyleSheetList **aStyleSheets);
1184 nsresult GetPreferredStyleSheetSet(nsAString *aPreferredStyleSheetSet);
1185 nsresult GetSelectedStyleSheetSet(nsAString *aSelectedStyleSheetSet);
1186 nsresult SetSelectedStyleSheetSet(const nsAString *aSelectedStyleSheetSet);
1187 nsresult GetLastStyleSheetSet(nsAString *aLastStyleSheetSet);
1188 nsresult GetStyleSheetSets(nsIDOMDOMStringList **aStyleSheetSets);
1189 nsresult EnableStyleSheetsForSet(const nsAString *name);
1190 nsresult ElementFromPoint(float x, float y, nsIDOMElement **_retval);
1191 nsresult GetContentType(nsAString *aContentType);
1192 nsresult GetMozSyntheticDocument(bool *aMozSyntheticDocument);
1193 nsresult GetCurrentScript(nsIDOMElement **aCurrentScript);
1194 nsresult ReleaseCapture();
1195 nsresult MozSetImageElement(const nsAString *aImageElementId, nsIDOMElement *aImageElement);
1196 nsresult GetMozFullScreenElement(nsIDOMElement **aMozFullScreenElement);
1197 nsresult MozCancelFullScreen();
1198 nsresult GetMozFullScreen(bool *aMozFullScreen);
1199 nsresult GetMozFullScreenEnabled(bool *aMozFullScreenEnabled);
1200 nsresult GetMozPointerLockElement(nsIDOMElement **aMozPointerLockElement);
1201 nsresult CaretPositionFromPoint(float x, float y, nsISupports **_retval);
1202 nsresult MozExitPointerLock();
1203 nsresult GetOnreadystatechange(JSContext* cx, jsval aOnreadystatechange);
1204 nsresult SetOnreadystatechange(JSContext* cx, const jsval *aOnreadystatechange);
1205 nsresult GetOnmouseenter(JSContext* cx, jsval *aOnmouseenter);
1206 nsresult SetOnmouseenter(JSContext* cx, const jsval *aOnmouseenter);
1207 nsresult GetOnmouseleave(JSContext* cx, jsval *aOnmouseleave) = 0;
1208 nsresult SetOnmouseleave(JSContext* cx, const jsval *aOnmouseleave);
1209 nsresult GetHidden(bool *aHidden);
1210 nsresult GetMozHidden(bool *aMozHidden);
1211 nsresult GetVisibilityState(nsAString *aVisibilityState);
1212 nsresult GetMozVisibilityState(nsAString *aMozVisibilityState);
1213 nsresult GetCompatMode(nsAString *aCompatMode);
1214 }
1215
1216 [
1217 object,
1218 uuid(3f8666a9-76f0-4733-ae11-4aea8753062d),
1219 local
1220 ]
1221 interface nsIDOMHTMLDocument : nsIDOMDocument
1222 {
1223 nsresult GetDomain(nsAString *aDomain);
1224 nsresult SetDomain(const nsAString *aDomain);
1225 nsresult GetCookie(nsAString *aCookie);
1226 nsresult SetCookie(const nsAString *aCookie);
1227 nsresult GetHead(nsIDOMHTMLHeadElement **aHead);
1228 nsresult GetBody(nsIDOMHTMLElement **aBody);
1229 nsresult SetBody(nsIDOMHTMLElement *aBody);
1230 nsresult GetImages(nsIDOMHTMLCollection **aImages);
1231 nsresult GetEmbeds(nsIDOMHTMLCollection **aEmbeds);
1232 nsresult GetPlugins(nsIDOMHTMLCollection **aPlugins);
1233 nsresult GetLinks(nsIDOMHTMLCollection **aLinks);
1234 nsresult GetForms(nsIDOMHTMLCollection **aForms);
1235 nsresult GetScripts(nsIDOMHTMLCollection **aScripts);
1236 nsresult GetElementsByName(const nsAString *elementName, nsIDOMNodeList **_retval);
1237 nsresult GetItems(const nsAString *types, nsIDOMNodeList **_retval);
1238 nsresult Open(const nsAString *aContentTypeOrUrl, const nsAString *aReplaceOrName, const nsAString *aFeatures,
1239 JSContext *cx, uint8_t _argc, nsISupports **_retval);
1240 nsresult Close();
1241 nsresult Write(const nsAString *text, JSContext *cx);
1242 nsresult Writeln(const nsAString *text, JSContext *cx);
1243 nsresult GetDesignMode(nsAString *aDesignMode);
1244 nsresult SetDesignMode(const nsAString *aDesignMode);
1245 nsresult ExecCommand(const nsAString *commandID, bool doShowUI, const nsAString *value, bool *_retval);
1246 nsresult QueryCommandEnabled(const nsAString *commandID, bool *_retval);
1247 nsresult QueryCommandIndeterm(const nsAString *commandID, bool *_retval);
1248 nsresult QueryCommandState(const nsAString *commandID, bool *_retval);
1249 nsresult QueryCommandSupported(const nsAString *commandID, bool *_retval);
1250 nsresult QueryCommandValue(const nsAString *commandID, nsAString *_retval);
1251 nsresult GetFgColor(nsAString *aFgColor);
1252 nsresult SetFgColor(const nsAString *aFgColor);
1253 nsresult GetBgColor(nsAString *aBgColor);
1254 nsresult SetBgColor(const nsAString *aBgColor);
1255 nsresult GetLinkColor(nsAString *aLinkColor);
1256 nsresult SetLinkColor(const nsAString *aLinkColor);
1257 nsresult GetVlinkColor(nsAString *aVlinkColor);
1258 nsresult SetVlinkColor(const nsAString *aVlinkColor);
1259 nsresult GetAlinkColor(nsAString *aAlinkColor);
1260 nsresult SetAlinkColor(const nsAString *aAlinkColor);
1261 nsresult GetAnchors(nsIDOMHTMLCollection **aAnchors);
1262 nsresult GetApplets(nsIDOMHTMLCollection **aApplets);
1263 nsresult Clear();
1264 nsresult GetSelection(nsISelection **_retval);
1265 nsresult CaptureEvents(int32_t eventFlags);
1266 nsresult ReleaseEvents(int32_t eventFlags);
1267 nsresult RouteEvent(nsIDOMEvent *evt);
1268 }
1269
1270 [
1271 object,
1272 uuid(1f94055c-42e7-4a30-96a1-6a804f1c2d1e),
1273 local
1274 ]
1275 interface nsIDOMRange : nsISupports
1276 {
1277 enum {
1278 NS_START_TO_START,
1279 NS_START_TO_END,
1280 NS_END_TO_END,
1281 NS_END_TO_START
1282 };
1283
1284 nsresult GetStartContainer(nsIDOMNode **aStartContainer);
1285 nsresult GetStartOffset(int32_t *aStartOffset);
1286 nsresult GetEndContainer(nsIDOMNode **aEndContainer);
1287 nsresult GetEndOffset(int32_t *aEndOffset);
1288 nsresult GetCollapsed(bool *aCollapsed);
1289 nsresult GetCommonAncestorContainer(nsIDOMNode **aCommonAncestorContainer);
1290 nsresult SetStart(nsIDOMNode *refNode, int32_t offset);
1291 nsresult SetEnd(nsIDOMNode *refNode, int32_t offset);
1292 nsresult SetStartBefore(nsIDOMNode *refNode);
1293 nsresult SetStartAfter(nsIDOMNode *refNode);
1294 nsresult SetEndBefore(nsIDOMNode *refNode);
1295 nsresult SetEndAfter(nsIDOMNode *refNode);
1296 nsresult Collapse(bool toStart);
1297 nsresult SelectNode(nsIDOMNode *refNode);
1298 nsresult SelectNodeContents(nsIDOMNode *refNode);
1299 nsresult CompareBoundaryPoints(uint16_t how, nsIDOMRange *sourceRange, int16_t *_retval);
1300 nsresult DeleteContents();
1301 nsresult ExtractContents(nsIDOMDocumentFragment **_retval);
1302 nsresult CloneContents(nsIDOMDocumentFragment **_retval);
1303 nsresult InsertNode(nsIDOMNode *newNode);
1304 nsresult SurroundContents(nsIDOMNode *newParent);
1305 nsresult CloneRange(nsIDOMRange **_retval);
1306 nsresult ToString(nsAString *_retval);
1307 nsresult Detach();
1308 nsresult CreateContextualFragment([in] const nsAString *fragment, [out] nsIDOMDocumentFragment **_retval);
1309 nsresult IsPointInRange([in] nsIDOMNode *parent, [in] int32_t offset, [out] bool *_retval);
1310 nsresult ComparePoint([in] nsIDOMNode *parent, [in] int32_t offset, [out] int16_t *_retval);
1311 nsresult IntersectsNode(nsIDOMNode *node, bool *_retval);
1312 nsresult GetClientRects(nsIDOMClientRectList **_retval);
1313 nsresult GetBoundingClientRect(nsIDOMClientRect **_retval);
1314 }
1315
1316 [
1317 object,
1318 uuid(12cf5a4d-fffb-4f2f-9cec-c65195661d76),
1319 local
1320 ]
1321 interface nsISelection : nsISupports
1322 {
1323 nsresult GetAnchorNode(nsIDOMNode **aAnchorNode);
1324 nsresult GetAnchorOffset(int32_t *aAnchorOffset);
1325 nsresult GetFocusNode(nsIDOMNode **aFocusNode);
1326 nsresult GetFocusOffset(int32_t *aFocusOffset);
1327 nsresult GetIsCollapsed(bool *aIsCollapsed);
1328 bool /* don't use */ Collapsed();
1329 nsresult GetRangeCount(int32_t *aRangeCount);
1330 nsresult GetRangeAt(int32_t index, nsIDOMRange **_retval);
1331 nsresult Collapse(nsIDOMNode *parentNode, int32_t offset);
1332 nsresult CollapseNative(nsINode *parentNode, int32_t offset);
1333 nsresult Extend(nsIDOMNode *parentNode, int32_t offset);
1334 nsresult ExtendNative(nsINode *parentNode, int32_t offset);
1335 nsresult CollapseToStart();
1336 nsresult CollapseToEnd();
1337 nsresult ContainsNode(nsIDOMNode *node, bool entirelyContained, bool *_retval);
1338 nsresult SelectAllChildren(nsIDOMNode *parentNode);
1339 nsresult AddRange(nsIDOMRange *range);
1340 nsresult RemoveRange(nsIDOMRange *range);
1341 nsresult RemoveAllRanges();
1342 nsresult DeleteFromDocument();
1343 nsresult SelectionLanguageChange(bool langRTL);
1344 nsresult ToString(nsAString *_retval);
1345 nsresult Modify(const nsAString *alter, const nsAString *direction, const nsAString *granularity);
1346 }
1347
1348 [
1349 object,
1350 uuid(a6cf906f-15b3-11d2-932e-00805f8add32),
1351 local
1352 ]
1353 interface nsIDOMWindowCollection : nsISupports
1354 {
1355 nsresult GetLength(uint32_t *aLength);
1356 nsresult Item(uint32_t index, nsIDOMWindow **_retval);
1357 nsresult NamedItem(const nsAString *name, nsIDOMWindow **_retval);
1358 }
1359
1360 [
1361 object,
1362 uuid(39cb59d4-fba9-48a9-b70b-570a7ec2ebfa),
1363 local
1364 ]
1365 interface nsIDOMWindow : nsISupports
1366 {
1367 nsresult GetWindow(nsIDOMWindow **aWindow);
1368 nsresult GetSelf(nsIDOMWindow **aSelf);
1369 nsresult GetDocument(nsIDOMDocument **aDocument);
1370 nsresult GetName(nsAString *aName);
1371 nsresult SetName(const nsAString *aName);
1372 nsresult GetLocation(nsIDOMLocation **aLocation);
1373 nsresult GetHistory(nsIDOMHistory **aHistory);
1374 nsresult GetLocationbar(nsIDOMBarProp **aLocationbar);
1375 nsresult GetMenubar(nsIDOMBarProp **aMenubar);
1376 nsresult GetPersonalbar(nsIDOMBarProp **aPersonalbar);
1377 nsresult GetScrollbars(nsIDOMBarProp **aScrollbars);
1378 nsresult GetStatusbar(nsIDOMBarProp **aStatusbar);
1379 nsresult GetToolbar(nsIDOMBarProp **aToolbar);
1380 nsresult GetStatus(nsAString *aStatus);
1381 nsresult SetStatus(const nsAString *aStatus);
1382 nsresult Close();
1383 nsresult Stop();
1384 nsresult Focus();
1385 nsresult Blur();
1386 nsresult GetLength(uint32_t *aLength);
1387 nsresult GetScriptableTop(nsIDOMWindow **aTop);
1388 nsresult GetRealTop(nsIDOMWindow **aTop);
1389 nsresult GetScriptableParent(nsIDOMWindow **aParent);
1390 nsresult GetRealParent(nsIDOMWindow **aParent);
1391 nsresult GetOpener(nsIDOMWindow **aOpener);
1392 nsresult SetOpener(nsIDOMWindow *aOpener);
1393 nsresult GetScriptableFrameElement(nsIDOMElement **aFrameElement);
1394 nsresult GetRealFrameElement(nsIDOMElement **aFrameElement);
1395 nsresult GetNavigator(nsIDOMNavigator **aNavigator);
1396 nsresult GetApplicationCache(nsIDOMOfflineResourceList **aApplicationCache);
1397 nsresult Alert(const nsAString *text);
1398 nsresult Confirm(const nsAString *text, bool *_retval);
1399 nsresult Prompt(const nsAString *aMessage, const nsAString *aInitial, nsAString *_retval);
1400 nsresult Print();
1401 nsresult ShowModalDialog(const nsAString *aURI, nsIVariant *aArgs, const nsAString *aOptions, nsIVariant **_retval);
1402 nsresult PostMessageMoz(const long /*jsval*/ *message, const nsAString *targetOrigin, const /*JS::Value*/ void *transfer, JSContext *cx);
1403 nsresult Atob(const nsAString *aAsciiString, nsAString *_retval);
1404 nsresult Btoa(const nsAString *aBase64Data, nsAString *_retval);
1405 nsresult GetSessionStorage(nsIDOMStorage **aSessionStorage);
1406 nsresult GetLocalStorage(nsIDOMStorage **aLocalStorage);
1407 nsresult GetSelection(nsISelection **_retval);
1408 nsresult MatchMedia(const nsAString *media_query_list, nsIDOMMediaQueryList **_retval);
1409 nsresult GetScreen(nsIDOMScreen **aScreen);
1410 nsresult GetInnerWidth(int32_t *aInnerWidth);
1411 nsresult SetInnerWidth(int32_t aInnerWidth);
1412 nsresult GetInnerHeight(int32_t *aInnerHeight);
1413 nsresult SetInnerHeight(int32_t aInnerHeight);
1414 nsresult GetScrollX(int32_t *aScrollX);
1415 nsresult GetPageXOffset(int32_t *aPageXOffset);
1416 nsresult GetScrollY(int32_t *aScrollY);
1417 nsresult GetPageYOffset(int32_t *aPageYOffset);
1418 nsresult Scroll(int32_t xScroll, int32_t yScroll);
1419 nsresult ScrollTo(int32_t xScroll, int32_t yScroll);
1420 nsresult ScrollBy(int32_t xScrollDif, int32_t yScrollDif);
1421 nsresult GetScreenX(int32_t *aScreenX);
1422 nsresult SetScreenX(int32_t aScreenX);
1423 nsresult GetScreenY(int32_t *aScreenY);
1424 nsresult SetScreenY(int32_t aScreenY);
1425 nsresult GetOuterWidth(int32_t *aOuterWidth);
1426 nsresult SetOuterWidth(int32_t aOuterWidth);
1427 nsresult GetOuterHeight(int32_t *aOuterHeight);
1428 nsresult SetOuterHeight(int32_t aOuterHeight);
1429 nsresult GetComputedStyle(nsIDOMElement *elt, const nsAString *pseudoElt, nsIDOMCSSStyleDeclaration **_retval);
1430 nsresult GetDefaultComputedStyle(nsIDOMElement *elt, const nsAString *pseudoElt, nsIDOMCSSStyleDeclaration **_retval);
1431 nsresult GetWindowRoot(nsIDOMEventTarget **aWindowRoot);
1432 nsresult GetFrames(nsIDOMWindowCollection **aFrames);
1433 nsresult GetTextZoom(float *aTextZoom);
1434 nsresult SetTextZoom(float aTextZoom);
1435 nsresult ScrollByLines(int32_t numLines);
1436 nsresult ScrollByPages(int32_t numPages);
1437 nsresult SizeToContent();
1438 nsresult GetContent(nsIDOMWindow **aContent);
1439 nsresult GetPrompter(nsIPrompt **aPrompter);
1440 nsresult GetClosed(bool *aClosed);
1441 nsresult GetCrypto(nsIDOMCrypto **aCrypto);
1442 nsresult GetPkcs11(nsIDOMPkcs11 **aPkcs11);
1443 nsresult GetControllers(nsIControllers **aControllers);
1444 nsresult GetDefaultStatus(nsAString *aDefaultStatus);
1445 nsresult SetDefaultStatus(const nsAString *aDefaultStatus);
1446 nsresult GetMozInnerScreenX(float *aMozInnerScreenX);
1447 nsresult GetMozInnerScreenY(float *aMozInnerScreenY);
1448 nsresult GetDevicePixelRatio(float *aDevicePixelRatio);
1449 nsresult GetScrollMaxX(int32_t *aScrollMaxX);
1450 nsresult GetScrollMaxY(int32_t *aScrollMaxY);
1451 nsresult GetFullScreen(bool *aFullScreen);
1452 nsresult SetFullScreen(bool aFullScreen);
1453 nsresult Back();
1454 nsresult Forward();
1455 nsresult Home();
1456 nsresult MoveTo(int32_t xPos, int32_t yPos);
1457 nsresult MoveBy(int32_t xDif, int32_t yDif);
1458 nsresult ResizeTo(int32_t width, int32_t height);
1459 nsresult ResizeBy(int32_t widthDif, int32_t heightDif);
1460 nsresult Open(const nsAString *url, const nsAString *name, const nsAString *options, nsIDOMWindow **_retval);
1461 nsresult OpenDialog(const nsAString *url, const nsAString *name, const nsAString *options, nsISupports *aExtraArgument,
1462 nsIDOMWindow **_retval);
1463 nsresult UpdateCommands(const nsAString *action);
1464 nsresult Find(const nsAString *str, bool caseSensitive, bool backwards, bool wrapAround, bool wholeWord,
1465 bool searchInFrames, bool showDialog, bool *_retval);
1466 nsresult GetMozPaintCount(uint64_t *aMozPaintCount);
1467 nsresult MozRequestAnimationFrame(nsIFrameRequestCallback *aCallback, int32_t *_retval);
1468 nsresult MozCancelAnimationFrame(int32_t aHandle);
1469 nsresult MozCancelRequestAnimationFrame(int32_t aHandle);
1470 nsresult GetMozAnimationStartTime(int64_t *aMozAnimationStartTime);
1471 nsresult GetOnafterprint(JSContext *cx, jsval *aOnafterprint);
1472 nsresult SetOnafterprint(JSContext *cx, const jsval *aOnafterprint);
1473 nsresult GetOnbeforeprint(JSContext *cx, jsval *aOnbeforeprint);
1474 nsresult SetOnbeforeprint(JSContext *cx, const jsval *aOnbeforeprint);
1475 nsresult GetOnbeforeunload(JSContext *cx, jsval *aOnbeforeunload);
1476 nsresult SetOnbeforeunload(JSContext *cx, const jsval *aOnbeforeunload);
1477 nsresult GetOnhashchange(JSContext *cx, jsval *aOnhashchange);
1478 nsresult SetOnhashchange(JSContext *cx, const jsval *aOnhashchange);
1479 nsresult GetOnmessage(JSContext *cx, jsval *aOnmessage);
1480 nsresult SetOnmessage(JSContext *cx, const jsval *aOnmessage);
1481 nsresult GetOnoffline(JSContext *cx, jsval *aOnoffline);
1482 nsresult SetOnoffline(JSContext *cx, const jsval *aOnoffline);
1483 nsresult GetOnonline(JSContext *cx, jsval *aOnonline);
1484 nsresult SetOnonline(JSContext *cx, const jsval *aOnonline);
1485 nsresult GetOnpopstate(JSContext *cx, jsval *aOnpopstate);
1486 nsresult SetOnpopstate(JSContext *cx, const jsval *aOnpopstate);
1487 nsresult GetOnpagehide(JSContext *cx, jsval *aOnpagehide);
1488 nsresult SetOnpagehide(JSContext *cx, const jsval *aOnpagehide);
1489 nsresult GetOnpageshow(JSContext *cx, jsval *aOnpageshow);
1490 nsresult SetOnpageshow(JSContext *cx, const jsval *aOnpageshow);
1491 nsresult GetOnresize(JSContext *cx, jsval *aOnresize);
1492 nsresult SetOnresize(JSContext *cx, const jsval *aOnresize);
1493 nsresult GetOnunload(JSContext *cx, jsval *aOnunload);
1494 nsresult SetOnunload(JSContext *cx, const jsval *aOnunload);
1495 nsresult GetOndevicemotion(JSContext *cx, jsval *aOndevicemotion);
1496 nsresult SetOndevicemotion(JSContext *cx, const jsval *aOndevicemotion);
1497 nsresult GetOndeviceorientation(JSContext *cx, jsval *aOndeviceorientation);
1498 nsresult SetOndeviceorientation(JSContext *cx, const jsval *aOndeviceorientation);
1499 nsresult GetOndeviceproximity(JSContext* cx, jsval *aOndeviceproximity);
1500 nsresult SetOndeviceproximity(JSContext* cx, const jsval *aOndeviceproximity);
1501 nsresult GetOnuserproximity(JSContext* cx, jsval *aOndeviceproximity);
1502 nsresult SetOnuserproximity(JSContext* cx, const jsval *aOndeviceproximity);
1503 nsresult GetOndevicelight(JSContext* cx, jsval *aOndevicelight);
1504 nsresult SetOndevicelight(JSContext* cx, const jsval *aOndevicelight);
1505 nsresult GetOnmouseenter(JSContext* cx, jsval *aOnmouseenter);
1506 nsresult SetOnmouseenter(JSContext* cx, const jsval *aOnmouseenter);
1507 nsresult GetOnmouseleave(JSContext* cx, jsval *aOnmouseleave);
1508 nsresult SetOnmouseleave(JSContext* cx, const jsval *aOnmouseleave);
1509 }
1510
1511 [
1512 object,
1513 uuid(d8f00c8b-d317-4df2-a9bf-4a1e6f19f945),
1514 local
1515 ]
1516 interface nsIDOMHTMLBodyElement : nsIDOMHTMLElement
1517 {
1518 nsresult GetALink(nsAString *aALink);
1519 nsresult SetALink(const nsAString *aALink);
1520 nsresult GetBackground(nsAString *aBackground);
1521 nsresult SetBackground(const nsAString *aBackground);
1522 nsresult GetBgColor(nsAString *aBgColor);
1523 nsresult SetBgColor(const nsAString *aBgColor);
1524 nsresult GetLink(nsAString *aLink);
1525 nsresult SetLink(const nsAString *aLink);
1526 nsresult GetText(nsAString *aText);
1527 nsresult SetText(const nsAString *aText);
1528 nsresult GetVLink(nsAString *aVLink);
1529 nsresult SetVLink(const nsAString *aVLink);
1530 nsresult GetOnafterprint(JSContext *cx, jsval *aOnafterprint);
1531 nsresult SetOnafterprint(JSContext *cx, const jsval *aOnafterprint);
1532 nsresult GetOnbeforeprint(JSContext *cx, jsval *aOnbeforeprint);
1533 nsresult SetOnbeforeprint(JSContext *cx, const jsval *aOnbeforeprint);
1534 nsresult GetOnbeforeunload(JSContext *cx, jsval *aOnbeforeunload);
1535 nsresult SetOnbeforeunload(JSContext *cx, const jsval *aOnbeforeunload);
1536 nsresult GetOnhashchange(JSContext *cx, jsval *aOnhashchange);
1537 nsresult SetOnhashchange(JSContext *cx, const jsval *aOnhashchange);
1538 nsresult GetOnmessage(JSContext *cx, jsval *aOnmessage);
1539 nsresult SetOnmessage(JSContext *cx, const jsval *aOnmessage);
1540 nsresult GetOnoffline(JSContext *cx, jsval *aOnoffline);
1541 nsresult SetOnoffline(JSContext *cx, const jsval *aOnoffline);
1542 nsresult GetOnonline(JSContext *cx, jsval *aOnonline);
1543 nsresult SetOnonline(JSContext *cx, const jsval *aOnonline);
1544 nsresult GetOnpagehide(JSContext *cx, jsval *aOnpagehide);
1545 nsresult SetOnpagehide(JSContext *cx, const jsval *aOnpagehide);
1546 nsresult GetOnpageshow(JSContext *cx, jsval *aOnpageshow);
1547 nsresult SetOnpageshow(JSContext *cx, const jsval *aOnpageshow);
1548 nsresult GetOnpopstate(JSContext *cx, jsval *aOnpopstate);
1549 nsresult SetOnpopstate(JSContext *cx, const jsval *aOnpopstate);
1550 nsresult GetOnresize(JSContext *cx, jsval *aOnresize);
1551 nsresult SetOnresize(JSContext *cx, const jsval *aOnresize);
1552 nsresult GetOnunload(JSContext *cx, jsval *aOnunload);
1553 nsresult SetOnunload(JSContext *cx, const jsval *aOnunload);
1554 }
1555
1556 [
1557 object,
1558 uuid(59c0dc07-d784-410b-8b5e-c26baf7cb8a6),
1559 local
1560 ]
1561 interface nsIDOMHTMLFormElement : nsIDOMHTMLElement
1562 {
1563 nsresult GetAcceptCharset(nsAString *aAcceptCharset);
1564 nsresult SetAcceptCharset(const nsAString *aAcceptCharset);
1565 nsresult GetAction(nsAString *aAction);
1566 nsresult SetAction(const nsAString *aAction);
1567 nsresult GetAutocomplete(nsAString *aAutocomplete);
1568 nsresult SetAutocomplete(const nsAString *aAutocomplete);
1569 nsresult GetEnctype(nsAString *aEnctype);
1570 nsresult SetEnctype(const nsAString *aEnctype);
1571 nsresult GetEncoding(nsAString *aEncoding);
1572 nsresult SetEncoding(const nsAString *aEncoding);
1573 nsresult GetMethod(nsAString *aMethod);
1574 nsresult SetMethod(const nsAString *aMethod);
1575 nsresult GetName(nsAString *aName);
1576 nsresult SetName(const nsAString *aName);
1577 nsresult GetNoValidate(bool *aNoValidate);
1578 nsresult SetNoValidate(bool aNoValidate);
1579 nsresult GetTarget(nsAString *aTarget);
1580 nsresult SetTarget(const nsAString *aTarget);
1581 nsresult GetElements(nsIDOMHTMLCollection **aElements);
1582 nsresult GetLength(int32_t *aLength);
1583 nsresult Submit();
1584 nsresult Reset();
1585 nsresult CheckValidity(bool *_retval);
1586 }
1587
1588 [
1589 object,
1590 uuid(83984fd0-b0b2-11e1-afa6-0800200c9a66),
1591 local
1592 ]
1593 interface nsIDOMHTMLInputElement : nsIDOMHTMLElement
1594 {
1595 nsresult GetAccept(nsAString *aAccept);
1596 nsresult SetAccept(const nsAString *aAccept);
1597 nsresult GetAlt(nsAString *aAlt);
1598 nsresult SetAlt(const nsAString *aAlt);
1599 nsresult GetAutocomplete(nsAString *aAutocomplete);
1600 nsresult SetAutocomplete(const nsAString *aAutocomplete);
1601 nsresult GetAutofocus(bool *aAutofocus);
1602 nsresult SetAutofocus(bool aAutofocus);
1603 nsresult GetDefaultChecked(bool *aDefaultChecked);
1604 nsresult SetDefaultChecked(bool aDefaultChecked);
1605 nsresult GetChecked(bool *aChecked);
1606 nsresult SetChecked(bool aChecked);
1607 nsresult GetDisabled(bool *aDisabled);
1608 nsresult SetDisabled(bool aDisabled);
1609 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
1610 nsresult GetFormAction(nsAString *aFormAction);
1611 nsresult SetFormAction(const nsAString *aFormAction);
1612 nsresult GetFormEnctype(nsAString *aFormEnctype);
1613 nsresult SetFormEnctype(const nsAString *aFormEnctype);
1614 nsresult GetFormMethod(nsAString *aFormMethod);
1615 nsresult SetFormMethod(const nsAString *aFormMethod);
1616 nsresult GetFormNoValidate(bool *aFormNoValidate);
1617 nsresult SetFormNoValidate(bool aFormNoValidate);
1618 nsresult GetFormTarget(nsAString *aFormTarget);
1619 nsresult SetFormTarget(const nsAString *aFormTarget);
1620 nsresult GetFiles(nsIDOMFileList **aFiles);
1621 nsresult GetHeight(uint32_t *aHeight);
1622 nsresult SetHeight(uint32_t aHeight);
1623 nsresult GetIndeterminate(bool *aIndeterminate);
1624 nsresult SetIndeterminate(bool aIndeterminate);
1625 nsresult GetInputmode(nsAString *aInputmode);
1626 nsresult SetInputmode(const nsAString *aInputmode);
1627 nsresult GetList(nsIDOMHTMLElement **aList);
1628 nsresult GetMax(nsAString *aMax);
1629 nsresult SetMax(const nsAString *aMax);
1630 nsresult GetMaxLength(int32_t *aMaxLength);
1631 nsresult SetMaxLength(int32_t aMaxLength);
1632 nsresult GetMin(nsAString *aMin);
1633 nsresult SetMin(const nsAString *aMin);
1634 nsresult GetMultiple(bool *aMultiple);
1635 nsresult SetMultiple(bool aMultiple);
1636 nsresult GetName(nsAString *aName);
1637 nsresult SetName(const nsAString *aName);
1638 nsresult GetPattern(nsAString *aPattern);
1639 nsresult SetPattern(const nsAString *aPattern);
1640 nsresult GetPlaceholder(nsAString *aPlaceholder);
1641 nsresult SetPlaceholder(const nsAString *aPlaceholder);
1642 nsresult GetReadOnly(bool *aReadOnly);
1643 nsresult SetReadOnly(bool aReadOnly);
1644 nsresult GetRequired(bool *aRequired);
1645 nsresult SetRequired(bool aRequired);
1646 nsresult GetStep(nsAString *aStep);
1647 nsresult SetStep(const nsAString *aStep);
1648 nsresult GetAlign(nsAString *aAlign);
1649 nsresult SetAlign(const nsAString *aAlign);
1650 nsresult GetSize(uint32_t *aSize);
1651 nsresult SetSize(uint32_t aSize);
1652 nsresult GetWidth(uint32_t *aWidth);
1653 nsresult SetWidth(uint32_t aWidth);
1654 nsresult GetSrc(nsAString *aSrc);
1655 nsresult SetSrc(const nsAString *aSrc);
1656 nsresult GetType(nsAString *aType);
1657 nsresult SetType(const nsAString *aType);
1658 nsresult GetDefaultValue(nsAString *aDefaultValue);
1659 nsresult SetDefaultValue(const nsAString *aDefaultValue);
1660 nsresult GetValue(nsAString *aValue);
1661 nsresult SetValue(const nsAString *aValue);
1662 nsresult GetValueAsNumber(double *aValueAsNumber);
1663 nsresult SetValueAsNumber(double aValueAsNumber);
1664 nsresult GetValueAsDate(JSContext* cx, /*JS::Value*/ void *aValueAsDate);
1665 nsresult SetValueAsDate(JSContext* cx, const /*JS::Value*/ void *aValueAsDate);
1666 nsresult StepDown(int32_t n, uint8_t _argc);
1667 nsresult StepUp(int32_t n, uint8_t _argc);
1668 nsresult GetWillValidate(bool *aWillValidate);
1669 nsresult GetValidity(nsIDOMValidityState **aValidity);
1670 nsresult GetValidationMessage(nsAString *aValidationMessage);
1671 nsresult CheckValidity(bool *_retval);
1672 nsresult SetCustomValidity(const nsAString *error);
1673 nsresult Select();
1674 nsresult GetSelectionStart(int32_t *aSelectionStart);
1675 nsresult SetSelectionStart(int32_t aSelectionStart);
1676 nsresult GetSelectionEnd(int32_t *aSelectionEnd);
1677 nsresult SetSelectionEnd(int32_t aSelectionEnd);
1678 nsresult SetSelectionRange(int32_t selectionStart, int32_t selectionEnd, const nsAString *direction);
1679 nsresult GetSelectionDirection(nsAString *aSelectionDirection);
1680 nsresult SetSelectionDirection(const nsAString *aSelectionDirection);
1681 nsresult GetUseMap(nsAString *aUseMap);
1682 nsresult SetUseMap(const nsAString *aUseMap);
1683 nsresult GetControllers(nsIControllers **aControllers);
1684 nsresult GetTextLength(int32_t *aTextLength);
1685 nsresult MozGetFileNameArray(uint32_t *aLength, PRUnichar ***aFileNames);
1686 nsresult MozSetFileNameArray(const PRUnichar **aFileNames, uint32_t aLength);
1687 nsresult MozIsTextField(bool aExcludePassword, bool *_retval);
1688 }
1689
1690 [
1691 object,
1692 uuid(68a5d794-39bf-4b00-aefe-754b9e8f7ec6),
1693 local
1694 ]
1695 interface nsIDOMHTMLOptionElement : nsIDOMHTMLElement
1696 {
1697 nsresult GetDisabled(bool *aDisabled);
1698 nsresult SetDisabled(bool aDisabled);
1699 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
1700 nsresult GetLabel(nsAString *aLabel);
1701 nsresult SetLabel(const nsAString *aLabel);
1702 nsresult GetDefaultSelected(bool *aDefaultSelected);
1703 nsresult SetDefaultSelected(bool aDefaultSelected);
1704 nsresult GetSelected(bool *aSelected);
1705 nsresult SetSelected(bool aSelected);
1706 nsresult GetValue(nsAString *aValue);
1707 nsresult SetValue(const nsAString *aValue);
1708 nsresult GetText(nsAString *aText);
1709 nsresult SetText(const nsAString *aText);
1710 nsresult GetIndex(int32_t *aIndex);
1711 }
1712
1713 [
1714 object,
1715 uuid(8e40d4d7-c204-4192-802a-0b5602e9c669),
1716 local
1717 ]
1718 interface nsIDOMHTMLButtonElement : nsIDOMHTMLElement
1719 {
1720 nsresult GetAutofocus(bool *aAutofocus);
1721 nsresult SetAutofocus(bool aAutofocus);
1722 nsresult GetDisabled(bool *aDisabled);
1723 nsresult SetDisabled(bool aDisabled);
1724 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
1725 nsresult GetFormAction(nsAString *aFormAction);
1726 nsresult SetFormAction(const nsAString *aFormAction);
1727 nsresult GetFormEnctype(nsAString *aFormEnctype);
1728 nsresult SetFormEnctype(const nsAString *aFormEnctype);
1729 nsresult GetFormMethod(nsAString *aFormMethod);
1730 nsresult SetFormMethod(const nsAString *aFormMethod);
1731 nsresult GetFormNoValidate(bool *aFormNoValidate);
1732 nsresult SetFormNoValidate(bool aFormNoValidate);
1733 nsresult GetFormTarget(nsAString *aFormTarget);
1734 nsresult SetFormTarget(const nsAString *aFormTarget);
1735 nsresult GetName(nsAString *aName);
1736 nsresult SetName(const nsAString *aName);
1737 nsresult GetType(nsAString *aType);
1738 nsresult SetType(const nsAString *aType);
1739 nsresult GetValue(nsAString *aValue);
1740 nsresult SetValue(const nsAString *aValue);
1741 nsresult GetWillValidate(bool *aWillValidate);
1742 nsresult GetValidity(nsIDOMValidityState **aValidity);
1743 nsresult GetValidationMessage(nsAString *aValidationMessage);
1744 nsresult CheckValidity(bool *_retval);
1745 nsresult SetCustomValidity(const nsAString *error);
1746 }
1747
1748 [
1749 object,
1750 uuid(4173cc53-30f6-4d12-a770-981ba53164e2),
1751 local
1752 ]
1753 interface nsIDOMHTMLOptionsCollection : nsISupports
1754 {
1755 typedef int nsWrapperCache;
1756
1757 nsresult GetLength(uint32_t *aLength);
1758 nsresult SetLength(uint32_t aLength);
1759 nsresult Item(uint32_t index, nsIDOMNode **_retval);
1760 nsresult NamedItem(const nsAString *name, nsIDOMNode **_retval);
1761 nsresult GetSelectedIndex(int32_t *aSelectedIndex);
1762 nsresult SetSelectedIndex(int32_t aSelectedIndex);
1763 nsresult SetOption(uint32_t index, nsIDOMHTMLOptionElement *option);
1764 nsresult GetSelect(nsIDOMHTMLSelectElement **aSelect);
1765 nsresult Add(nsIDOMHTMLOptionElement *option, nsIVariant *before);
1766 nsresult Remove(int32_t index);
1767 }
1768
1769 [
1770 object,
1771 uuid(e85194cf-56e6-44a6-92d9-0096c9d2536e),
1772 local
1773 ]
1774 interface nsIDOMHTMLSelectElement : nsIDOMHTMLElement
1775 {
1776 nsresult GetAutofocus(bool *aAutofocus);
1777 nsresult SetAutofocus(bool aAutofocus);
1778 nsresult GetDisabled(bool *aDisabled);
1779 nsresult SetDisabled(bool aDisabled);
1780 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
1781 nsresult GetMultiple(bool *aMultiple);
1782 nsresult SetMultiple(bool aMultiple);
1783 nsresult GetName(nsAString *aName);
1784 nsresult SetName(const nsAString *aName);
1785 nsresult GetSize(uint32_t *aSize);
1786 nsresult SetSize(uint32_t aSize);
1787 nsresult GetType(nsAString *aType);
1788 nsresult GetOptions(nsIDOMHTMLOptionsCollection **aOptions);
1789 nsresult GetLength(uint32_t *aLength);
1790 nsresult SetLength(uint32_t aLength);
1791 nsresult Item(uint32_t index, nsIDOMNode **_retval);
1792 nsresult NamedItem(const nsAString *name, nsIDOMNode **_retval);
1793 nsresult Add(nsIDOMHTMLElement *element, nsIVariant *before);
1794 nsresult Remove(int32_t index);
1795 nsresult GetSelectedIndex(int32_t *aSelectedIndex);
1796 nsresult SetSelectedIndex(int32_t aSelectedIndex);
1797 nsresult GetValue(nsAString *aValue);
1798 nsresult SetValue(const nsAString *aValue);
1799 nsresult GetWillValidate(bool *aWillValidate);
1800 nsresult GetValidity(nsIDOMValidityState **aValidity);
1801 nsresult GetValidationMessage(nsAString *aValidationMessage);
1802 nsresult CheckValidity(bool *_retval);
1803 nsresult SetCustomValidity(const nsAString *error);
1804 nsresult GetRequired(bool *aRequired);
1805 nsresult SetRequired(bool aRequired);
1806 }
1807
1808 [
1809 object,
1810 uuid(2a395065-2d92-48c1-ac00-643de9ca681b),
1811 local
1812 ]
1813 interface nsIDOMHTMLTextAreaElement : nsIDOMHTMLElement
1814 {
1815 nsresult GetAutofocus(bool *aAutofocus);
1816 nsresult SetAutofocus(bool aAutofocus);
1817 nsresult GetCols(uint32_t *aCols);
1818 nsresult SetCols(uint32_t aCols);
1819 nsresult GetDisabled(bool *aDisabled);
1820 nsresult SetDisabled(bool aDisabled);
1821 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
1822 nsresult GetMaxLength(int32_t *aMaxLength);
1823 nsresult SetMaxLength(int32_t aMaxLength);
1824 nsresult GetName(nsAString *aName);
1825 nsresult SetName(const nsAString *aName);
1826 nsresult GetPlaceholder(nsAString *aPlaceholder);
1827 nsresult SetPlaceholder(const nsAString *aPlaceholder);
1828 nsresult GetReadOnly(bool *aReadOnly);
1829 nsresult SetReadOnly(bool aReadOnly);
1830 nsresult GetRequired(bool *aRequired);
1831 nsresult SetRequired(bool aRequired);
1832 nsresult GetRows(uint32_t *aRows);
1833 nsresult SetRows(uint32_t aRows);
1834 nsresult GetWrap(nsAString *aWrap);
1835 nsresult SetWrap(const nsAString *aWrap);
1836 nsresult GetType(nsAString *aType);
1837 nsresult GetDefaultValue(nsAString *aDefaultValue);
1838 nsresult SetDefaultValue(const nsAString *aDefaultValue);
1839 nsresult GetValue(nsAString *aValue);
1840 nsresult SetValue(const nsAString *aValue);
1841 nsresult GetTextLength(int32_t *aTextLength);
1842 nsresult GetWillValidate(bool *aWillValidate);
1843 nsresult GetValidity(nsIDOMValidityState **aValidity);
1844 nsresult GetValidationMessage(nsAString *aValidationMessage);
1845 nsresult CheckValidity(bool *_retval);
1846 nsresult SetCustomValidity(const nsAString *error);
1847 nsresult Select();
1848 nsresult GetSelectionStart(int32_t *aSelectionStart);
1849 nsresult SetSelectionStart(int32_t aSelectionStart);
1850 nsresult GetSelectionEnd(int32_t *aSelectionEnd);
1851 nsresult SetSelectionEnd(int32_t aSelectionEnd);
1852 nsresult SetSelectionRange(int32_t selectionStart, int32_t selectionEnd, const nsAString *direction);
1853 nsresult GetSelectionDirection(nsAString *aSelectionDirection);
1854 nsresult SetSelectionDirection(const nsAString *aSelectionDirection);
1855 nsresult GetControllers(nsIControllers **aControllers);
1856 }
1857
1858 [
1859 object,
1860 uuid(e2f548f6-9955-4820-a9e6-3a9fd43c7111),
1861 local
1862 ]
1863 interface nsIDOMHTMLScriptElement : nsIDOMHTMLElement
1864 {
1865 nsresult GetSrc(nsAString *aSrc);
1866 nsresult SetSrc(const nsAString *aSrc);
1867 nsresult GetAsync(bool *aAsync);
1868 nsresult SetAsync(bool aAsync);
1869 nsresult GetDefer(bool *aDefer);
1870 nsresult SetDefer(bool aDefer);
1871 nsresult GetType(nsAString *aType);
1872 nsresult SetType(const nsAString *aType);
1873 nsresult GetCharset(nsAString *aCharset);
1874 nsresult SetCharset(const nsAString *aCharset);
1875 nsresult GetText(nsAString *aText);
1876 nsresult SetText(const nsAString *aText);
1877 nsresult GetHtmlFor(nsAString *aHtmlFor);
1878 nsresult SetHtmlFor(const nsAString *aHtmlFor);
1879 nsresult GetEvent(nsAString *aEvent);
1880 nsresult SetEvent(const nsAString *aEvent);
1881 nsresult GetCrossOrigin(nsAString *aCrossOrigin);
1882 nsresult SetCrossOrigin(const nsAString *aCrossOrigin);
1883 }
1884
1885 [
1886 object,
1887 uuid(76cf0381-19fd-442d-bb18-c794fd8b5c25),
1888 local
1889 ]
1890 interface nsIDOMHTMLImageElement : nsIDOMHTMLElement
1891 {
1892 nsresult GetAlt(nsAString *aAlt);
1893 nsresult SetAlt(const nsAString *aAlt);
1894 nsresult GetSrc(nsAString *aSrc);
1895 nsresult SetSrc(const nsAString *aSrc);
1896 nsresult GetCrossOrigin(nsAString *aCrossOrigin);
1897 nsresult SetCrossOrigin(const nsAString *aCrossOrigin);
1898 nsresult GetUseMap(nsAString *aUseMap);
1899 nsresult SetUseMap(const nsAString *aUseMap);
1900 nsresult GetIsMap(bool *aIsMap);
1901 nsresult SetIsMap(bool aIsMap);
1902 nsresult GetWidth(uint32_t *aWidth);
1903 nsresult SetWidth(uint32_t aWidth);
1904 nsresult GetHeight(uint32_t *aHeight);
1905 nsresult SetHeight(uint32_t aHeight);
1906 nsresult GetNaturalWidth(uint32_t *aNaturalWidth);
1907 nsresult GetNaturalHeight(uint32_t *aNaturalHeight);
1908 nsresult GetComplete(bool *aComplete);
1909 nsresult GetName(nsAString *aName);
1910 nsresult SetName(const nsAString *aName);
1911 nsresult GetAlign(nsAString *aAlign);
1912 nsresult SetAlign(const nsAString *aAlign);
1913 nsresult GetBorder(nsAString *aBorder);
1914 nsresult SetBorder(const nsAString *aBorder);
1915 nsresult GetHspace(int32_t *aHspace);
1916 nsresult SetHspace(int32_t aHspace);
1917 nsresult GetLongDesc(nsAString *aLongDesc);
1918 nsresult SetLongDesc(const nsAString *aLongDesc);
1919 nsresult GetVspace(int32_t *aVspace);
1920 nsresult SetVspace(int32_t aVspace);
1921 nsresult GetLowsrc(nsAString *aLowsrc);
1922 nsresult SetLowsrc(const nsAString *aLowsrc);
1923 nsresult GetX(int32_t *aX);
1924 nsresult GetY(int32_t *aY);
1925 }
1926
1927 [
1928 object,
1929 uuid(1339c36e-23ad-4047-a04c-1702e27c7c83),
1930 local
1931 ]
1932 interface nsIDOMHTMLAnchorElement : nsIDOMHTMLElement
1933 {
1934 nsresult GetHref(nsAString *aHref);
1935 nsresult SetHref(const nsAString *aHref);
1936 nsresult GetTarget(nsAString *aTarget);
1937 nsresult SetTarget(const nsAString *aTarget);
1938 nsresult GetPing(nsAString *aPing);
1939 nsresult SetPing(const nsAString *aPing);
1940 nsresult GetDownload(nsAString *aPing);
1941 nsresult SetDownload(const nsAString *aPing);
1942 nsresult GetRel(nsAString *aRel);
1943 nsresult SetRel(const nsAString *aRel);
1944 nsresult GetHreflang(nsAString *aHreflang);
1945 nsresult SetHreflang(const nsAString *aHreflang);
1946 nsresult GetType(nsAString *aType);
1947 nsresult SetType(const nsAString *aType);
1948 nsresult GetText(nsAString *aText);
1949 nsresult SetText(const nsAString *aText);
1950 nsresult GetProtocol(nsAString *aProtocol);
1951 nsresult SetProtocol(const nsAString *aProtocol);
1952 nsresult GetHost(nsAString *aHost);
1953 nsresult SetHost(const nsAString *aHost);
1954 nsresult GetHostname(nsAString *aHostname);
1955 nsresult SetHostname(const nsAString *aHostname);
1956 nsresult GetPort(nsAString *aPort);
1957 nsresult SetPort(const nsAString *aPort);
1958 nsresult GetPathname(nsAString *aPathname);
1959 nsresult SetPathname(const nsAString *aPathname);
1960 nsresult GetSearch(nsAString *aSearch);
1961 nsresult SetSearch(const nsAString *aSearch);
1962 nsresult GetHash(nsAString *aHash);
1963 nsresult SetHash(const nsAString *aHash);
1964 nsresult GetCharset(nsAString *aCharset);
1965 nsresult SetCharset(const nsAString *aCharset);
1966 nsresult GetCoords(nsAString *aCoords);
1967 nsresult SetCoords(const nsAString *aCoords);
1968 nsresult GetName(nsAString *aName);
1969 nsresult SetName(const nsAString *aName);
1970 nsresult GetRev(nsAString *aRev);
1971 nsresult SetRev(const nsAString *aRev);
1972 nsresult GetShape(nsAString *aShape);
1973 nsresult SetShape(const nsAString *aShape);
1974 nsresult ToString(nsAString *_retval);
1975 }
1976
1977 [
1978 object,
1979 uuid(5b639ece-7b49-4507-9d38-550beb71955b),
1980 local
1981 ]
1982 interface nsIDOMHTMLLinkElement : nsIDOMHTMLElement
1983 {
1984 nsresult GetDisabled(bool *aDisabled);
1985 nsresult SetDisabled(bool aDisabled);
1986 nsresult GetCharset(nsAString *aCharset);
1987 nsresult SetCharset(const nsAString *aCharset);
1988 nsresult GetHref(nsAString *aHref);
1989 nsresult SetHref(const nsAString *aHref);
1990 nsresult GetHreflang(nsAString *aHreflang);
1991 nsresult SetHreflang(const nsAString *aHreflang);
1992 nsresult GetMedia(nsAString *aMedia);
1993 nsresult SetMedia(const nsAString *aMedia);
1994 nsresult GetRel(nsAString *aRel);
1995 nsresult SetRel(const nsAString *aRel);
1996 nsresult GetRev(nsAString *aRev);
1997 nsresult SetRev(const nsAString *aRev);
1998 nsresult GetTarget(nsAString *aTarget);
1999 nsresult SetTarget(const nsAString *aTarget);
2000 nsresult GetType(nsAString *aType);
2001 nsresult SetType(const nsAString *aType);
2002 nsresult GetCrossOrigin(nsAString *aCrossOrigin);
2003 nsresult SetCrossOrigin(const nsAString *aCrossOrigin);
2004 }
2005
2006 [
2007 object,
2008 uuid(ae50de74-bc26-402e-85dc-a980f506b655),
2009 local
2010 ]
2011 interface nsIDOMHTMLTableElement : nsIDOMHTMLElement
2012 {
2013 nsresult GetCaption(nsIDOMHTMLTableCaptionElement **aCaption);
2014 nsresult SetCaption(nsIDOMHTMLTableCaptionElement *aCaption);
2015 nsresult GetTHead(nsIDOMHTMLTableSectionElement **aTHead);
2016 nsresult SetTHead(nsIDOMHTMLTableSectionElement *aTHead);
2017 nsresult GetTFoot(nsIDOMHTMLTableSectionElement **aTFoot);
2018 nsresult SetTFoot(nsIDOMHTMLTableSectionElement *aTFoot);
2019 nsresult GetRows(nsIDOMHTMLCollection **aRows);
2020 nsresult GetTBodies(nsIDOMHTMLCollection **aTBodies);
2021 nsresult GetAlign(nsAString *aAlign);
2022 nsresult SetAlign(const nsAString *aAlign);
2023 nsresult GetBgColor(nsAString *aBgColor);
2024 nsresult SetBgColor(const nsAString *aBgColor);
2025 nsresult GetBorder(nsAString *aBorder);
2026 nsresult SetBorder(const nsAString *aBorder);
2027 nsresult GetCellPadding(nsAString *aCellPadding);
2028 nsresult SetCellPadding(const nsAString *aCellPadding);
2029 nsresult GetCellSpacing(nsAString *aCellSpacing);
2030 nsresult SetCellSpacing(const nsAString *aCellSpacing);
2031 nsresult GetFrame(nsAString *aFrame);
2032 nsresult SetFrame(const nsAString *aFrame);
2033 nsresult GetRules(nsAString *aRules);
2034 nsresult SetRules(const nsAString *aRules);
2035 nsresult GetSummary(nsAString *aSummary);
2036 nsresult SetSummary(const nsAString *aSummary);
2037 nsresult GetWidth(nsAString *aWidth);
2038 nsresult SetWidth(const nsAString *aWidth);
2039 nsresult CreateTHead(nsIDOMHTMLElement **_retval);
2040 nsresult DeleteTHead();
2041 nsresult CreateTFoot(nsIDOMHTMLElement **_retval);
2042 nsresult DeleteTFoot();
2043 nsresult CreateCaption(nsIDOMHTMLElement **_retval);
2044 nsresult DeleteCaption();
2045 nsresult InsertRow(int32_t index, nsIDOMHTMLElement **_retval);
2046 nsresult DeleteRow(int32_t index);
2047 }
2048
2049 [
2050 object,
2051 uuid(0ac4a382-4f97-4143-a3b3-de0a54978c67),
2052 local
2053 ]
2054 interface nsIDOMHTMLTableRowElement : nsIDOMHTMLElement
2055 {
2056 nsresult GetRowIndex(int32_t *aRowIndex);
2057 nsresult GetSectionRowIndex(int32_t *aSectionRowIndex);
2058 nsresult GetCells(nsIDOMHTMLCollection **aCells);
2059 nsresult GetAlign(nsAString *aAlign);
2060 nsresult SetAlign(const nsAString *aAlign);
2061 nsresult GetBgColor(nsAString *aBgColor);
2062 nsresult SetBgColor(const nsAString *aBgColor);
2063 nsresult GetCh(nsAString *aCh);
2064 nsresult SetCh(const nsAString *aCh);
2065 nsresult GetChOff(nsAString *aChOff);
2066 nsresult SetChOff(const nsAString *aChOff);
2067 nsresult GetVAlign(nsAString *aVAlign);
2068 nsresult SetVAlign(const nsAString *aVAlign);
2069 nsresult InsertCell(int32_t index, nsIDOMHTMLElement **_retval);
2070 nsresult DeleteCell(int32_t index);
2071 }
2072
2073 [
2074 object,
2075 uuid(a7bd1e34-3969-47ae-8c1d-2970132ba925),
2076 local
2077 ]
2078 interface nsIDOMHTMLIFrameElement : nsIDOMHTMLElement
2079 {
2080 nsresult GetAlign(nsAString *aAlign);
2081 nsresult SetAlign(const nsAString *aAlign);
2082 nsresult GetFrameBorder(nsAString *aFrameBorder);
2083 nsresult SetFrameBorder(const nsAString *aFrameBorder);
2084 nsresult GetHeight(nsAString *aHeight);
2085 nsresult SetHeight(const nsAString *aHeight);
2086 nsresult GetLongDesc(nsAString *aLongDesc);
2087 nsresult SetLongDesc(const nsAString *aLongDesc);
2088 nsresult GetMarginHeight(nsAString *aMarginHeight);
2089 nsresult SetMarginHeight(const nsAString *aMarginHeight);
2090 nsresult GetMarginWidth(nsAString *aMarginWidth);
2091 nsresult SetMarginWidth(const nsAString *aMarginWidth);
2092 nsresult GetName(nsAString *aName);
2093 nsresult SetName(const nsAString *aName);
2094 nsresult GetScrolling(nsAString *aScrolling);
2095 nsresult SetScrolling(const nsAString *aScrolling);
2096 nsresult GetSrc(nsAString *aSrc);
2097 nsresult SetSrc(const nsAString *aSrc);
2098 nsresult GetWidth(nsAString *aWidth);
2099 nsresult SetWidth(const nsAString *aWidth);
2100 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2101 nsresult GetContentWindow(nsIDOMWindow **aContentWindow);
2102 nsresult GetSandbox(nsAString *aSandbox);
2103 nsresult SetSandbox(const nsAString *aSandbox);
2104 nsresult GetAllowFullScreen(bool *aAllowFullScreen);
2105 nsresult SetAllowFullScreen(bool aAllowFullScreen);
2106 }
2107
2108 [
2109 object,
2110 uuid(2aa7855a-0667-47c3-af1e-9101002816c1),
2111 local
2112 ]
2113 interface nsIDOMHTMLFrameElement : nsIDOMHTMLElement
2114 {
2115 nsresult GetFrameBorder(nsAString *aFrameBorder);
2116 nsresult SetFrameBorder(const nsAString *aFrameBorder);
2117 nsresult GetLongDesc(nsAString *aLongDesc);
2118 nsresult SetLongDesc(const nsAString *aLongDesc);
2119 nsresult GetMarginHeight(nsAString *aMarginHeight);
2120 nsresult SetMarginHeight(const nsAString *aMarginHeight);
2121 nsresult GetMarginWidth(nsAString *aMarginWidth);
2122 nsresult SetMarginWidth(const nsAString *aMarginWidth);
2123 nsresult GetName(nsAString *aName);
2124 nsresult SetName(const nsAString *aName);
2125 nsresult GetNoResize(bool *aNoResize);
2126 nsresult SetNoResize(bool aNoResize);
2127 nsresult GetScrolling(nsAString *aScrolling);
2128 nsresult SetScrolling(const nsAString *aScrolling);
2129 nsresult GetSrc(nsAString *aSrc);
2130 nsresult SetSrc(const nsAString *aSrc);
2131 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2132 nsresult GetContentWindow(nsIDOMWindow **aContentWindow);
2133 }
2134
2135 [
2136 object,
2137 uuid(a70595dd-68a5-41f5-ab52-73a47d98bd78),
2138 local
2139 ]
2140 interface nsIDOMHTMLObjectElement : nsIDOMHTMLElement
2141 {
2142 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
2143 nsresult GetCode(nsAString *aCode);
2144 nsresult SetCode(const nsAString *aCode);
2145 nsresult GetAlign(nsAString *aAlign);
2146 nsresult SetAlign(const nsAString *aAlign);
2147 nsresult GetArchive(nsAString *aArchive);
2148 nsresult SetArchive(const nsAString *aArchive);
2149 nsresult GetBorder(nsAString *aBorder);
2150 nsresult SetBorder(const nsAString *aBorder);
2151 nsresult GetCodeBase(nsAString *aCodeBase);
2152 nsresult SetCodeBase(const nsAString *aCodeBase);
2153 nsresult GetCodeType(nsAString *aCodeType);
2154 nsresult SetCodeType(const nsAString *aCodeType);
2155 nsresult GetData(nsAString *aData);
2156 nsresult SetData(const nsAString *aData);
2157 nsresult GetDeclare(bool *aDeclare);
2158 nsresult SetDeclare(bool aDeclare);
2159 nsresult GetHeight(nsAString *aHeight);
2160 nsresult SetHeight(const nsAString *aHeight);
2161 nsresult GetHspace(int32_t *aHspace);
2162 nsresult SetHspace(int32_t aHspace);
2163 nsresult GetName(nsAString *aName);
2164 nsresult SetName(const nsAString *aName);
2165 nsresult GetStandby(nsAString *aStandby);
2166 nsresult SetStandby(const nsAString *aStandby);
2167 nsresult GetType(nsAString *aType);
2168 nsresult SetType(const nsAString *aType);
2169 nsresult GetUseMap(nsAString *aUseMap);
2170 nsresult SetUseMap(const nsAString *aUseMap);
2171 nsresult GetVspace(int32_t *aVspace);
2172 nsresult SetVspace(int32_t aVspace);
2173 nsresult GetWidth(nsAString *aWidth);
2174 nsresult SetWidth(const nsAString *aWidth);
2175 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2176 nsresult GetWillValidate(bool *aWillValidate);
2177 nsresult GetValidity(nsIDOMValidityState **aValidity);
2178 nsresult GetValidationMessage(nsAString *aValidationMessage);
2179 nsresult CheckValidity(bool *_retval);
2180 nsresult SetCustomValidity(const nsAString *error);
2181 }
2182
2183 [
2184 object,
2185 uuid(1fbec0f8-c7cF-4dc8-84be-247985a65e07),
2186 local
2187 ]
2188 interface nsIDOMHTMLParamElement : nsIDOMHTMLElement
2189 {
2190 nsresult GetName(nsAString *aName);
2191 nsresult SetName(const nsAString *aName);
2192 nsresult GetType(nsAString *aType);
2193 nsresult SetType(const nsAString *aType);
2194 nsresult GetValue(nsAString *aValue);
2195 nsresult SetValue(const nsAString *aValue);
2196 nsresult GetValueType(nsAString *aValueType);
2197 nsresult SetValueType(const nsAString *aValueType);
2198 }
2199
2200 [
2201 object,
2202 uuid(f9db1001-faae-46e1-b85f-0a0afb80c5b2),
2203 local
2204 ]
2205 interface nsIDOMHTMLStyleElement : nsIDOMHTMLElement
2206 {
2207 nsresult GetDisabled(bool *aDisabled);
2208 nsresult SetDisabled(bool aDisabled);
2209 nsresult GetMedia(nsAString *aMedia);
2210 nsresult SetMedia(const nsAString *aMedia);
2211 nsresult GetType(nsAString *aType);
2212 nsresult SetType(const nsAString *aType);
2213 nsresult GetScoped(bool *aScoped);
2214 nsresult SetScoped(bool aScoped);
2215 nsresult GetDOMStyleSheet(nsIDOMStyleSheet **aDOMStyleSheet);
2216 }
2217
2218 [
2219 object,
2220 uuid(7cebc153-168a-416c-ba5a-56a8c2ddb2ec),
2221 local
2222 ]
2223 interface nsIDOMNodeSelector : nsISupports
2224 {
2225 nsresult QuerySelector(const nsAString *selectors, nsIDOMElement **_retval);
2226 nsresult QuerySelectorAll(const nsAString *selectors, nsIDOMNodeList **_retval);
2227 }
2228
2229 [
2230 object,
2231 uuid(94928ab3-8b63-11d3-989d-001083010e9b),
2232 local
2233 ]
2234 interface nsIURIContentListener : nsISupports
2235 {
2236 nsresult OnStartURIOpen(nsIURI *aURI, bool *_retval);
2237 nsresult DoContent(const char *aContentType, bool aIsContentPreferred, nsIRequest *aRequest,
2238 nsIStreamListener **aContentHandler, bool *_retval);
2239 nsresult IsPreferred(const char *aContentType, char **aDesiredContentType, bool *_retval);
2240 nsresult CanHandleContent(const char *aContentType, bool aIsContentPreferred,
2241 char **aDesiredContentType, bool *_retval);
2242 nsresult GetLoadCookie(nsISupports **aLoadCookie);
2243 nsresult SetLoadCookie(nsISupports *aLoadCookie);
2244 nsresult GetParentContentListener(nsIURIContentListener **aParentContentListener);
2245 nsresult SetParentContentListener(nsIURIContentListener *aParentContentListener);
2246 }
2247
2248 [
2249 object,
2250 uuid(44b78386-1dd2-11b2-9ad2-e4eee2ca1916),
2251 local
2252 ]
2253 interface nsITooltipListener : nsISupports
2254 {
2255 nsresult OnShowTooltip(int32_t aXCoords, int32_t aYCoords, const PRUnichar *aTipText);
2256 nsresult OnHideTooltip();
2257 }
2258
2259 [
2260 object,
2261 uuid(33e9d001-caab-4ba9-8961-54902f197202),
2262 local
2263 ]
2264 interface nsIWebBrowser : nsISupports
2265 {
2266 nsresult AddWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
2267 nsresult RemoveWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
2268 nsresult GetContainerWindow(nsIWebBrowserChrome **aContainerWindow);
2269 nsresult SetContainerWindow(nsIWebBrowserChrome *aContainerWindow);
2270 nsresult GetParentURIContentListener(nsIURIContentListener **aParentURIContentListener);
2271 nsresult SetParentURIContentListener(nsIURIContentListener *aParentURIContentListener);
2272 nsresult GetContentDOMWindow(nsIDOMWindow **aContentDOMWindow);
2273 nsresult GetIsActive(bool *aIsActive);
2274 nsresult SetIsActive(bool aIsActive);
2275 }
2276
2277 cpp_quote("#define SETUP_ALLOW_JAVASCRIPT 2")
2278 cpp_quote("#define SETUP_IS_CHROME_WRAPPER 7")
2279 cpp_quote("#define SETUP_DISABLE_NOSCRIPT 16")
2280
2281 [
2282 object,
2283 uuid(f15398a0-8018-11d3-af70-00a024ffc08c),
2284 local
2285 ]
2286 interface nsIWebBrowserSetup : nsISupports
2287 {
2288 nsresult SetProperty(uint32_t aId, uint32_t aValue);
2289 }
2290
2291 typedef void* nativeWindow;
2292
2293 [
2294 object,
2295 uuid(9da319f3-eee6-4504-81a5-6A19cf6215bf),
2296 local
2297 ]
2298 interface nsIBaseWindow : nsISupports
2299 {
2300 nsresult InitWindow(nativeWindow parentNativeWindow, nsIWidget *parentWidget, int32_t x,
2301 int32_t y, int32_t cx, int32_t cy);
2302 nsresult Create();
2303 nsresult Destroy();
2304 nsresult SetPosition(int32_t x, int32_t y);
2305 nsresult GetPosition(int32_t *x, int32_t *y);
2306 nsresult SetSize(int32_t cx, int32_t cy, bool fRepaint);
2307 nsresult GetSize(int32_t *cx, int32_t *cy);
2308 nsresult SetPositionAndSize(int32_t x, int32_t y, int32_t cx, int32_t cy, bool fRepaint);
2309 nsresult GetPositionAndSize(int32_t *x, int32_t *y, int32_t *cx, int32_t *cy);
2310 nsresult Repaint(bool force);
2311 nsresult GetParentWidget(nsIWidget **aParentWidget);
2312 nsresult SetParentWidget(nsIWidget *aParentWidget);
2313 nsresult GetParentNativeWindow(nativeWindow *aParentNativeWindow);
2314 nsresult SetParentNativeWindow(nativeWindow aParentNativeWindow);
2315 nsresult GetNativeHandle(nsAString *aNativeHandle);
2316 nsresult GetVisibility(bool *aVisibility);
2317 nsresult SetVisibility(bool aVisibility);
2318 nsresult GetEnabled(bool *aEnabled);
2319 nsresult SetEnabled(bool aEnabled);
2320 nsresult GetMainWidget(nsIWidget **aMainWidget);
2321 nsresult GetUnscaledDevicePixelsPerCSSPixel(double *aUnscaledDevicePixelsPerCSSPixel);
2322 nsresult SetFocus();
2323 nsresult GetTitle(PRUnichar **aTitle);
2324 nsresult SetTitle(const PRUnichar *aTitle);
2325 }
2326
2327 [
2328 object,
2329 uuid(28404f7e-0f17-4dc3-a21a-2074d8659b02),
2330 local
2331 ]
2332 interface nsIWebNavigation : nsISupports
2333 {
2334 const UINT LOAD_FLAGS_MASK = 0xffff;
2335 const UINT LOAD_FLAGS_NONE = 0;
2336 const UINT LOAD_FLAGS_IS_REFRESH = 0x0010;
2337 const UINT LOAD_FLAGS_IS_LINK = 0x0020;
2338 const UINT LOAD_FLAGS_BYPASS_HISTORY = 0x0040;
2339 const UINT LOAD_FLAGS_REPLACE_HISTORY = 0x0080;
2340 const UINT LOAD_FLAGS_BYPASS_CACHE = 0x0100;
2341 const UINT LOAD_FLAGS_BYPASS_PROXY = 0x0200;
2342 const UINT LOAD_FLAGS_CHARSET_CHANGE = 0x0400;
2343 const UINT LOAD_FLAGS_STOP_CONTENT = 0x0800;
2344 const UINT LOAD_FLAGS_FROM_EXTERNAL = 0x1000;
2345 const UINT LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP = 0x2000;
2346 const UINT LOAD_FLAGS_FIRST_LOAD = 0x4000;
2347 const UINT LOAD_FLAGS_ALLOW_POPUPS = 0x8000;
2348 const UINT LOAD_FLAGS_BYPASS_CLASSIFIER = 0x10000;
2349 const UINT LOAD_FLAGS_FORCE_ALLOW_COOKIES = 0x20000;
2350 const UINT LOAD_FLAGS_DISALLOW_INHERIT_OWNER = 0x40000;
2351 const UINT LOAD_FLAGS_URI_IS_UTF8 = 0x80000;
2352
2353 nsresult GetCanGoBack(bool *aCanGoBack);
2354 nsresult GetCanGoForward(bool *aCanGoForward);
2355 nsresult GoBack();
2356 nsresult GoForward();
2357 nsresult GotoIndex(int32_t index);
2358 nsresult LoadURI(const PRUnichar *aURI, uint32_t aLoadFlags, nsIURI *aReferrer,
2359 nsIInputStream *aPostData, nsIInputStream *aHeaders);
2360 nsresult Reload(uint32_t aReloadFlags);
2361 nsresult Stop(uint32_t aStopFlags);
2362 nsresult GetDocument(nsIDOMDocument **aDocument);
2363 nsresult GetCurrentURI(nsIURI **aCurrentURI);
2364 nsresult GetReferringURI(nsIURI **aReferringURI);
2365 nsresult GetSessionHistory(nsISHistory **aSessionHistory);
2366 nsresult SetSessionHistory(nsISHistory *aSessionHistory);
2367 }
2368
2369 [
2370 object,
2371 uuid(570f39d0-efd0-11d3-b093-00a024ffc08c),
2372 local
2373 ]
2374 interface nsIWebProgress : nsISupports
2375 {
2376 nsresult AddProgressListener(nsIWebProgressListener *aListener, uint32_t aNotifyMask);
2377 nsresult RemoveProgressListener(nsIWebProgressListener *aListener);
2378 nsresult GetDOMWindow(nsIDOMWindow **aDOMWindow);
2379 nsresult GetIsLoadingDocument(bool *aIsLoadingDocument);
2380 }
2381
2382 [
2383 object,
2384 uuid(a65cfa37-b381-4fe9-81b7-db08853f54ad),
2385 local
2386 ]
2387 interface nsIPrintSettings : nsISupports
2388 {
2389 typedef struct { char dummy; } nsIntMargin;
2390
2391 nsresult SetPrintOptions(int32_t aType, bool aTurnOnOff);
2392 nsresult GetPrintOptions(int32_t aType, bool *_retval);
2393 nsresult GetPrintOptionsBits(int32_t *_retval);
2394 nsresult GetEffectivePageSize(double *aWidth, double *aHeight);
2395 nsresult Clone(nsIPrintSettings **_retval);
2396 nsresult Assign(nsIPrintSettings *aPS);
2397 nsresult GetPrintSession(nsIPrintSession **aPrintSession);
2398 nsresult SetPrintSession(nsIPrintSession *aPrintSession);
2399 nsresult GetStartPageRange(int32_t *aStartPageRange);
2400 nsresult SetStartPageRange(int32_t aStartPageRange);
2401 nsresult GetEndPageRange(int32_t *aEndPageRange);
2402 nsresult SetEndPageRange(int32_t aEndPageRange);
2403 nsresult GetEdgeTop(double *aEdgeTop);
2404 nsresult SetEdgeTop(double aEdgeTop);
2405 nsresult GetEdgeLeft(double *aEdgeLeft);
2406 nsresult SetEdgeLeft(double aEdgeLeft);
2407 nsresult GetEdgeBottom(double *aEdgeBottom);
2408 nsresult SetEdgeBottom(double aEdgeBottom);
2409 nsresult GetEdgeRight(double *aEdgeRight);
2410 nsresult SetEdgeRight(double aEdgeRight);
2411 nsresult GetMarginTop(double *aMarginTop);
2412 nsresult SetMarginTop(double aMarginTop);
2413 nsresult GetMarginLeft(double *aMarginLeft);
2414 nsresult SetMarginLeft(double aMarginLeft);
2415 nsresult GetMarginBottom(double *aMarginBottom);
2416 nsresult SetMarginBottom(double aMarginBottom);
2417 nsresult GetMarginRight(double *aMarginRight);
2418 nsresult SetMarginRight(double aMarginRight);
2419 nsresult GetUnwriteableMarginTop(double *aUnwriteableMarginTop);
2420 nsresult SetUnwriteableMarginTop(double aUnwriteableMarginTop);
2421 nsresult GetUnwriteableMarginLeft(double *aUnwriteableMarginLeft);
2422 nsresult SetUnwriteableMarginLeft(double aUnwriteableMarginLeft);
2423 nsresult GetUnwriteableMarginBottom(double *aUnwriteableMarginBottom);
2424 nsresult SetUnwriteableMarginBottom(double aUnwriteableMarginBottom);
2425 nsresult GetUnwriteableMarginRight(double *aUnwriteableMarginRight);
2426 nsresult SetUnwriteableMarginRight(double aUnwriteableMarginRight);
2427 nsresult GetScaling(double *aScaling);
2428 nsresult SetScaling(double aScaling);
2429 nsresult GetPrintBGColors(bool *aPrintBGColors);
2430 nsresult SetPrintBGColors(bool aPrintBGColors);
2431 nsresult GetPrintBGImages(bool *aPrintBGImages);
2432 nsresult SetPrintBGImages(bool aPrintBGImages);
2433 nsresult GetPrintRange(int16_t *aPrintRange);
2434 nsresult SetPrintRange(int16_t aPrintRange);
2435 nsresult GetTitle(PRUnichar **aTitle);
2436 nsresult SetTitle(const PRUnichar *aTitle);
2437 nsresult GetDocURL(PRUnichar **aDocURL);
2438 nsresult SetDocURL(const PRUnichar *aDocURL);
2439 nsresult GetHeaderStrLeft(PRUnichar **aHeaderStrLeft);
2440 nsresult SetHeaderStrLeft(const PRUnichar *aHeaderStrLeft);
2441 nsresult GetHeaderStrCenter(PRUnichar **aHeaderStrCenter);
2442 nsresult SetHeaderStrCenter(const PRUnichar *aHeaderStrCenter);
2443 nsresult GetHeaderStrRight(PRUnichar **aHeaderStrRight);
2444 nsresult SetHeaderStrRight(const PRUnichar *aHeaderStrRight);
2445 nsresult GetFooterStrLeft(PRUnichar **aFooterStrLeft);
2446 nsresult SetFooterStrLeft(const PRUnichar *aFooterStrLeft);
2447 nsresult GetFooterStrCenter(PRUnichar **aFooterStrCenter);
2448 nsresult SetFooterStrCenter(const PRUnichar *aFooterStrCenter);
2449 nsresult GetFooterStrRight(PRUnichar **aFooterStrRight);
2450 nsresult SetFooterStrRight(const PRUnichar *aFooterStrRight);
2451 nsresult GetHowToEnableFrameUI(int16_t *aHowToEnableFrameUI);
2452 nsresult SetHowToEnableFrameUI(int16_t aHowToEnableFrameUI);
2453 nsresult GetIsCancelled(bool *aIsCancelled);
2454 nsresult SetIsCancelled(bool aIsCancelled);
2455 nsresult GetPrintFrameTypeUsage(int16_t *aPrintFrameTypeUsage);
2456 nsresult SetPrintFrameTypeUsage(int16_t aPrintFrameTypeUsage);
2457 nsresult GetPrintFrameType(int16_t *aPrintFrameType);
2458 nsresult SetPrintFrameType(int16_t aPrintFrameType);
2459 nsresult GetPrintSilent(bool *aPrintSilent);
2460 nsresult SetPrintSilent(bool aPrintSilent);
2461 nsresult GetShrinkToFit(bool *aShrinkToFit);
2462 nsresult SetShrinkToFit(bool aShrinkToFit);
2463 nsresult GetShowPrintProgress(bool *aShowPrintProgress);
2464 nsresult SetShowPrintProgress(bool aShowPrintProgress);
2465 nsresult GetPaperName(PRUnichar **aPaperName);
2466 nsresult SetPaperName(const PRUnichar *aPaperName);
2467 nsresult GetPaperSizeType(int16_t *aPaperSizeType);
2468 nsresult SetPaperSizeType(int16_t aPaperSizeType);
2469 nsresult GetPaperData(int16_t *aPaperData);
2470 nsresult SetPaperData(int16_t aPaperData);
2471 nsresult GetPaperWidth(double *aPaperWidth);
2472 nsresult SetPaperWidth(double aPaperWidth);
2473 nsresult GetPaperHeight(double *aPaperHeight);
2474 nsresult SetPaperHeight(double aPaperHeight);
2475 nsresult GetPaperSizeUnit(int16_t *aPaperSizeUnit);
2476 nsresult SetPaperSizeUnit(int16_t aPaperSizeUnit);
2477 nsresult GetPlexName(PRUnichar **aPlexName);
2478 nsresult SetPlexName(const PRUnichar *aPlexName);
2479 nsresult GetColorspace(PRUnichar **aColorspace);
2480 nsresult SetColorspace(const PRUnichar *aColorspace);
2481 nsresult GetResolutionName(PRUnichar **aResolutionName);
2482 nsresult SetResolutionName(const PRUnichar aResolutionName);
2483 nsresult GetDownloadFonts(bool *aDownloadFonts);
2484 nsresult SetDownloadFonts(bool aDownloadFonts);
2485 nsresult GetPrintReversed(bool *aPrintReversed);
2486 nsresult SetPrintReversed(bool aPrintReversed);
2487 nsresult GetPrintInColor(bool *aPrintInColor);
2488 nsresult SetPrintInColor(bool aPrintInColor);
2489 nsresult GetOrientation(int32_t *aOrientation);
2490 nsresult SetOrientation(int32_t aOrientation);
2491 nsresult GetPrintCommand(PRUnichar **aPrintCommand);
2492 nsresult SetPrintCommand(const PRUnichar *aPrintCommand);
2493 nsresult GetNumCopies(int32_t *aNumCopies);
2494 nsresult SetNumCopies(int32_t aNumCopies);
2495 nsresult GetPrinterName(PRUnichar **aPrinterName);
2496 nsresult SetPrinterName(const PRUnichar *aPrinterName);
2497 nsresult GetPrintToFile(bool *aPrintToFile);
2498 nsresult SetPrintToFile(bool aPrintToFile);
2499 nsresult GetToFileName(PRUnichar **aToFileName);
2500 nsresult SetToFileName(const PRUnichar *aToFileName);
2501 nsresult GetOutputFormat(int16_t *aOutputFormat);
2502 nsresult SetOutputFormat(int16_t aOutputFormat);
2503 nsresult GetPrintPageDelay(int32_t *aPrintPageDelay);
2504 nsresult SetPrintPageDelay(int32_t aPrintPageDelay);
2505 nsresult GetIsInitializedFromPrinter(bool *aIsInitializedFromPrinter);
2506 nsresult SetIsInitializedFromPrinter(bool aIsInitializedFromPrinter);
2507 nsresult GetIsInitializedFromPrefs(bool *aIsInitializedFromPrefs);
2508 nsresult SetIsInitializedFromPrefs(bool aIsInitializedFromPrefs);
2509 nsresult GetPersistMarginBoxSettings(bool *aPersistMarginBoxSettings);
2510 nsresult SetPersistMarginBoxSettings(bool aPersistMarginBoxSettings);
2511 nsresult SetMarginInTwips(nsIntMargin *aMargin);
2512 nsresult SetEdgeInTwips(nsIntMargin *aEdge);
2513 nsresult GetMarginInTwips(nsIntMargin *aMargin);
2514 nsresult GetEdgeInTwips(nsIntMargin *aEdge);
2515 nsresult SetupSilentPrinting();
2516 nsresult SetUnwriteableMarginInTwips(nsIntMargin *aEdge);
2517 nsresult GetUnwriteableMarginInTwips(nsIntMargin *aEdge);
2518 nsresult GetPageRanges(void * /*nsTArray<int32_t>&*/ aPages);
2519 }
2520
2521 [
2522 object,
2523 uuid(9a7ca4b0-fbba-11d4-a869-00105a183419),
2524 local
2525 ]
2526 interface nsIWebBrowserPrint : nsISupports
2527 {
2528 nsresult GetGlobalPrintSettings(nsIPrintSettings **aGlobalPrintSettings);
2529 nsresult GetCurrentPrintSettings(nsIPrintSettings **aCurrentPrintSettings);
2530 nsresult GetCurrentChildDOMWindow(nsIDOMWindow **aCurrentChildDOMWindow);
2531 nsresult GetDoingPrint(bool *aDoingPrint);
2532 nsresult GetDoingPrintPreview(bool *aDoingPrintPreview);
2533 nsresult GetIsFramesetDocument(bool *aIsFramesetDocument);
2534 nsresult GetIsFramesetFrameSelected(bool *aIsFramesetFrameSelected);
2535 nsresult GetIsIFrameSelected(bool *aIsIFrameSelected);
2536 nsresult GetIsRangeSelection(bool *aIsRangeSelection);
2537 nsresult GetPrintPreviewNumPages(int32_t *aPrintPreviewNumPages);
2538 nsresult Print(nsIPrintSettings *aThePrintSettings, nsIWebProgressListener *aWPListener);
2539 nsresult PrintPreview(nsIPrintSettings *aThePrintSettings, nsIDOMWindow *aChildDOMWin,
2540 nsIWebProgressListener *aWPListener);
2541 nsresult PrintPreviewNavigate(int16_t aNavType, int32_t aPageNum);
2542 nsresult Cancel();
2543 nsresult EnumerateDocumentNames(uint32_t *aCount, PRUnichar ***aResult);
2544 nsresult ExitPrintPreview();
2545 }
2546
2547 [
2548 object,
2549 uuid(919e792a-6490-40b8-bba5-f9e9ad5640c8),
2550 local
2551 ]
2552 interface nsIScrollable : nsISupports
2553 {
2554 enum {
2555 ScrollOrientation_X = 1,
2556 ScrollOrientation_Y = 2
2557 };
2558
2559 enum {
2560 Scrollbar_Auto = 1,
2561 Scrollbar_Never = 2,
2562 Scrollbar_Always = 3
2563 };
2564
2565 nsresult GetCurScrollPos(int32_t scrollOrientation, int32_t *curPos);
2566 nsresult SetCurScrollPos(int32_t scrollOrientation, int32_t curPos);
2567 nsresult SetCurScrollPosEx(int32_t curHorizontalPos, int32_t curVerticalPos);
2568 nsresult GetScrollRange(int32_t scrollOrientation, int32_t *minPos, int32_t *maxPos);
2569 nsresult SetScrollRange(int32_t scrollOrientation, int32_t minPos, int32_t maxPos);
2570 nsresult SetScrollRangeEx(int32_t minHorizontalPos, int32_t maxHorizontalPos,
2571 int32_t minVerticalPos, int32_t maxVerticalPos);
2572 nsresult GetDefaultScrollbarPreferences(int32_t scrollOrientation, int32_t *scrollbarPref);
2573 nsresult SetDefaultScrollbarPreferences(int32_t scrollOrientation, int32_t scrollbarPref);
2574 nsresult GetScrollbarVisibility(bool *verticalVisible, bool *horizontalVisible);
2575 }
2576
2577 [
2578 object,
2579 uuid(272a5020-64f5-485c-a8c4-44b2882ae0a2),
2580 local
2581 ]
2582 interface nsIFile : nsISupports
2583 {
2584 typedef struct {
2585 /* Currently not needed */
2586 char dummy;
2587 } PRFileDesc, PRLibrary, widl_FILE;
2588 #define FILE widl_FILE
2589
2590 nsresult Append(const nsAString *node);
2591 nsresult AppendNative(const nsAString *node);
2592 nsresult Normalize();
2593 nsresult Create(uint32_t type, uint32_t permission);
2594 nsresult GetLeafName(nsAString *aLeafName);
2595 nsresult SetLeafName(const nsAString *aLeafName);
2596 nsresult GetNativeLeafName(nsAString *aLeafName);
2597 nsresult SetNativeLeafName(const nsAString *aLeafName);
2598 nsresult CopyTo(nsIFile *newParentDir, const nsAString *newName);
2599 nsresult CopyToNative(nsIFile *newParentDir, const nsAString *newName);
2600 nsresult CopyToFollowingLinks(nsIFile *newParentDir, const nsAString *newName);
2601 nsresult CopyToFollowingLinksNative(nsIFile *newParentDir, const nsAString *newName);
2602 nsresult MoveTo(nsIFile *newParentDir, const nsAString *newName);
2603 nsresult MoveToNative(nsIFile *newParentDir, const nsAString *newName);
2604 nsresult Remove(bool recursive);
2605 nsresult GetPermissions(uint32_t *aPermissions);
2606 nsresult SetPermissions(uint32_t pPermissions);
2607 nsresult GetPermissionsOfLink(uint32_t *aPermissions);
2608 nsresult SetPermissionsOfLink(uint32_t pPermissions);
2609 nsresult GetLastModifiedTime(PRTime *aLastModifiedTime);
2610 nsresult SetLastModifiedTime(PRTime aLastModifiedTime);
2611 nsresult GetLastModifiedTimeOfLink(PRTime *aLastModifiedTimeOfLink);
2612 nsresult SetLastModifiedTimeOfLink(PRTime aLastModifiedTimeOfLink);
2613 nsresult GetFileSize(int64_t *aFileSize);
2614 nsresult SetFileSize(int64_t aFileSize);
2615 nsresult GetFileSizeOfLink(int64_t *aFileSizeOfLink);
2616 nsresult GetTarget(nsAString *aTarget);
2617 nsresult GetNativeTarget(nsACString *aNativeTarget);
2618 nsresult GetPath(nsAString *aPath);
2619 nsresult GetNativePath(nsACString *aNativePath);
2620 nsresult Exists(bool *_retval);
2621 nsresult IsWritable(bool *_retval);
2622 nsresult IsReadable(bool *_retval);
2623 nsresult IsExecutable(bool *_retval);
2624 nsresult IsHidden(bool *_retval);
2625 nsresult IsDirectory(bool *_retval);
2626 nsresult IsFile(bool *_retval);
2627 nsresult IsSymlink(bool *_retval);
2628 nsresult IsSpecial(bool *_retval);
2629 nsresult CreateUnique(uint32_t type, uint32_t permission);
2630 nsresult Clone(nsIFile **_retval);
2631 nsresult Equals(nsIFile *inFile, bool *_retval);
2632 nsresult Contains(nsIFile *inFile, bool recir, bool *_retval);
2633 nsresult GetParent(nsIFile **aParent);
2634 nsresult GetDirectoryEntries(nsISimpleEnumerator **aDirectoryEntries);
2635 nsresult InitWithPath(const nsAString *filePath);
2636 nsresult InitWithNativePath(const nsACString *filePath);
2637 nsresult InitWithFile(nsIFile *aFile);
2638 nsresult GetFollowLinks(bool *aFollowLinks);
2639 nsresult SetFollowLinks(bool aFollowLinks);
2640 nsresult OpenNSPRFileDesc(int32_t flags, int32_t mode, PRFileDesc **_retval);
2641 nsresult OpenANSIFileDesc(const char *mode, FILE **_retval);
2642 nsresult Load(PRLibrary **_retval);
2643 nsresult GetDiskSpaceAvailable(int64_t *aDiskSpaceAvailable);
2644 nsresult AppendRelativePath(const nsAString *relativeFilePath);
2645 nsresult AppendRelativeNativePath(const nsACString *relativeFilePath);
2646 nsresult GetPersistentDescriptor(nsACString *aPersistentDescriptor);
2647 nsresult SetPersistentDescriptor(const nsACString *aPersistentDescriptor);
2648 nsresult Reveal();
2649 nsresult Launch();
2650 nsresult GetRelativeDescriptor(nsIFile *fromFile, nsACString *_retval);
2651 nsresult SetRelativeDescriptor(nsIFile *fromFile, const nsACString *relativeDesc);
2652 }
2653
2654 [
2655 object,
2656 uuid(1d940426-5fe5-42c3-84ae-a300f2d9ebd5),
2657 local
2658 ]
2659 interface nsIComponentManager : nsISupports
2660 {
2661 nsresult GetClassObject(nsCIDRef aClass, nsIIDRef aIID, void **result);
2662 nsresult GetClassObjectByContractID(const char *aContractID, nsIIDRef aIID, void **result);
2663 nsresult CreateInstance(nsCIDRef aClass, nsISupports *aDelegate, nsIIDRef aIID,
2664 void **result);
2665 nsresult CreateInstanceByContractID(const char *aContractID, nsISupports *aDelegate,
2666 nsIIDRef aIID, void **result);
2667 nsresult AddBootstrappedManifestLocation(nsIFile *aLocation);
2668 nsresult RemoveBootstrappedManifestLocation(nsIFile *aLocation);
2669 }
2670
2671 [
2672 object,
2673 uuid(55d25e49-793f-4727-a69f-de8b15f4b985),
2674 local
2675 ]
2676 interface nsIPrefBranch : nsISupports
2677 {
2678 nsresult GetRoot(char **aRoot);
2679 nsresult GetPrefType(const char *aPrefName, int32_t *_retval);
2680 nsresult GetBoolPref(const char *aPrefName, bool *_retval);
2681 nsresult SetBoolPref(const char *aPrefName, bool aValue);
2682 nsresult GetFloatPref(const char *aPrefName, float *_retval);
2683 nsresult GetCharPref(const char *aPrefName, char **_retval);
2684 nsresult SetCharPref(const char *aPrefName, const char *aValue);
2685 nsresult GetIntPref(const char *aPrefName, int32_t *_retval);
2686 nsresult SetIntPref(const char *aPrefName, int32_t aValue);
2687 nsresult GetComplexValue(const char *aPrefName, const nsIID *aType, void **aValue);
2688 nsresult SetComplexValue(const char *aPrefName, const nsIID *aType, nsISupports *aValue);
2689 nsresult ClearUserPref(const char *aPrefName);
2690 nsresult LockPref(const char *aPrefName);
2691 nsresult PrefHasUserValue(const char *aPrefName, bool *_retval);
2692 nsresult PrefIsLocked(const char *aPrefName, bool *_retval);
2693 nsresult UnlockPref(const char *aPrefName);
2694 nsresult DeleteBranch(const char *aStartingAt);
2695 nsresult GetChildList(const char *aStartingAt, uint32_t *aCount, char ***aChildArray);
2696 nsresult ResetBranch(const char *aStartingAt);
2697 nsresult AddObserver(const char *aDomain, nsIObserver *aObserver, bool aHoldWeak);
2698 nsresult RemoveObserver(const char *aDomain, nsIObserver *aObserver);
2699 }
2700
2701 [
2702 object,
2703 uuid(bbf8cab0-d43a-11d3-8cc2-00609792278c),
2704 local
2705 ]
2706 interface nsIDirectoryServiceProvider : nsISupports
2707 {
2708 nsresult GetFile(const char *prop, bool *persistent, nsIFile **_retval);
2709 }
2710
2711 [
2712 object,
2713 uuid(2f977d4b-5485-11d4-87e2-0010a4e75ef2),
2714 local
2715 ]
2716 interface nsIDirectoryServiceProvider2 : nsIDirectoryServiceProvider
2717 {
2718 nsresult GetFiles(const char *prop, nsISimpleEnumerator **_retval);
2719 }
2720
2721 [
2722 object,
2723 uuid(f5753fec-a051-4ddc-8891-11f1f1575072),
2724 local
2725 ]
2726 interface nsIProtocolHandler : nsISupports
2727 {
2728 nsresult GetScheme(nsACString *aScheme);
2729 nsresult GetDefaultPort(int32_t *aDefaultPort);
2730 nsresult GetProtocolFlags(uint32_t *aProtocolFlags);
2731 nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset,
2732 nsIURI *aBaseURI, nsIURI **_retval);
2733 nsresult NewChannel(nsIURI *aURI, nsIChannel **_retval);
2734 nsresult AllowPort(int32_t port, const char *scheme, bool *_retval);
2735 }
2736
2737 [
2738 object,
2739 uuid(0e61f3b2-34d7-4c79-bfdc-4860bc7341b7),
2740 local
2741 ]
2742 interface nsIExternalProtocolHandler : nsIProtocolHandler
2743 {
2744 nsresult ExternalAppExistsForScheme(const nsACString *scheme, bool *_retval);
2745 }
2746
2747 [
2748 object,
2749 uuid(bddeda3f-9020-4d12-8c70-984ee9f7935e),
2750 local
2751 ]
2752 interface nsIIOService : nsISupports
2753 {
2754 nsresult GetProtocolHandler(const char *aScheme, nsIProtocolHandler **_retval);
2755 nsresult GetProtocolFlags(const char *aScheme, uint32_t *_retval);
2756 nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
2757 nsIURI **_retval);
2758 nsresult NewFileURI(nsIFile *aFile, nsIURI **_retval);
2759 nsresult NewChannelFromURI(nsIURI *aURI, nsIChannel **_retval);
2760 nsresult NewChannel(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
2761 nsIChannel **_retval);
2762 nsresult GetOffline(bool *aOffline);
2763 nsresult SetOffline(bool aOffline);
2764 nsresult AllowPort(int32_t aPort, const char *aScheme, bool *_retval);
2765 nsresult ExtractScheme(const nsACString *urlString, nsACString *_retval);
2766 }
2767
2768 [
2769 object,
2770 uuid(ca68c485-9db3-4c12-82a6-4fab7948e2d5),
2771 local,
2772 ]
2773 interface nsINetUtil : nsISupports
2774 {
2775 nsresult ParseContentType(const nsACString *aTypeHeader, nsACString *aCharset,
2776 bool *aHadCharset, nsACString *_retval);
2777 nsresult ProtocolHasFlags(nsIURI *aURI, uint32_t aFlag, bool *_retval);
2778 nsresult URIChainHasFlags(nsIURI *aURI, uint32_t aFlags, bool *_retval);
2779 nsresult ToImmutableURI(nsIURI *aURI, nsIURI **_retval);
2780 nsresult NewSimpleNestedURI(nsIURI *aURI, nsIURI **_retval);
2781 nsresult EscapeString(const nsACString *aString, uint32_t aEscapeType, nsACString *_retval);
2782 nsresult EscapeURL(const nsACString *aStr, uint32_t aFlags, nsACString *_retval);
2783 nsresult UnescapeString(const nsACString *aStr, uint32_t aFlags, nsACString *_retval);
2784 nsresult ExtractCharsetFromContentType(const nsACString *aTypeHeader, nsACString *aCharset,
2785 int32_t *aCharsetStart, int32_t *aCharsetEnd, bool *_retval);
2786 }
2787
2788 [
2789 object,
2790 uuid(9c5d3c58-1dd1-11b2-a1c9-f3699284657a),
2791 local
2792 ]
2793 interface nsIWebBrowserFocus : nsISupports
2794 {
2795 nsresult Activate();
2796 nsresult Deactivate();
2797 nsresult SetFocusAtFirstElement();
2798 nsresult SetFocusAtLastElement();
2799 nsresult GetFocusedWindow(nsIDOMWindow **aFocusedWindow);
2800 nsresult SetFocusedWindow(nsIDOMWindow *aFocusedWindow);
2801 nsresult GetFocusedElement(nsIDOMElement **aFocusedElement);
2802 nsresult SetFocusedElement(nsIDOMElement *aFocusedElement);
2803 }
2804
2805 [
2806 object,
2807 uuid(e8c414c4-dc38-4ba3-ab4e-ec4cbbe22907),
2808 local
2809 ]
2810 interface nsIWebBrowserChrome : nsISupports
2811 {
2812 nsresult SetStatus(uint32_t statusType, const PRUnichar *status);
2813 nsresult GetWebBrowser(nsIWebBrowser **aWebBrowser);
2814 nsresult SetWebBrowser(nsIWebBrowser *aWebBrowser);
2815 nsresult GetChromeFlags(uint32_t *aChromeFlags);
2816 nsresult SetChromeFlags(uint32_t aChromeFlags);
2817 nsresult DestroyBrowserWindow();
2818 nsresult SizeBrowserTo(int32_t aCX, int32_t aCY);
2819 nsresult ShowAsModal();
2820 nsresult IsWindowModal(bool *_retval);
2821 nsresult ExitModalEventLoop(nsresult aStatus);
2822 }
2823
2824 [
2825 object,
2826 uuid(df31c120-ded6-11d1-bd85-00805f8ae3f4),
2827 local
2828 ]
2829 interface nsIDOMEventListener : nsISupports
2830 {
2831 nsresult HandleEvent(nsIDOMEvent *event);
2832 }
2833
2834 [
2835 object,
2836 uuid(8e375931-298d-4d0a-9cb4-5668f0cdc5a8),
2837 local
2838 ]
2839 interface nsIDOMEventTarget : nsISupports
2840 {
2841 nsresult AddEventListener(const nsAString *type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, uint8_t _argc);
2842 nsresult AddSystemEventListener(const nsAString *type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, uint8_t _argc);
2843 nsresult RemoveEventListener(const nsAString *type, nsIDOMEventListener *listener, bool useCapture);
2844 nsresult RemoveSystemEventListener(const nsAString *type, nsIDOMEventListener *listener, bool aUseCapture);
2845 nsresult DispatchEvent(nsIDOMEvent *evt, bool *_retval);
2846
2847 /* Followed by methods we should try to avoid using */
2848 }
2849
2850 [
2851 object,
2852 uuid(c939eab8-1345-4344-875b-e0f2d8d89171),
2853 local
2854 ]
2855 interface nsIDOMEvent : nsISupports
2856 {
2857 nsresult GetType(nsAString *aType);
2858 nsresult GetTarget(nsIDOMEventTarget **aTarget);
2859 nsresult GetCurrentTarget(nsIDOMEventTarget **aCurrentTarget);
2860 nsresult GetEventPhase(uint16_t *aEventPhase);
2861 nsresult GetBubbles(bool *aBubbles);
2862 nsresult GetCancelable(bool *aCancelable);
2863 nsresult GetTimeStamp(DOMTimeStamp *aTimeStamp);
2864 nsresult StopPropagation();
2865 nsresult PreventDefault();
2866 nsresult InitEvent(const nsAString *eventTypeArg, bool canBubbleArg, bool cancelableArg);
2867 nsresult GetDefaultPrevented(bool *aDefaultPrevented);
2868 nsresult StopImmediatePropagation();
2869 nsresult GetOriginalTarget(nsIDOMEventTarget **aOriginalTarget);
2870 nsresult GetExplicitOriginalTarget(nsIDOMEventTarget * *aExplicitOriginalTarget);
2871 nsresult PreventBubble();
2872 nsresult PreventCapture();
2873 nsresult GetPreventDefault(bool *_retval);
2874 nsresult GetIsTrusted(bool *aIsTrusted);
2875 nsresult DuplicatePrivateData();
2876 nsresult SetTarget(nsIDOMEventTarget *aTarget);
2877 bool IsDispatchStopped();
2878 /*nsEvent*/ void *GetInternalNSEvent();
2879 void SetTrusted(bool aTrusted);
2880 void Serialize(/*IPC::Message*/ void *aMsg, bool aSerializeInterfaceType);
2881 bool Deserialize(const /*IPC::Message*/ void *aMsg, void **aIter);
2882 }
2883
2884 [
2885 object,
2886 uuid(16b3bdcc-75d4-11e2-8a20-aaff78957a39),
2887 local
2888 ]
2889 interface nsIDOMWindowUtils : nsISupports
2890 {
2891 nsresult GetImageAnimationMode(uint16_t *aImageAnimationMode);
2892 nsresult SetImageAnimationMode(uint16_t aImageAnimationMode);
2893 nsresult GetDocCharsetIsForced(bool *aDocCharsetIsForced);
2894 nsresult GetCursorType(int16_t *_retval);
2895 nsresult GetDocumentMetadata(const nsAString *aName, nsAString *_retval);
2896 nsresult Redraw(uint32_t aCount, uint32_t *_retval);
2897 nsresult SetCSSViewport(float aWidthPx, float aHeightPx);
2898 nsresult GetViewportInfo(uint32_t aDisplayWidth, uint32_t aDisplayHeight, double *aDefaultZoom, bool *aAllowZoom,
2899 double *aMinZoom, double *aMaxZoom, uint32_t *aWidth, uint32_t *aHeight, bool *aAutoSize);
2900 nsresult SetDisplayPortForElement(float aXPx, float aYPx, float aWidthPx, float aHeightPx, nsIDOMElement *aElement);
2901 nsresult SetCriticalDisplayPortForElement(float aXPx, float aYPx, float aWidthPx, float aHeightPx, nsIDOMElement *aElement);
2902 nsresult SetResolution(float aXResolution, float aYResolution);
2903 nsresult GetResolution(float *aXResolution, float *aYResolution);
2904 nsresult GetIsFirstPaint(bool *aIsFirstPaint);
2905 nsresult SetIsFirstPaint(bool aIsFirstPaint);
2906 nsresult SendMouseEvent(const nsAString *aType, float aX, float aY, int32_t aButton, int32_t aClickCount,
2907 int32_t aModifiers, bool aIgnoreRootScrollFrame, float aPressure, uint16_t aInputSourceArg, bool *_retval);
2908 nsresult SendTouchEvent(const nsAString *aType, uint32_t *aIdentifiers, int32_t *aXs, int32_t *aYs,
2909 uint32_t *aRxs, uint32_t *aRys, float *aRotationAngles, float *aForces, uint32_t count, int32_t aModifiers,
2910 bool aIgnoreRootScrollFrame, bool *_retval);
2911 nsresult SendMouseEventToWindow(const nsAString *aType, float aX, float aY, int32_t aButton, int32_t aClickCount,
2912 int32_t aModifiers, bool aIgnoreRootScrollFrame, float aPressure, uint16_t aInputSourceArg);
2913 nsresult SendWheelEvent(float aX, float aY, double aDeltaX, double aDeltaY, double aDeltaZ, uint32_t aDeltaMode,
2914 int32_t aModifiers, int32_t aLineOrPageDeltaX, int32_t aLineOrPageDeltaY, uint32_t aOptions);
2915 nsresult SendKeyEvent(const nsAString *aType, int32_t aKeyCode, int32_t aCharCode, int32_t aModifiers,
2916 uint32_t aAdditionalFlags, bool *_retval);
2917 nsresult SendNativeKeyEvent(int32_t aNativeKeyboardLayout, int32_t aNativeKeyCode, int32_t aModifierFlags,
2918 const nsAString *aCharacters, const nsAString *aUnmodifiedCharacters);
2919 nsresult SendNativeMouseEvent(int32_t aScreenX, int32_t aScreenY, int32_t aNativeMessage, int32_t aModifierFlags,
2920 nsIDOMElement *aElement);
2921 nsresult SendNativeMouseScrollEvent(int32_t aScreenX, int32_t aScreenY, uint32_t aNativeMessage, double aDeltaX,
2922 double aDeltaY, double aDeltaZ, uint32_t aModifierFlags, uint32_t aAdditionalFlags, nsIDOMElement *aElement);
2923 nsresult ActivateNativeMenuItemAt(const nsAString *indexString);
2924 nsresult ForceUpdateNativeMenuAt(const nsAString *indexString);
2925 nsresult Focus(nsIDOMElement *aElement);
2926 nsresult GarbageCollect(nsICycleCollectorListener *aListener, int32_t aExtraForgetSkippableCalls);
2927 nsresult CycleCollect(nsICycleCollectorListener *aListener, int32_t aExtraForgetSkippableCalls);
2928 nsresult SendSimpleGestureEvent(const nsAString *aType, float aX, float aY, uint32_t aDirection, double aDelta,
2929 int32_t aModifiers, uint32_t aClickCount);
2930 nsresult ElementFromPoint(float aX, float aY, bool aIgnoreRootScrollFrame, bool aFlushLayout, nsIDOMElement **_retval);
2931 nsresult NodesFromRect(float aX, float aY, float aTopSize, float aRightSize, float aBottomSize, float aLeftSize,
2932 bool aIgnoreRootScrollFrame, bool aFlushLayout, nsIDOMNodeList **_retval);
2933 nsresult CompareCanvases(nsIDOMHTMLCanvasElement *aCanvas1, nsIDOMHTMLCanvasElement *aCanvas2,
2934 uint32_t *aMaxDifference, uint32_t *_retval);
2935 nsresult GetIsMozAfterPaintPending(bool *aIsMozAfterPaintPending);
2936 nsresult SuppressEventHandling(bool aSuppress);
2937 nsresult ClearMozAfterPaintEvents();
2938 nsresult DisableNonTestMouseEvents(bool aDisable);
2939 nsresult GetScrollXY(bool aFlushLayout, int32_t *aScrollX, int32_t *aScrollY);
2940 nsresult GetScrollbarWidth(bool aFlushLayout, int32_t *_retval);
2941 nsresult GetRootBounds(nsIDOMClientRect **_retval);
2942 nsresult GetIMEIsOpen(bool *aIMEIsOpen);
2943 nsresult GetIMEStatus(uint32_t *aIMEStatus);
2944 nsresult GetScreenPixelsPerCSSPixel(float *aScreenPixelsPerCSSPixel);
2945 nsresult GetFullZoom(float *aFullZoom);
2946 nsresult DispatchDOMEventViaPresShell(nsIDOMNode *aTarget, nsIDOMEvent *aEvent, bool aTrusted, bool *_retval);
2947 nsresult DispatchEventToChromeOnly(nsIDOMEventTarget *aTarget, nsIDOMEvent *aEvent, bool *_retval);
2948 nsresult GetClassName(const /*JS::Value*/ void *aObject, JSContext *cx, char **_retval);
2949 nsresult SendContentCommandEvent(const nsAString *aType, nsITransferable *aTransferable);
2950 nsresult SendCompositionEvent(const nsAString *aType, const nsAString *aData, const nsAString *aLocale);
2951 nsresult SendTextEvent(const nsAString *aCompositionString, int32_t aFirstClauseLength, uint32_t aFirstClauseAttr,
2952 int32_t aSecondClauseLength, uint32_t aSecondClauseAttr, int32_t aThirdClauseLength, uint32_t aThirdClauseAttr,
2953 int32_t aCaretStart, int32_t aCaretLength);
2954 nsresult SendQueryContentEvent(uint32_t aType, uint32_t aOffset, uint32_t aLength, int32_t aX, int32_t aY,
2955 nsIQueryContentEventResult **_retval);
2956 nsresult RemoteFrameFullscreenChanged(nsIDOMElement *aFrameElement, const nsAString *aNewOrigin);
2957 nsresult RemoteFrameFullscreenReverted();
2958 nsresult ExitFullscreen();
2959 nsresult SendSelectionSetEvent(uint32_t aOffset, uint32_t aLength, bool aReverse, bool *_retval);
2960 nsresult SelectAtPoint(float aX, float aY, uint32_t aSelectBehavior, bool *_retval);
2961 nsresult GetVisitedDependentComputedStyle(nsIDOMElement *aElement, const nsAString *aPseudoElement,
2962 const nsAString *aPropertyName, nsAString *_retval);
2963 nsresult GetParent(const /*JS::Value*/ void *obj, JSContext *cx, /*JS::Value*/ void *_retval);
2964 nsresult GetOuterWindowID(uint64_t *aOuterWindowID);
2965 nsresult GetCurrentInnerWindowID(uint64_t *aCurrentInnerWindowID);
2966 nsresult EnterModalState();
2967 nsresult LeaveModalState();
2968 nsresult EnterModalStateWithWindow(nsIDOMWindow **_retval);
2969 nsresult LeaveModalStateWithWindow(nsIDOMWindow *aWindow);
2970 nsresult IsInModalState(bool *_retval);
2971 nsresult SuspendTimeouts();
2972 nsresult ResumeTimeouts();
2973 nsresult GetLayerManagerType(nsAString *aLayerManagerType);
2974 nsresult StartFrameTimeRecording(uint32_t *startIndex);
2975 nsresult StopFrameTimeRecording(uint32_t startIndex, float **paintTimes, uint32_t *frameCount, float **frameIntervals);
2976 nsresult BeginTabSwitch();
2977 nsresult GetDisplayDPI(float *aDisplayDPI);
2978 nsresult GetOuterWindowWithId(uint64_t aOuterWindowID, nsIDOMWindow **_retval);
2979 nsresult RenderDocument(const void /*nsRect*/ *aRect, uint32_t aFlags, int /*nscolor*/ aBackgroundColor,
2980 void /*gfxContext*/ *aThebesContext);
2981 nsresult AdvanceTimeAndRefresh(int64_t aMilliseconds);
2982 nsresult RestoreNormalRefresh();
2983 nsresult ComputeAnimationDistance(nsIDOMElement *element, const nsAString *property, const nsAString *value1,
2984 const nsAString *value2, double *_retval);
2985 nsresult WrapDOMFile(nsIFile *aFile, nsIDOMFile **_retval);
2986 nsresult GetFocusedInputType(char **aFocusedInputType);
2987 nsresult FindElementWithViewId(long /*nsViewID*/ aId, nsIDOMElement **_retval);
2988 nsresult LeafLayersPartitionWindow(bool *_retval);
2989 nsresult GetMayHaveTouchEventListeners(bool *aMayHaveTouchEventListeners);
2990 nsresult CheckAndClearPaintedState(nsIDOMElement *aElement, bool *_retval);
2991 nsresult GetFile(const nsAString *aName, const /*JS::Value*/ void *aBlobParts, const /*JS::Value*/ void *aParameters,
2992 JSContext* cx, uint8_t _argc, nsIDOMFile **_retval);
2993 nsresult GetBlob(const /*JS::Value*/ void *aBlobParts, const /*JS::Value*/ void *aParameters, JSContext *cx,
2994 uint8_t _argc, nsIDOMBlob * _retval);
2995 nsresult GetFileId(const /*JS::Value*/ void *aFile, JSContext *cx, int64_t *_retval);
2996 nsresult GetFileReferences(const nsAString *aDatabaseName, int64_t aId, int32_t *aRefCnt, int32_t *aDBRefCnt,
2997 int32_t *aSliceRefCnt, bool *_retval);
2998 nsresult IsIncrementalGCEnabled(JSContext *cx, bool *_retval);
2999 nsresult StartPCCountProfiling(JSContext *cx);
3000 nsresult StopPCCountProfiling(JSContext *cx);
3001 nsresult PurgePCCounts(JSContext *cx);
3002 nsresult GetPCCountScriptCount(JSContext *cx, int32_t *_retval);
3003 nsresult GetPCCountScriptSummary(int32_t script, JSContext *cx, nsAString *_retval);
3004 nsresult GetPCCountScriptContents(int32_t script, JSContext *cx, nsAString *_retval);
3005 nsresult GetPaintingSuppressed(bool *aPaintingSuppressed);
3006 nsresult GetPlugins(JSContext *cx, /*JS::Value*/ void *aPlugins);
3007 nsresult SetScrollPositionClampingScrollPortSize(float aWidth, float aHeight);
3008 nsresult PreventFurtherDialogs();
3009 nsresult LoadSheet(nsIURI *sheetURI, uint32_t type);
3010 nsresult RemoveSheet(nsIURI *sheetURI, uint32_t type);
3011 nsresult GetIsHandlingUserInput(bool *aIsHandlingUserInput);
3012 nsresult AllowScriptsToClose();
3013 nsresult IsNodeDisabledForEvents(nsIDOMNode *aNode, bool *_retval);
3014 }
3015
3016 cpp_quote("#define CONTEXT_NONE 0x00")
3017 cpp_quote("#define CONTEXT_LINK 0x01")
3018 cpp_quote("#define CONTEXT_IMAGE 0x02")
3019 cpp_quote("#define CONTEXT_DOCUMENT 0x04")
3020 cpp_quote("#define CONTEXT_TEXT 0x08")
3021 cpp_quote("#define CONTEXT_INPUT 0x10")
3022 cpp_quote("#define CONTEXT_BACKGROUND_IMAGE 0x20")
3023
3024 [
3025 object,
3026 uuid(3478b6b0-3875-11d4-94ef-0020183bf181),
3027 local
3028 ]
3029 interface nsIContextMenuListener : nsISupports
3030 {
3031 nsresult OnShowContextMenu(uint32_t aContextFlags, nsIDOMEvent *aEvent, nsIDOMNode *aNode);
3032 }
3033
3034 [
3035 object,
3036 uuid(d73852f8-7bd6-477d-8233-117dbf83860b),
3037 local
3038 ]
3039 interface nsIDOMUIEvent : nsIDOMEvent
3040 {
3041 nsresult GetView(nsIDOMWindow **aView);
3042 nsresult GetDetail(int32_t *aDetail);
3043 nsresult InitUIEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3044 nsIDOMWindow *viewArg, int32_t detailArg);
3045 nsresult GetLayerX(int32_t *aLayerX);
3046 nsresult GetLayerY(int32_t *aLayerY);
3047 nsresult GetPageX(int32_t *aPageX);
3048 nsresult GetPageY(int32_t *aPageY);
3049 nsresult GetWhich(uint32_t *aWhich);
3050 nsresult GetRangeParent(nsIDOMNode **aRangeParent);
3051 nsresult GetRangeOffset(int32_t *aRangeOffset);
3052 nsresult GetCancelBubble(bool *aCancelBubble);
3053 nsresult SetCancelBubble(bool aCancelBubble);
3054 nsresult GetIsChar(bool *aIsChar);
3055 }
3056
3057 [
3058 object,
3059 uuid(afb2e57b-2822-4969-b2a9-0cada6859534),
3060 local
3061 ]
3062 interface nsIDOMMouseEvent : nsIDOMUIEvent
3063 {
3064 nsresult GetScreenX(int32_t *aScreenX);
3065 nsresult GetScreenY(int32_t *aScreenY);
3066 nsresult GetMozMovementX(int32_t *aMozMovementX);
3067 nsresult GetMozMovementY(int32_t *aMozMovementY);
3068 nsresult GetClientX(int32_t *aClientX);
3069 nsresult GetClientY(int32_t *aClientY);
3070 nsresult GetCtrlKey(bool *aCtrlKey);
3071 nsresult GetShiftKey(bool *aShiftKey);
3072 nsresult GetAltKey(bool *aAltKey);
3073 nsresult GetMetaKey(bool *aMetaKey);
3074 nsresult GetButton(uint16_t *aButton);
3075 nsresult GetButtons(uint16_t *aButtons);
3076 nsresult GetRelatedTarget(nsIDOMEventTarget **aRelatedTarget);
3077 nsresult InitMouseEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3078 nsIDOMWindow *viewArg, int32_t detailArg, int32_t screenXArg, int32_t screenYArg,
3079 int32_t clientXArg, int32_t clientYArg, bool ctrlKeyArg, bool altKeyArg,
3080 bool shiftKeyArg, bool metaKeyArg, uint16_t buttonArg,
3081 nsIDOMEventTarget *relatedTargetArg);
3082 nsresult GetMozPressure(float *aMozPressure);
3083 nsresult GetMozInputSource(uint16_t *aMozInputSource);
3084 nsresult InitNSMouseEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3085 nsIDOMWindow *viewArg, int32_t detailArg, int32_t screenXArg, int32_t screenYArg,
3086 int32_t clientXArg, int32_t clientYArg, bool ctrlKeyArg, bool altKeyArg, bool shiftKeyArg,
3087 bool metaKeyArg, uint16_t buttonArg, nsIDOMEventTarget *relatedTargetArg, float pressure,
3088 uint16_t inputSourceArg);
3089 nsresult GetModifierState(const nsAString *keyArg, bool *_retval);
3090 }
3091
3092 [
3093 object,
3094 uuid(ffbe684c-ca90-4b58-aa8c-9727f997f86d),
3095 local
3096 ]
3097 interface nsIDOMKeyEvent : nsIDOMUIEvent
3098 {
3099 nsresult GetCharCode(uint32_t *aCharCode);
3100 nsresult GetKeyCode(uint32_t *aKeyCode);
3101 nsresult GetAltKey(bool *aAltKey);
3102 nsresult GetCtrlKey(bool *aCtrlKey);
3103 nsresult GetShiftKey(bool *aShiftKey);
3104 nsresult GetMetaKey(bool *aMetaKey);
3105 nsresult InitKeyEvent(const nsAString *typeArg, bool canBubbleArg,
3106 bool cancelableArg, nsIDOMWindow *viewArg, bool ctrlKeyArg,
3107 bool altKeyArg, bool shiftKeyArg, bool metaKeyArg, uint32_t keyCodeArg,
3108 uint32_t charCodeArg);
3109 nsresult GetModifierState(const nsAString *keyArg, bool *_retval);
3110 nsresult GetLocation(uint32_t *aLocation);
3111 }
3112
3113 [
3114 object,
3115 uuid(0b976267-4aaa-4f36-a2d4-27b5ca8d73bb),
3116 local
3117 ]
3118 interface nsIEmbeddingSiteWindow : nsISupports
3119 {
3120 nsresult SetDimensions(uint32_t flags, int32_t x, int32_t y, int32_t cx, int32_t cy);
3121 nsresult GetDimensions(uint32_t flags, int32_t *x, int32_t *y, int32_t *cx, int32_t *cy);
3122 nsresult SetFocus();
3123 nsresult GetVisibility(bool *aVisibility);
3124 nsresult SetVisibility(bool aVisibility);
3125 nsresult GetTitle(PRUnichar **aTitle);
3126 nsresult SetTitle(const PRUnichar *aTitle);
3127 nsresult GetSiteWindow(void **aSiteWindow);
3128 nsresult Blur();
3129 }
3130
3131 [
3132 object,
3133 uuid(2417cbfe-65ad-48a6-b4b6-eb84db174392),
3134 local
3135 ]
3136 interface nsIComponentRegistrar : nsISupports
3137 {
3138 nsresult AutoRegister(nsIFile *aSpec);
3139 nsresult AutoUnregister(nsIFile *aSpec);
3140 nsresult RegisterFactory(const nsCID *aClass, const char *aClassName,
3141 const char *aContractID, nsIFactory *aFactory);
3142 nsresult UnregisterFactory(const nsCID *aClass, nsIFactory *aFactory);
3143 nsresult RegisterFactoryLocation(const nsCID *aClass, const char *aClassName,
3144 const char *aContractID, nsIFile *aFile, const char *aLoaderStr,
3145 const char *aType);
3146 nsresult UnregisterFactoryLocation(const nsCID *aClass, nsIFile *aFile);
3147 nsresult IsCIDRegistered(const nsCID *aClass, bool *_retval);
3148 nsresult IsContractIDRegistered(const char *aContractID, bool *_retval);
3149 nsresult EnumerateCIDs(nsISimpleEnumerator **_retval);
3150 nsresult EnumerateContractIDs(nsISimpleEnumerator **_retval);
3151 nsresult CIDToContractID(const nsCID *aClass, char **_retval);
3152 nsresult ContractIDToCID(const char *aContractID, nsCID **_retval);
3153 }
3154
3155 [
3156 object,
3157 uuid(1630c61a-325e-49ca-8759-a31b16c47aa5),
3158 local
3159 ]
3160 interface nsIPromptService : nsISupports
3161 {
3162 nsresult Alert(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3163 const PRUnichar *aText);
3164 nsresult AlertCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3165 const PRUnichar *aText, const PRUnichar *aCheckMsg, bool *aCheckState);
3166 nsresult Confirm(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3167 const PRUnichar *aText, bool *_retval);
3168 nsresult ConfirmCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3169 const PRUnichar *aText, const PRUnichar *aCheckMsg, bool *aCheckState,
3170 bool *_retval);
3171 nsresult ConfirmEx(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3172 const PRUnichar *aText, uint32_t aButtonFlags, const PRUnichar *aButton0Title,
3173 const PRUnichar *aButton1Title, const PRUnichar *aButton2Title,
3174 const PRUnichar *aCheckMsg, bool *aCheckState, int32_t *_retval);
3175 nsresult Prompt(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3176 const PRUnichar *aText, PRUnichar **aValue, const PRUnichar *aCheckMsg,
3177 bool *aCheckState, bool *_retval);
3178 nsresult PromptUsernameAndPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3179 const PRUnichar *aText, PRUnichar **aUsername, PRUnichar **aPassword,
3180 const PRUnichar *aCheckMsg, bool *aCheckState, bool *_retval);
3181 nsresult PromptPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3182 const PRUnichar *aText, PRUnichar **aPassword, const PRUnichar *aCheckMsg,
3183 bool *aCheckState, bool *_retval);
3184 nsresult Select(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3185 const PRUnichar *aText, uint32_t aCount, const PRUnichar **aSelectList,
3186 int32_t *aOutSelection, bool *_retval);
3187 }
3188
3189 [
3190 object,
3191 uuid(b128a1e6-44f3-4331-8fbe-5af360ff21ee),
3192 local
3193 ]
3194 interface nsITooltipTextProvider : nsISupports
3195 {
3196 nsresult GetNodeText(nsIDOMNode *aNode, PRUnichar **aText, bool *_retval);
3197 }
3198
3199 [
3200 object,
3201 uuid(24f3f4da-18a4-448d-876d-7360fefac029),
3202 local
3203 ]
3204 interface nsIEditingSession : nsISupports
3205 {
3206 nsresult GetEditorStatus(uint32_t *aEditorStatus);
3207 nsresult MakeWindowEditable(nsIDOMWindow *window, const char *aEditorType,
3208 bool doAfterUriLoad, bool aMakeWholeDocumentEditable, bool aInteractive);
3209 nsresult WindowIsEditable(nsIDOMWindow *window, bool *_retval);
3210 nsresult GetEditorForWindow(nsIDOMWindow *window, nsIEditor **_retval);
3211 nsresult SetupEditorOnWindow(nsIDOMWindow *window);
3212 nsresult TearDownEditorOnWindow(nsIDOMWindow *window);
3213 nsresult SetEditorOnControllers(nsIDOMWindow *aWindow, nsIEditor *aEditor);
3214 nsresult DisableJSAndPlugins(nsIDOMWindow *aWindow);
3215 nsresult RestoreJSAndPlugins(nsIDOMWindow *aWindow);
3216 nsresult DetachFromWindow(nsIDOMWindow *aWindow);
3217 nsresult ReattachToWindow(nsIDOMWindow *aWindow);
3218 nsresult GetJsAndPluginsDisabled(bool *aJsAndPluginsDisabled);
3219 }
3220
3221 [
3222 object,
3223 uuid(83f892cf-7ed3-490e-967a-62640f3158e1),
3224 local
3225 ]
3226 interface nsICommandParams : nsISupports
3227 {
3228 nsresult GetValueType(const char *name, int16_t *_retval);
3229 nsresult GetBooleanValue(const char *name, bool *_retval);
3230 nsresult GetLongValue(const char *name, int32_t *_retval);
3231 nsresult GetDoubleValue(const char *name, double *_retval);
3232 nsresult GetStringValue(const char *name, nsAString *_retval);
3233 nsresult GetCStringValue(const char *name, char **_retval);
3234 nsresult GetISupportsValue(const char *name, nsISupports **_retval);
3235 nsresult SetBooleanValue(const char *name, bool value);
3236 nsresult SetLongValue(const char *name, int32_t value);
3237 nsresult SetDoubleValue(const char *name, double value);
3238 nsresult SetStringValue(const char *name, const nsAString *value);
3239 nsresult SetCStringValue(const char *name, const char *value);
3240 nsresult SetISupportsValue(const char *name, nsISupports *value);
3241 nsresult RemoveValue(const char *name);
3242 nsresult HasMoreElements(bool *_retval);
3243 nsresult First();
3244 nsresult GetNext(char **_retval);
3245 }
3246
3247 [
3248 object,
3249 uuid(080d2001-f91e-11d4-a73c-f9242928207c),
3250 local
3251 ]
3252 interface nsICommandManager : nsISupports
3253 {
3254 nsresult AddCommandObserver(nsIObserver *aCommandObserver, const char *aCommandToObserve);
3255 nsresult RemoveCommandObserver(nsIObserver *aCommandObserver, const char *aCommandObserved);
3256 nsresult IsCommandSupported(const char *aCommandName, nsIDOMWindow *aTargetWindow, bool *_retval);
3257 nsresult IsCommandEnabled(const char *aCommandName, nsIDOMWindow *aTargetWindow, bool *_retval);
3258 nsresult GetCommandState(const char *aCommandName, nsIDOMWindow *aTargetWindow,
3259 nsICommandParams *aCommandParams);
3260 nsresult DoCommand(const char *aCommandName, nsICommandParams *aCommandParams,
3261 nsIDOMWindow *aTargetWindow);
3262 }
3263
3264 [
3265 object,
3266 uuid(47b82b60-a36f-4167-8072-6f421151ed50),
3267 local
3268 ]
3269 interface nsIControllerContext : nsISupports
3270 {
3271 nsresult Init(nsIControllerCommandTable *aCommandTable);
3272 nsresult SetCommandContext(nsISupports *aCommandContext);
3273 }
3274
3275 [
3276 object,
3277 uuid(d5b61b82-1da4-11d3-bf87-00105a1b0627),
3278 local
3279 ]
3280 interface nsIController : nsISupports
3281 {
3282 nsresult IsCommandEnabled(const char *command, bool *_retval);
3283 nsresult SupportsCommand(const char *command, bool *_retval);
3284 nsresult DoCommand(const char *command);
3285 nsresult OnEvent(const char *eventName);
3286 }
3287
3288 [
3289 object,
3290 uuid(8a8b4b1d-72d8-428e-9575-f918baf69ea1),
3291 local
3292 ]
3293 interface nsIContent : nsISupports
3294 {
3295 /* This is not a real interface declaration. It's too internal for us. */
3296 }
3297
3298 [
3299 object,
3300 uuid(4e6f7d97-091e-4eda-b7d6-feb0b8012a93),
3301 local
3302 ]
3303 interface nsIDocument : nsISupports
3304 {
3305 /* This is not a real interface declaration. It's too internal for us. */
3306 }
3307
3308 [
3309 object,
3310 uuid(b1ee32f2-b8c4-49b9-93df-b6fab5d54688),
3311 local
3312 ]
3313 interface nsIContentSerializer : nsISupports
3314 {
3315 nsresult Init(uint32_t flags, uint32_t aWrapColumn, const char *aCharSet, bool aIsCopying,
3316 bool aIsWholeDocument);
3317 nsresult AppendText(nsIContent *aText, int32_t aStartOffset, int32_t aEndOffset, nsAString *aStr);
3318 nsresult AppendCDATASection(nsIContent *aCDATASection, int32_t aStartOffset,
3319 int32_t aEndOffset, nsAString *aStr);
3320 nsresult AppendProcessingInstruction(nsIContent *aPI, int32_t aStartOffset,
3321 int32_t aEndOffset, nsAString *aStr);
3322 nsresult AppendComment(nsIContent *aComment, int32_t aStartOffset, int32_t aEndOffset,
3323 nsAString *aStr);
3324 nsresult AppendDoctype(nsIContent *aDoctype, nsAString *aStr);
3325 nsresult AppendElementStart(nsIContent *aElement, nsIContent *aOriginalElement,
3326 nsAString *aStr);
3327 nsresult AppendElementEnd(nsIContent *aElement, nsAString *aStr);
3328 nsresult Flush(nsAString *aStr);
3329 nsresult AppendDocumentStart(nsIDocument *aDocument, nsAString *aStr);
3330 }
3331
3332 [
3333 object,
3334 uuid(753b38d1-ee03-4e58-a650-1076ccccdb7f),
3335 local
3336 ]
3337 interface nsIEditor : nsISupports
3338 {
3339 typedef void *nsIContentPtr;
3340
3341 nsresult GetSelection([out] nsISelection *_retval);
3342 nsresult Init([in] nsIDOMDocument *doc, [in] nsIContentPtr aRoot, [in] nsISelectionController *aSelCon, [in] uint32_t aFlags);
3343 nsresult SetAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] const nsAString *sourceAttrValue, [in] bool aSuppressTransaction);
3344 nsresult RemoveAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] bool aSuppressTransaction);
3345 nsresult PostCreate();
3346 nsresult PreDestroy();
3347 nsresult GetFlags([out] uint32_t *_retval);
3348 nsresult SetFlags([in] uint32_t val);
3349 nsresult GetContentsMIMEType([out] char **_retval);
3350 nsresult SetContentsMIMEType([in] const char *val);
3351 nsresult GetIsDocumentEditable([out] bool *_retval);
3352 nsresult GetIsSelectionEditable(bool *aIsSelectionEditable);
3353 nsresult GetDocument([out] nsIDOMDocument **_retval);
3354 nsresult GetRootElement([out] nsIDOMElement **_retval);
3355 nsresult GetSelectionController([out] nsISelectionController **_retval);
3356 nsresult DeleteSelection(int16_t action, int16_t aStripWrappers);
3357 nsresult GetDocumentIsEmpty([out] bool *_retval);
3358 nsresult GetDocumentModified([out] bool *_retval);
3359 nsresult GetDocumentCharacterSet([out] nsACString *_retval);
3360 nsresult SetDocumentCharacterSet([in] const nsACString *val);
3361 nsresult ResetModificationCount();
3362 nsresult GetModificationCount([out] int32_t *_retval);
3363 nsresult IncrementModificationCount([in] int32_t aModCount);
3364 nsresult GetTransactionManager([out] nsITransactionManager **_retval);
3365 nsresult SetTransactionManager(nsITransactionManager *aTransactionManager);
3366 nsresult DoTransaction([in] nsITransaction *txn);
3367 nsresult EnableUndo([in] bool enable);
3368 nsresult GetNumberOfUndoItems(int32_t *aNumberOfUndoItems);
3369 nsresult GetNumberOfRedoItems(int32_t *aNumberOfRedoItems);
3370 nsresult Undo([in] uint32_t count);
3371 nsresult CanUndo([out] bool *isEnabled, [out] bool *canUndo);
3372 nsresult Redo([in] uint32_t count);
3373 nsresult CanRedo([out] bool *isEnabled, [out] bool *canRedo);
3374 nsresult BeginTransaction();
3375 nsresult EndTransaction();
3376 nsresult BeginPlaceHolderTransaction([in] nsIAtom *name);
3377 nsresult EndPlaceHolderTransaction();
3378 nsresult ShouldTxnSetSelection([out] bool *_retval);
3379 nsresult SetShouldTxnSetSelection([in] bool should);
3380 nsresult GetInlineSpellChecker([out] nsIInlineSpellChecker **_retval);
3381 nsresult SyncRealTimeSpell();
3382 nsresult SetSpellcheckUserOverride(bool enable);
3383 nsresult Cut();
3384 nsresult CanCut([out] bool *_retval);
3385 nsresult Copy();
3386 nsresult CanCopy([out] bool *_retval);
3387 nsresult Paste([in] int32_t aSelectionType);
3388 nsresult PasteTransferable(nsITransferable *aTransferable);
3389 nsresult CanPaste([in] int32_t aSelectionType, [out] bool *_retval);
3390 nsresult CanPasteTransferable(nsITransferable *aTransferable, bool *_retval);
3391 nsresult SelectAll();
3392 nsresult BeginningOfDocument();
3393 nsresult EndOfDocument();
3394 nsresult SetAttribute([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [in] const nsAString *attvalue);
3395 nsresult GetAttributeValue([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [out] nsAString *resultValue, bool *_retval);
3396 nsresult RemoveAttribute([in] nsIDOMElement *aElement, [in] const nsAString *aAttribute);
3397 nsresult CloneAttribute([in] const nsAString *aAttribute, [in] nsIDOMNode *aDestNode, [in] nsIDOMNode *aSourceNode);
3398 nsresult CloneAttributes([in] nsIDOMNode *destNode, [in] nsIDOMNode *sourceNode);
3399 nsresult CreateNode([in] const nsAString *tag, [in] nsIDOMNode *parent, [in] int32_t position, [out] nsIDOMNode **_retval);
3400 nsresult InsertNode([in] nsIDOMNode *node, [in] nsIDOMNode *parent, [in] int32_t aPosition);
3401 nsresult SplitNode([in] nsIDOMNode *existingRightNode, [in] int32_t offset, [out] nsIDOMNode **newLeftNode);
3402 nsresult JoinNodes([in] nsIDOMNode *leftNode, [in] nsIDOMNode *rightNode, [in] nsIDOMNode *parent);
3403 nsresult DeleteNode([in] nsIDOMNode *child);
3404 bool OutputsMozDirty();
3405 nsresult MarkNodeDirty([in] nsIDOMNode *node);
3406 nsresult SwitchTextDirection();
3407 nsresult OutputToString([in] nsAString formatType, [in] uint32_t flags, [out] nsAString *_retval);
3408 nsresult OutputToStream([in] nsIOutputStream *aStream, [in] nsAString *formatType, [in] nsACString *charsetOverride, [in] uint32_t flags);
3409 nsresult SetEditorObserver(nsIEditorObserver *observer);
3410 nsresult RemoveEditorObserver(nsIEditorObserver *observer);
3411 nsresult AddEditActionListener([in] nsIEditActionListener *listener);
3412 nsresult RemoveEditActionListener([in] nsIEditActionListener *listener);
3413 nsresult AddDocumentStateListener([in] nsIDocumentStateListener *listener);
3414 nsresult RemoveDocumentStateListener([in] nsIDocumentStateListener *listener);
3415 nsresult DumpContentTree();
3416 nsresult DebugDumpContent();
3417 nsresult DebugUnitTests([out] int32_t *outNumTests, [out] int32_t *outNumTestsFailed);
3418 bool IsModifiableNode(nsIDOMNode *aNode);
3419 nsresult GetLastKeypressEventTrusted(bool *aLastKeypressEventTrusted);
3420 nsresult SetSuppressDispatchingInputEvent(bool aSuppressDispatchingInputEvent);
3421 }
3422
3423 [
3424 object,
3425 uuid(833f30de-94c7-4630-a852-2300ef329d7b),
3426 local
3427 ]
3428 interface nsIHTMLEditor : nsISupports
3429 {
3430 nsresult AddDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3431 nsresult RemoveDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3432 nsresult RemoveAllDefaultProperties();
3433 nsresult SetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3434 nsresult GetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] bool *aFirst, [out] bool *aAny, [out] bool *aAll);
3435 nsresult GetInlinePropertyWithAttrValue([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] bool *aFirst, [out] bool *aAny, [out] bool *aAll, [out] nsAString *_retval);
3436 nsresult RemoveAllInlineProperties();
3437 nsresult RemoveInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute);
3438 nsresult IncreaseFontSize();
3439 nsresult DecreaseFontSize();
3440 nsresult NodeIsBlock([in] nsIDOMNode *node, bool *_retval);
3441 nsresult InsertHTML([in] nsAString *aInputString);
3442 nsresult PasteNoFormatting([in] int32_t aSelectionType);
3443 nsresult RebuildDocumentFromSource([in] nsAString *aSourceString);
3444 nsresult InsertHTMLWithContext([in] nsAString *aInputString, [in] nsAString *aContextStr, [in] nsAString *aInfoStr, [in] nsAString *aFlavor, [in] nsIDOMDocument *aSourceDoc, [in] nsIDOMNode *aDestinationNode, [in] int32_t aDestinationOffset, [in] bool aDeleteSelection);
3445 nsresult InsertElementAtSelection([in] nsIDOMElement *aElement, [in] bool aDeleteSelection);
3446 nsresult SetDocumentTitle([in] nsAString *aTitle);
3447 nsresult UpdateBaseURL();
3448 nsresult SelectElement([in] nsIDOMElement *aElement);
3449 nsresult SetCaretAfterElement([in] nsIDOMElement *aElement);
3450 nsresult SetParagraphFormat([in] nsAString *aParagraphFormat);
3451 nsresult GetParagraphState([out] bool *aMixed, [out] nsAString *_retval);
3452 nsresult GetFontFaceState([out] bool *aMixed, [out] nsAString *_retval);
3453 nsresult GetFontColorState([out] bool *aMixed, [out] nsAString *_retval);
3454 nsresult GetBackgroundColorState([out] bool *aMixed, [out] nsAString *_retval);
3455 nsresult GetHighlightColorState([out] bool *aMixed, [out] nsAString *_retval);
3456 nsresult GetListState([out] bool *aMixed, [out] bool *aOL, [out] bool *aUL, [out] bool *aDL);
3457 nsresult GetListItemState([out] bool *aMixed, [out] bool *aLI, [out] bool *aDT, [out] bool *aDD);
3458 nsresult GetAlignment([out] bool *aMixed, [out] int16_t *aAlign);
3459 nsresult GetIndentState([out] bool *aCanIndent, [out] bool *aCanOutdent);
3460 nsresult MakeOrChangeList([in] nsAString *aListType, [in] bool entireList, [in] nsAString *aBulletType);
3461 nsresult RemoveList([in] nsAString *aListType);
3462 nsresult Indent([in] nsAString *aIndent);
3463 nsresult Align([in] nsAString *aAlign);
3464 nsresult GetElementOrParentByTagName([in] nsAString *aTagName, [in] nsIDOMNode *aNode, [out] nsIDOMElement **_retval);
3465 nsresult GetSelectedElement([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
3466 nsresult GetHeadContentsAsHTML([out] nsAString *_retval);
3467 nsresult ReplaceHeadContentsWithHTML([in] nsAString *aSourceToInsert);
3468 nsresult CreateElementWithDefaults([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
3469 nsresult InsertLinkAroundSelection([in] nsIDOMElement *aAnchorElement);
3470 nsresult SetBackgroundColor([in] nsAString *aColor);
3471 nsresult SetBodyAttribute([in] nsAString *aAttr, [in] nsAString *aValue);
3472 nsresult GetLinkedObjects([out] nsISupportsArray **_retval);
3473 nsresult GetIsCSSEnabled([out] bool *_retval);
3474 nsresult SetIsCSSEnabled([in] bool prb);
3475 nsresult AddInsertionListener([in] nsIContentFilter *inFilter);
3476 nsresult RemoveInsertionListener([in] nsIContentFilter *inFilter);
3477 nsresult CreateAnonymousElement([in] nsAString *aTag, [in] nsIDOMNode *aParentNode, [in] nsAString *aAnonClass, [in] bool aIsCreatedHidden, [out] nsIDOMElement **_retval);
3478 nsresult GetSelectionContainer([out] nsIDOMElement **_retval);
3479 nsresult CheckSelectionStateForAnonymousButtons([in] nsISelection *aSelection);
3480 nsresult IsAnonymousElement([in] nsIDOMElement *aElement, [out] bool *_retval);
3481 nsresult GetReturnInParagraphCreatesNewParagraph([out] bool *_retval);
3482 nsresult SetReturnInParagraphCreatesNewParagraph([in] bool prb);
3483 nsresult BreakIsVisible(nsIDOMNode *aNode, bool *_retval);
3484 void /*Element*/ *GetActiveEditingHost();
3485 }
3486
3487 interface nsIDocShellTreeItem;
3488
3489 [
3490 object,
3491 uuid(37f1ab73-f224-44b1-82f0-d2834ab1cec0),
3492 local
3493 ]
3494 interface nsIDocShellTreeNode : nsISupports
3495 {
3496 nsresult GetChildCount(int32_t *aChildCount);
3497 nsresult AddChild(nsIDocShellTreeItem *child);
3498 nsresult RemoveChild(nsIDocShellTreeItem *child);
3499 nsresult GetChildAt(int32_t index, nsIDocShellTreeItem **_retval);
3500 nsresult FindChildWithName(const PRUnichar *aName, bool aRecurse, bool aSameType, nsIDocShellTreeItem *aRequestor,
3501 nsIDocShellTreeItem *aOriginalRequestor, nsIDocShellTreeItem **_retval);
3502 }
3503
3504 [
3505 object,
3506 uuid(09b54ec1-d98a-49a9-bc95-3219e8b55089),
3507 local
3508 ]
3509 interface nsIDocShellTreeItem : nsIDocShellTreeNode
3510 {
3511 nsresult GetName(PRUnichar **aName);
3512 nsresult SetName(const PRUnichar *aName);
3513 nsresult NameEquals(const PRUnichar *name, bool *_retval);
3514 nsresult GetItemType(int32_t *aItemType);
3515 nsresult SetItemType(int32_t aItemType);
3516 nsresult GetParent(nsIDocShellTreeItem **aParent);
3517 nsresult GetSameTypeParent(nsIDocShellTreeItem **aSameTypeParent);
3518 nsresult GetRootTreeItem(nsIDocShellTreeItem **aRootTreeItem);
3519 nsresult GetSameTypeRootTreeItem(nsIDocShellTreeItem **aSameTypeRootTreeItem);
3520 nsresult FindItemWithName(const PRUnichar *name, nsISupports *aRequestor, nsIDocShellTreeItem *aOriginalRequestor, nsIDocShellTreeItem **_retval);
3521 nsresult GetTreeOwner(nsIDocShellTreeOwner **aTreeOwner);
3522 nsresult SetTreeOwner(nsIDocShellTreeOwner *treeOwner);
3523 }
3524
3525 [
3526 object,
3527 uuid(e8f6f3e5-8cee-4be3-8d56-5ed617305bf8),
3528 local
3529 ]
3530 interface nsIDocShell : nsIDocShellTreeItem
3531 {
3532 nsresult LoadURI(nsIURI *uri, nsIDocShellLoadInfo *loadInfo, uint32_t aLoadFlags, bool firstParty);
3533 nsresult LoadStream(nsIInputStream *aStream, nsIURI *aURI, const nsACString *aContentType,
3534 const nsACString *aContentCharset, nsIDocShellLoadInfo *aLoadInfo);
3535 nsresult InternalLoad(nsIURI *aURI, nsIURI *aReferrer, nsISupports *aOwner, uint32_t aFlags, const PRUnichar *aWindowTarget,
3536 const char *aTypeHint, nsACString *aFileName, nsIInputStream *aPostDataStream, nsIInputStream *aHeadersStream,
3537 uint32_t aLoadFlags, nsISHEntry *aSHEntry, bool firstParty, nsIDocShell **aDocShell, nsIRequest **aRequest);
3538 nsresult AddState(nsIVariant *aData, const nsAString *aTitle, const nsAString *aURL, bool aReplace, JSContext *cx);
3539 nsresult CreateLoadInfo(nsIDocShellLoadInfo **loadInfo);
3540 nsresult PrepareForNewContentModel();
3541 nsresult SetCurrentURI(nsIURI *aURI);
3542 nsresult FirePageHideNotification(bool isUnload);
3543 nsresult GetPresContext(void /*nsPresContext*/ **aPresContext);
3544 nsIPresShell *GetPresShell();
3545 nsresult GetEldestPresShell(nsIPresShell **aEldestPresShell);
3546 nsresult GetContentViewer(nsIContentViewer **aContentViewer);
3547 nsresult GetChromeEventHandler(nsIDOMEventTarget **aChromeEventHandler);
3548 nsresult SetChromeEventHandler(nsIDOMEventTarget *aChromeEventHandler);
3549 nsresult GetAllowPlugins(bool *aAllowPlugins);
3550 nsresult SetAllowPlugins(bool aAllowPlugins);
3551 nsresult GetAllowJavascript(bool *aAllowJavascript);
3552 nsresult SetAllowJavascript(bool aAllowJavascript);
3553 nsresult GetDisableNoScript(bool *aDisableNoScript);
3554 nsresult SetDisableNoScript(bool aDisableNoScript);
3555 nsresult GetAllowMetaRedirects(bool *aAllowMetaRedirects);
3556 nsresult SetAllowMetaRedirects(bool aAllowMetaRedirects);
3557 nsresult GetAllowSubframes(bool *aAllowSubframes);
3558 nsresult SetAllowSubframes(bool aAllowSubframes);
3559 nsresult GetAllowImages(bool *aAllowImages);
3560 nsresult SetAllowImages(bool aAllowImages);
3561 nsresult GetAllowDNSPrefetch(bool *aAllowDNSPrefetch);
3562 nsresult SetAllowDNSPrefetch(bool aAllowDNSPrefetch);
3563 nsresult GetAllowWindowControl(bool *aAllowWindowControl);
3564 nsresult SetAllowWindowControl(bool aAllowWindowControl);
3565 nsresult GetDocShellEnumerator(int32_t aItemType, int32_t aDirection, nsISimpleEnumerator **_retval);
3566 nsresult GetAppType(uint32_t *aAppType);
3567 nsresult SetAppType(uint32_t aAppType);
3568 nsresult GetAllowAuth(bool *aAllowAuth);
3569 nsresult SetAllowAuth(bool aAllowAuth);
3570 nsresult GetZoom(float *aZoom);
3571 nsresult SetZoom(float aZoom);
3572 nsresult GetMarginWidth(int32_t *aMarginWidth);
3573 nsresult SetMarginWidth(int32_t aMarginWidth);
3574 nsresult GetMarginHeight(int32_t *aMarginHeight);
3575 nsresult SetMarginHeight(int32_t aMarginHeight);
3576 nsresult TabToTreeOwner(bool forward, bool *tookFocus);
3577 nsresult GetBusyFlags(uint32_t *aBusyFlags);
3578 nsresult GetLoadType(uint32_t *aLoadType);
3579 nsresult SetLoadType(uint32_t aLoadType);
3580 nsresult IsBeingDestroyed(bool *_retval);
3581 nsresult GetIsExecutingOnLoadHandler(bool *aIsExecutingOnLoadHandler);
3582 nsresult GetLayoutHistoryState(nsILayoutHistoryState **aLayoutHistoryState);
3583 nsresult SetLayoutHistoryState(nsILayoutHistoryState *aLayoutHistoryState);
3584 nsresult GetShouldSaveLayoutState(bool *aShouldSaveLayoutState);
3585 nsresult GetSecurityUI(nsISecureBrowserUI **aSecurityUI);
3586 nsresult SetSecurityUI(nsISecureBrowserUI *aSecurityUI);
3587 nsresult SuspendRefreshURIs();
3588 nsresult ResumeRefreshURIs();
3589 nsresult BeginRestore(nsIContentViewer *viewer, bool top);
3590 nsresult FinishRestore();
3591 nsresult GetRestoringDocument(bool *aRestoringDocument);
3592 nsresult GetUseErrorPages(bool *aUseErrorPages);
3593 nsresult SetUseErrorPages(bool aUseErrorPages);
3594 nsresult GetPreviousTransIndex(int32_t *aPreviousTransIndex);
3595 nsresult GetLoadedTransIndex(int32_t *aLoadedTransIndex);
3596 nsresult HistoryPurged(int32_t numEntries);
3597 nsresult GetSessionStorageForPrincipal(nsIPrincipal *principal, const nsAString *documentURI,
3598 bool create, nsIDOMStorage **_retval);
3599 nsresult AddSessionStorage(nsIPrincipal *principal, nsIDOMStorage *storage);
3600 nsresult CloneSessionStoragesTo(nsIDocShell *docShell);
3601 nsresult ClearSessionStorages();
3602 nsresult GetCurrentDocumentChannel(nsIChannel **aCurrentDocumentChannel);
3603 nsresult SetChildOffset(uint32_t offset);
3604 nsresult GetIsInUnload(bool *aIsInUnload);
3605 nsresult GetChannelIsUnsafe(bool *aChannelIsUnsafe);
3606 nsresult GetHasMixedActiveContentLoaded(bool *aHasMixedActiveContentLoaded);
3607 nsresult GetHasMixedActiveContentBlocked(bool *aHasMixedActiveContentBlocked);
3608 nsresult GetHasMixedDisplayContentLoaded(bool *aHasMixedDisplayContentLoaded);
3609 nsresult GetHasMixedDisplayContentBlocked(bool *aHasMixedDisplayContentBlocked);
3610 void DetachEditorFromWindow();
3611 nsresult GetIsOffScreenBrowser(bool *aIsOffScreenBrowser);
3612 nsresult SetIsOffScreenBrowser(bool aIsOffScreenBrowser);
3613 nsresult GetPrintPreview(nsIWebBrowserPrint **aPrintPreview);
3614 nsresult GetCanExecuteScripts(bool *aCanExecuteScripts);
3615 nsresult GetIsActive(bool *aIsActive);
3616 nsresult SetIsActive(bool aIsActive);
3617 nsresult GetHistoryID(uint64_t *aHistoryID);
3618 nsresult GetIsAppTab(bool *aIsAppTab);
3619 nsresult SetIsAppTab(bool aIsAppTab);
3620 nsresult CreateAboutBlankContentViewer(nsIPrincipal *aPrincipal);
3621 nsresult GetCharset(char **aCharset);
3622 nsresult SetCharset(const char * aCharset);
3623 nsresult GetForcedCharset(nsIAtom **aForcedCharset);
3624 nsresult SetForcedCharset(nsIAtom *aForcedCharset);
3625 nsresult GetParentCharset(nsIAtom **aParentCharset);
3626 nsresult SetParentCharset(nsIAtom *aParentCharset);
3627 nsresult GetParentCharsetSource(int32_t *aParentCharsetSource);
3628 nsresult SetParentCharsetSource(int32_t aParentCharsetSource);
3629 nsresult AddWeakPrivacyTransitionObserver(nsIPrivacyTransitionObserver *obs);
3630 nsresult GetIsBrowserElement(bool *aIsBrowserElement);
3631 nsresult GetIsApp(bool *aIsApp);
3632 nsresult GetIsBrowserOrApp(bool *aIsBrowserOrApp);
3633 nsresult GetIsInBrowserElement(bool *aIsInBrowserElement);
3634 nsresult GetIsInBrowserOrApp(bool *aIsInBrowserOrApp);
3635 nsresult SetIsApp(uint32_t ownAppId);
3636 nsresult SetIsBrowserInsideApp(uint32_t containingAppId);
3637 nsresult GetAppId(uint32_t *aAppId);
3638 nsresult GetSameTypeParentIgnoreBrowserAndAppBoundaries(nsIDocShell **_retval);
3639 nsresult GetAsyncPanZoomEnabled(bool *aAsyncPanZoomEnabled);
3640 nsresult GetSandboxFlags(uint32_t *aSandboxFlags);
3641 nsresult SetSandboxFlags(uint32_t aSandboxFlags);
3642 nsresult GetMixedContentChannel(nsIChannel **aMixedContentChannel);
3643 nsresult SetMixedContentChannel(nsIChannel *aMixedContentChannel);
3644 nsresult GetAllowMixedContentAndConnectionData(bool *rootHasSecureConnection, bool *allowMixedContent, bool *isRootDocShell);
3645 bool PluginsAllowedInCurrentDoc();
3646 nsresult GetFullscreenAllowed(bool *aFullscreenAllowed);
3647 nsresult SetFullscreenAllowed(bool allowed);
3648 nsresult GetAffectPrivateSessionLifetime(bool *aAffectPrivateSessionLifetime);
3649 nsresult SetAffectPrivateSessionLifetime(bool aAffectPrivateSessionLifetime);
3650 nsresult GetMayEnableCharacterEncodingMenu(bool *aMayEnableCharacterEncodingMenu);
3651 nsresult GetEditor(nsIEditor **aEditor);
3652 nsresult SetEditor(nsIEditor *aEditor);
3653 nsresult GetEditable(bool *aEditable);
3654 nsresult GetHasEditingSession(bool *aHasEditingSession);
3655 nsresult MakeEditable(bool inWaitForUriLoad);
3656 }
3657
3658 [
3659 object,
3660 uuid(16fe5e3e-eadc-4312-9d44-b6bedd6b5474),
3661 local
3662 ]
3663 interface nsIMutationObserver : nsISupports
3664 {
3665 void CharacterDataWillChange(nsIDocument *aDocument, nsIContent *aContent,
3666 void /*CharacterDataChangeInfo*/ *aInfo);
3667 void CharacterDataChanged(nsIDocument *aDocument, nsIContent *aContent,
3668 void /*CharacterDataChangeInfo*/ *aInfo);
3669 void AttributeWillChange(nsIDocument *aDocument, nsIContent *aContent, int32_t aNameSpaceID,
3670 nsIAtom *aAttribute, int32_t aModType);
3671 void AttributeChanged(nsIDocument *aDocument, nsIContent *aContent, int32_t aNameSpaceID,
3672 nsIAtom *aAttribute, int32_t aModType);
3673 void AttributeSetToCurrentValue(nsIDocument *aDocument, /*mozilla::dom::Element*/ void *aElement,
3674 int32_t aNameSpaceID, nsIAtom *aAttribute);
3675 void ContentAppended(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aFirstNewContent,
3676 int32_t aNewIndexInContainer);
3677 void ContentInserted(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
3678 int32_t aIndexInContainer);
3679 void ContentRemoved(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
3680 int32_t aIndexInContainer, nsIContent *aPreviousSibling);
3681 void NodeWillBeDestroyed(const nsINode *aNode);
3682 void ParentChainChanged(nsIContent *aContent);
3683 }
3684
3685 [
3686 object,
3687 uuid(2c4ad90a-740e-4212-ba3f-feacda4b929e),
3688 local
3689 ]
3690 interface nsIParser : nsISupports
3691 {
3692 typedef int nsDTDMode;
3693 typedef int eParserCommands;
3694
3695 /* From nsParserBase: */
3696 bool IsParserEnabled();
3697 nsresult GetChannel(nsIChannel **aChannel);
3698
3699 void SetContentSink(nsIContentSink *aSink);
3700 nsIContentSink *GetContentSink();
3701 void GetCommand(nsACString *aCommand);
3702 void SetCommand2(const char *aCommand);
3703 void SetCommand(eParserCommands aParserCommand);
3704 void SetDocumentCharset(const nsACString *aCharset, int32_t aSource);
3705 void GetDocumentCharset(nsACString *oCharset, int32_t *oSource);
3706 nsresult GetDTD(nsIDTD **aDTD);
3707 nsIStreamListener *GetStreamListener();
3708 nsresult ContinueInterruptedParsing();
3709 void BlockParser();
3710 void UnblockParser();
3711 void ContinueInterruptedParsingAsync();
3712 bool IsComplete();
3713 nsresult Parse(nsIURI *aURL, nsIRequestObserver *aListener, void *aKey, nsDTDMode aMode);
3714 nsresult Terminate();
3715 nsresult ParseFragment(const nsAString *aSourceBuffer, void /*nsTArray<nsString>*/ *aTagStack);
3716 nsresult BuildModel();
3717 nsresult CancelParsingEvents();
3718 void Reset();
3719 bool IsInsertionPointDefined();
3720 void BeginEvaluatingParserInsertedScript();
3721 void EndEvaluatingParserInsertedScript();
3722 void MarkAsNotScriptCreated(const char *aCommand);
3723 bool IsScriptCreated();
3724 }
3725
3726 [
3727 object,
3728 uuid(900bc4bc-8b6c-4cba-82fa-568a80fffd3e),
3729 local
3730 ]
3731 interface nsIDocumentObserver : nsIMutationObserver
3732 {
3733 typedef uint32_t nsUpdateType;
3734
3735 typedef struct {
3736 uint64_t mStates;
3737 } nsEventStates;
3738
3739 void BeginUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
3740 void EndUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
3741 void BeginLoad(nsIDocument *aDocument);
3742 void EndLoad(nsIDocument *aDocument);
3743 void ContentStatesChanged(nsIDocument *aDocument, nsIContent *aContent, nsEventStates *aStateMask);
3744 void DocumentStatesChanged(nsIDocument *aDocument, nsEventStates *aStateMask);
3745 void StyleSheetAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, bool aDocumentSheet);
3746 void StyleSheetRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, bool aDocumentSheet);
3747 void StyleSheetApplicableStateChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet,
3748 bool aApplicable);
3749 void StyleRuleChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aOldStyleRule,
3750 nsIStyleRule *aNewStyleRule);
3751 void StyleRuleAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
3752 void StyleRuleRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
3753 void BindToDocument(nsIDocument *aDocument, nsIContent *aContent);
3754 void AttemptToExecuteScript(nsIContent *aContent, nsIParser *aParser, bool *aBlock);
3755 }
3756
3757 [
3758 object,
3759 uuid(3682dd99-8560-44f4-9b8f-ccce9d7b96fb),
3760 local
3761 ]
3762 interface nsIContentUtils : nsISupports
3763 {
3764 bool IsSafeToRunScript();
3765 nsresult AddDocumentObserver(nsIDocument *aDocument, nsIDocumentObserver *aObserver);
3766 nsresult RemoveDocumentObserver(nsIDocument *aDocument, nsIDocumentObserver *aObserver);
3767 nsresult AddMutationObserver(nsINode *aNode, nsIMutationObserver *aObserver);
3768 nsresult RemoveMutationObserver(nsINode *aNode, nsIMutationObserver *aObserver);
3769 nsresult AddScriptRunner(nsIRunnable *aRunnable);
3770 JSContext *GetContextFromDocument(nsIDocument *aDocument);
3771 }
3772
3773 [
3774 object,
3775 uuid(8f672000-bab9-4c60-aaaf-2673c4e2a4c6),
3776 local
3777 ]
3778 interface nsIPluginInstance : nsISupports
3779 {
3780 nsresult GetDOMElement(nsIDOMElement **aDOMElement);
3781 }
3782
3783 cpp_quote("DEFINE_GUID(IID_nsCycleCollectionISupports, 0xc61eac14,0x5f7a,0x4481,0x96,0x5e,0x7e,0xaa,0x6e,0xff,0xa8,0x5f);")