[INTRIN]
[reactos.git] / reactos / base / shell / ie / 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.24\"")
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 nsIDOMAttr;
90 interface nsIDOMDocument;
91 interface nsIDOMEvent;
92 interface nsIEditor;
93 interface nsISelectionController;
94 interface nsITransactionManager;
95 interface nsITransaction;
96 interface nsIInlineSpellChecker;
97 interface nsIOutputStream;
98 interface nsIEditorObserver;
99 interface nsIEditActionListener;
100 interface nsIDocumentStateListener;
101 interface nsIDOMCSSStyleSheet;
102 interface nsIDOMDocumentView;
103 interface nsIDOMWindow;
104 interface nsIDOMElement;
105 interface nsIDOMRange;
106 interface nsIDOMEventTarget;
107 interface nsISelection;
108 interface nsIDOMHTMLSelectElement;
109 interface nsIFile;
110
111 interface IMoniker;
112
113 [
114 object,
115 uuid(00000000-0000-0000-c000-000000000046),
116 local
117 ]
118 interface nsISupports
119 {
120 nsresult QueryInterface(nsIIDRef riid, void **result);
121 nsrefcnt AddRef();
122 nsrefcnt Release();
123 }
124
125 /* Currently we don't need a full declaration of these interfaces */
126 typedef nsISupports nsISHistory;
127 typedef nsISupports nsIWidget;
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(2cd7f6a6-63f3-4bd6-a0f5-6e3d6dcff81b),
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(cb5564cd-26ec-418f-a6d6-1d57cd2c971c),
835 local
836 ]
837 interface nsIDOMMozNamedAttrMap : nsISupports
838 {
839 nsresult GetNamedItem(const nsAString *name, nsIDOMAttr **_retval);
840 nsresult SetNamedItem(nsIDOMAttr *arg, nsIDOMAttr **_retval);
841 nsresult RemoveNamedItem(const nsAString *name, nsIDOMAttr **_retval);
842 nsresult Item(uint32_t index, nsIDOMAttr **_retval);
843 nsresult GetLength(uint32_t *aLength);
844 nsresult GetNamedItemNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMAttr **_retval);
845 nsresult SetNamedItemNS(nsIDOMAttr *arg, nsIDOMAttr **_retval);
846 nsresult RemoveNamedItemNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMAttr **_retval);
847 }
848
849 [
850 object,
851 uuid(56545150-a001-484e-9ed4-cb319eebd7b3),
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 GetOwnerDocument(nsIDOMDocument **aOwnerDocument);
892 nsresult InsertBefore(nsIDOMNode *newChild, nsIDOMNode *refChild, nsIDOMNode **_retval);
893 nsresult ReplaceChild(nsIDOMNode *newChild, nsIDOMNode *oldChild, nsIDOMNode **_retval);
894 nsresult RemoveChild(nsIDOMNode *oldChild, nsIDOMNode **_retval);
895 nsresult AppendChild(nsIDOMNode *newChild, nsIDOMNode **_retval);
896 nsresult HasChildNodes(bool *_retval);
897 nsresult CloneNode(bool deep, uint8_t _argc, nsIDOMNode **_retval);
898 nsresult Normalize();
899 nsresult GetNamespaceURI(nsAString *aNamespaceURI);
900 nsresult GetPrefix(nsAString *aPrefix);
901 nsresult GetLocalName(nsAString *aLocalName);
902 nsresult HasAttributes(bool *_retval);
903 nsresult GetDOMBaseURI(nsAString *aBaseURI);
904 nsresult CompareDocumentPosition(nsIDOMNode *other, uint16_t *_retval);
905 nsresult GetTextContent(nsAString *aTextContent);
906 nsresult SetTextContent(const nsAString *aTextContent);
907 nsresult LookupPrefix(const nsAString *namespaceURI, nsAString *_retval);
908 nsresult IsDefaultNamespace(const nsAString *namespaceURI, bool *_retval);
909 nsresult LookupNamespaceURI(const nsAString *prefix, nsAString *_retval);
910 nsresult IsEqualNode(nsIDOMNode *arg, bool *_retval);
911 nsresult SetUserData(const nsAString *key, nsIVariant *data, nsIDOMUserDataHandler *handler, nsIVariant **_retval);
912 nsresult GetUserData(const nsAString *key, nsIVariant **_retval);
913 nsresult Contains(nsIDOMNode *aOther, bool *_retval);
914
915 nsresult GetMshtmlNode(nsISupports **aMshtmlNode);
916 nsresult SetMshtmlNode(nsISupports *aMshtmlNode);
917 }
918
919 [
920 object,
921 uuid(a974a4d3-2ff1-445b-8b8e-0aada5d4eedc),
922 local
923 ]
924 interface nsIDOMAttr : nsIDOMNode
925 {
926 nsresult GetName(nsAString *aName);
927 nsresult GetSpecified(bool *aSpecified);
928 nsresult GetValue(nsAString *aValue);
929 nsresult SetValue(const nsAString *aValue);
930 nsresult GetOwnerElement(nsIDOMElement **aOwnerElement);
931 nsresult GetIsId(bool *aIsId);
932 }
933
934 [
935 object,
936 uuid(b2f824c4-d9d3-499b-8d3b-45c8245497c6),
937 local
938 ]
939 interface nsIDOMClientRect : nsISupports
940 {
941 nsresult GetLeft(float *aLeft);
942 nsresult GetTop(float *aTop);
943 nsresult GetRight(float *aRight);
944 nsresult GetBottom(float *aBottom);
945 nsresult GetWidth(float *aWidth);
946 nsresult GetHeight(float *aHeight);
947 }
948
949 [
950 object,
951 uuid(43d985da-b7ee-4d1f-a26f-348ccd9506f3),
952 local
953 ]
954 interface nsIDOMElement : nsIDOMNode
955 {
956 nsresult GetTagName(nsAString *aTagName);
957 nsresult GetClassList(nsISupports **aClassList);
958 nsresult GetAttributes(nsIDOMMozNamedAttrMap **aAttributes);
959 nsresult GetAttribute(const nsAString *name, nsAString *_retval);
960 nsresult GetAttributeNS(const nsAString *namespaceURI, const nsAString *localName, nsAString *_retval);
961 nsresult SetAttribute(const nsAString *name, const nsAString *value);
962 nsresult SetAttributeNS(const nsAString *namespaceURI, const nsAString *qualifiedName, const nsAString *value);
963 nsresult RemoveAttribute(const nsAString *name);
964 nsresult RemoveAttributeNS(const nsAString *namespaceURI, const nsAString *localName);
965 nsresult HasAttribute(const nsAString *name, bool *_retval);
966 nsresult HasAttributeNS(const nsAString *namespaceURI, const nsAString *localName, bool *_retval);
967 nsresult GetAttributeNode(const nsAString *name, nsIDOMAttr **_retval);
968 nsresult SetAttributeNode(nsIDOMAttr *newAttr, nsIDOMAttr **_retval);
969 nsresult RemoveAttributeNode(nsIDOMAttr *oldAttr, nsIDOMAttr **_retval);
970 nsresult GetAttributeNodeNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMAttr **_retval);
971 nsresult SetAttributeNodeNS(nsIDOMAttr *newAttr, nsIDOMAttr **_retval);
972 nsresult GetElementsByTagName(const nsAString *name, nsIDOMHTMLCollection **_retval);
973 nsresult GetElementsByTagNameNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMHTMLCollection **_retval);
974 nsresult GetElementsByClassName(const nsAString *classes, nsIDOMHTMLCollection **_retval);
975 nsresult GetChildElements(nsIDOMNodeList **aChildren);
976 nsresult GetFirstElementChild(nsIDOMElement **aFirstElementChild);
977 nsresult GetLastElementChild(nsIDOMElement **aLastElementChild);
978 nsresult GetPreviousElementSibling(nsIDOMElement **aPreviousElementSibling);
979 nsresult GetNextElementSibling(nsIDOMElement **aNextElementSibling);
980 nsresult GetChildElementCount(uint32_t *aChildElementCount);
981 nsresult Remove();
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(e29ddc73-ac40-40fe-8bbd-14bf2d52c53a),
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(889602bb-4681-4b01-8582-4fad1fbb8325),
1084 local
1085 ]
1086 interface nsIDOMHTMLHeadElement : nsIDOMHTMLElement
1087 {
1088 }
1089
1090 [
1091 object,
1092 uuid(84f72a38-1873-46f8-937c-1df22d7e7cae),
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 nsresult Remove();
1106 }
1107
1108 [
1109 object,
1110 uuid(d14d13b4-21d5-49e2-8d59-76a24156db54),
1111 local
1112 ]
1113 interface nsIDOMText : nsIDOMCharacterData
1114 {
1115 nsresult SplitText(uint32_t offset, nsIDOMText **_retval);
1116 nsresult GetWholeText(nsAString *aWholeText);
1117 }
1118
1119 [
1120 object,
1121 uuid(e702a5d2-3aa8-4788-b048-2d3b3e6d16f2),
1122 local
1123 ]
1124 interface nsIDOMComment : nsIDOMCharacterData
1125 {
1126 }
1127
1128 [
1129 object,
1130 uuid(33127aed-9d6a-4b0d-95aa-0529f51bcb9c),
1131 local
1132 ]
1133 interface nsIDOMDocumentFragment : nsIDOMNode
1134 {
1135 }
1136
1137 [
1138 object,
1139 uuid(75996de6-6b0f-43e5-ae79-c98fa669da9a),
1140 local
1141 ]
1142 interface nsIDOMDocument : nsIDOMNode
1143 {
1144 nsresult GetDoctype(nsIDOMDocumentType **aDoctype);
1145 nsresult GetImplementation(nsIDOMDOMImplementation **aImplementation);
1146 nsresult GetDocumentElement(nsIDOMElement **aDocumentElement);
1147 nsresult CreateElement(const nsAString *tagName, nsIDOMElement **_retval);
1148 nsresult CreateDocumentFragment(nsIDOMDocumentFragment **_retval);
1149 nsresult CreateTextNode(const nsAString *data, nsIDOMText **_retval);
1150 nsresult CreateComment(const nsAString *data, nsIDOMComment **_retval);
1151 nsresult CreateCDATASection(const nsAString *data, nsIDOMCDATASection **_retval);
1152 nsresult CreateProcessingInstruction(const nsAString *target, const nsAString *data, nsIDOMProcessingInstruction **_retval);
1153 nsresult CreateAttribute(const nsAString *name, nsIDOMAttr **_retval);
1154 nsresult GetElementsByTagName(const nsAString *tagname, nsIDOMNodeList **_retval);
1155 nsresult ImportNode(nsIDOMNode *importedNode, bool deep, uint8_t _argc, nsIDOMNode **_retval);
1156 nsresult CreateElementNS(const nsAString *namespaceURI, const nsAString *qualifiedName, nsIDOMElement **_retval);
1157 nsresult CreateAttributeNS(const nsAString *namespaceURI, const nsAString *qualifiedName, nsIDOMAttr **_retval);
1158 nsresult GetElementsByTagNameNS(const nsAString *namespaceURI, const nsAString *localName, nsIDOMNodeList **_retval);
1159 nsresult GetElementById(const nsAString *elementId, nsIDOMElement **_retval);
1160 nsresult GetInputEncoding(nsAString *aInputEncoding);
1161 nsresult GetDocumentURI(nsAString *aDocumentURI);
1162 nsresult GetURL(nsAString *aURL);
1163 nsresult AdoptNode(nsIDOMNode *source, nsIDOMNode **_retval);
1164 nsresult CreateRange(nsIDOMRange **_retval);
1165 nsresult CreateNodeIterator(nsIDOMNode *root, uint32_t whatToShow, nsIDOMNodeFilter *filter, uint8_t _argc,
1166 nsIDOMNodeIterator **_retval);
1167 nsresult CreateTreeWalker(nsIDOMNode *root, uint32_t whatToShow, nsIDOMNodeFilter *filter, uint8_t _argc,
1168 nsIDOMTreeWalker **_retval);
1169 cpp_quote("#undef CreateEvent")
1170 nsresult CreateEvent(const nsAString *eventType, nsIDOMEvent **_retval);
1171 nsresult GetDefaultView(nsIDOMWindow **aDefaultView);
1172 nsresult GetCharacterSet(nsAString *aCharacterSet);
1173 nsresult GetDir(nsAString *aDir);
1174 nsresult SetDir(const nsAString *aDir);
1175 nsresult GetLocation(nsIDOMLocation **aLocation);
1176 nsresult GetTitle(nsAString *aTitle);
1177 nsresult SetTitle(const nsAString *aTitle);
1178 nsresult GetReadyState(nsAString *aReadyState);
1179 nsresult GetLastModified(nsAString *aLastModified);
1180 nsresult GetReferrer(nsAString *aReferrer);
1181 nsresult HasFocus(bool *_retval);
1182 nsresult GetActiveElement(nsIDOMElement **aActiveElement);
1183 nsresult GetElementsByClassName(const nsAString *classes, nsIDOMNodeList **_retval);
1184 nsresult GetStyleSheets(nsIDOMStyleSheetList **aStyleSheets);
1185 nsresult GetPreferredStyleSheetSet(nsAString *aPreferredStyleSheetSet);
1186 nsresult GetSelectedStyleSheetSet(nsAString *aSelectedStyleSheetSet);
1187 nsresult SetSelectedStyleSheetSet(const nsAString *aSelectedStyleSheetSet);
1188 nsresult GetLastStyleSheetSet(nsAString *aLastStyleSheetSet);
1189 nsresult GetStyleSheetSets(nsIDOMDOMStringList **aStyleSheetSets);
1190 nsresult EnableStyleSheetsForSet(const nsAString *name);
1191 nsresult ElementFromPoint(float x, float y, nsIDOMElement **_retval);
1192 nsresult GetContentType(nsAString *aContentType);
1193 nsresult GetMozSyntheticDocument(bool *aMozSyntheticDocument);
1194 nsresult GetCurrentScript(nsIDOMElement **aCurrentScript);
1195 nsresult ReleaseCapture();
1196 nsresult MozSetImageElement(const nsAString *aImageElementId, nsIDOMElement *aImageElement);
1197 nsresult GetMozFullScreenElement(nsIDOMElement **aMozFullScreenElement);
1198 nsresult MozCancelFullScreen();
1199 nsresult GetMozFullScreen(bool *aMozFullScreen);
1200 nsresult GetMozFullScreenEnabled(bool *aMozFullScreenEnabled);
1201 nsresult GetMozPointerLockElement(nsIDOMElement **aMozPointerLockElement);
1202 nsresult CaretPositionFromPoint(float x, float y, nsISupports **_retval);
1203 nsresult MozExitPointerLock();
1204 nsresult GetOnreadystatechange(JSContext* cx, jsval aOnreadystatechange);
1205 nsresult SetOnreadystatechange(JSContext* cx, const jsval *aOnreadystatechange);
1206 nsresult GetOnmouseenter(JSContext* cx, jsval *aOnmouseenter);
1207 nsresult SetOnmouseenter(JSContext* cx, const jsval *aOnmouseenter);
1208 nsresult GetOnmouseleave(JSContext* cx, jsval *aOnmouseleave) = 0;
1209 nsresult SetOnmouseleave(JSContext* cx, const jsval *aOnmouseleave);
1210 nsresult GetHidden(bool *aHidden);
1211 nsresult GetMozHidden(bool *aMozHidden);
1212 nsresult GetVisibilityState(nsAString *aVisibilityState);
1213 nsresult GetMozVisibilityState(nsAString *aMozVisibilityState);
1214 nsresult GetCompatMode(nsAString *aCompatMode);
1215 }
1216
1217 [
1218 object,
1219 uuid(fd76e045-8d97-4a97-ad75-eac5ae2f3ea4),
1220 local
1221 ]
1222 interface nsIDOMHTMLDocument : nsIDOMDocument
1223 {
1224 nsresult GetDomain(nsAString *aDomain);
1225 nsresult SetDomain(const nsAString *aDomain);
1226 nsresult GetCookie(nsAString *aCookie);
1227 nsresult SetCookie(const nsAString *aCookie);
1228 nsresult GetHead(nsIDOMHTMLHeadElement **aHead);
1229 nsresult GetBody(nsIDOMHTMLElement **aBody);
1230 nsresult SetBody(nsIDOMHTMLElement *aBody);
1231 nsresult GetImages(nsIDOMHTMLCollection **aImages);
1232 nsresult GetEmbeds(nsIDOMHTMLCollection **aEmbeds);
1233 nsresult GetPlugins(nsIDOMHTMLCollection **aPlugins);
1234 nsresult GetLinks(nsIDOMHTMLCollection **aLinks);
1235 nsresult GetForms(nsIDOMHTMLCollection **aForms);
1236 nsresult GetScripts(nsIDOMHTMLCollection **aScripts);
1237 nsresult GetElementsByName(const nsAString *elementName, nsIDOMNodeList **_retval);
1238 nsresult GetItems(const nsAString *types, nsIDOMNodeList **_retval);
1239 nsresult Open(const nsAString *aContentTypeOrUrl, const nsAString *aReplaceOrName, const nsAString *aFeatures,
1240 JSContext *cx, uint8_t _argc, nsISupports **_retval);
1241 nsresult Close();
1242 nsresult Write(const nsAString *text, JSContext *cx);
1243 nsresult Writeln(const nsAString *text, JSContext *cx);
1244 nsresult GetDesignMode(nsAString *aDesignMode);
1245 nsresult SetDesignMode(const nsAString *aDesignMode);
1246 nsresult ExecCommand(const nsAString *commandID, bool doShowUI, const nsAString *value, bool *_retval);
1247 nsresult QueryCommandEnabled(const nsAString *commandID, bool *_retval);
1248 nsresult QueryCommandIndeterm(const nsAString *commandID, bool *_retval);
1249 nsresult QueryCommandState(const nsAString *commandID, bool *_retval);
1250 nsresult QueryCommandSupported(const nsAString *commandID, bool *_retval);
1251 nsresult QueryCommandValue(const nsAString *commandID, nsAString *_retval);
1252 nsresult GetFgColor(nsAString *aFgColor);
1253 nsresult SetFgColor(const nsAString *aFgColor);
1254 nsresult GetBgColor(nsAString *aBgColor);
1255 nsresult SetBgColor(const nsAString *aBgColor);
1256 nsresult GetLinkColor(nsAString *aLinkColor);
1257 nsresult SetLinkColor(const nsAString *aLinkColor);
1258 nsresult GetVlinkColor(nsAString *aVlinkColor);
1259 nsresult SetVlinkColor(const nsAString *aVlinkColor);
1260 nsresult GetAlinkColor(nsAString *aAlinkColor);
1261 nsresult SetAlinkColor(const nsAString *aAlinkColor);
1262 nsresult GetAnchors(nsIDOMHTMLCollection **aAnchors);
1263 nsresult GetApplets(nsIDOMHTMLCollection **aApplets);
1264 nsresult Clear();
1265 nsresult GetSelection(nsISelection **_retval);
1266 nsresult CaptureEvents(int32_t eventFlags);
1267 nsresult ReleaseEvents(int32_t eventFlags);
1268 nsresult RouteEvent(nsIDOMEvent *evt);
1269 }
1270
1271 [
1272 object,
1273 uuid(1f94055c-42e7-4a30-96a1-6a804f1c2d1e),
1274 local
1275 ]
1276 interface nsIDOMRange : nsISupports
1277 {
1278 enum {
1279 NS_START_TO_START,
1280 NS_START_TO_END,
1281 NS_END_TO_END,
1282 NS_END_TO_START
1283 };
1284
1285 nsresult GetStartContainer(nsIDOMNode **aStartContainer);
1286 nsresult GetStartOffset(int32_t *aStartOffset);
1287 nsresult GetEndContainer(nsIDOMNode **aEndContainer);
1288 nsresult GetEndOffset(int32_t *aEndOffset);
1289 nsresult GetCollapsed(bool *aCollapsed);
1290 nsresult GetCommonAncestorContainer(nsIDOMNode **aCommonAncestorContainer);
1291 nsresult SetStart(nsIDOMNode *refNode, int32_t offset);
1292 nsresult SetEnd(nsIDOMNode *refNode, int32_t offset);
1293 nsresult SetStartBefore(nsIDOMNode *refNode);
1294 nsresult SetStartAfter(nsIDOMNode *refNode);
1295 nsresult SetEndBefore(nsIDOMNode *refNode);
1296 nsresult SetEndAfter(nsIDOMNode *refNode);
1297 nsresult Collapse(bool toStart);
1298 nsresult SelectNode(nsIDOMNode *refNode);
1299 nsresult SelectNodeContents(nsIDOMNode *refNode);
1300 nsresult CompareBoundaryPoints(uint16_t how, nsIDOMRange *sourceRange, int16_t *_retval);
1301 nsresult DeleteContents();
1302 nsresult ExtractContents(nsIDOMDocumentFragment **_retval);
1303 nsresult CloneContents(nsIDOMDocumentFragment **_retval);
1304 nsresult InsertNode(nsIDOMNode *newNode);
1305 nsresult SurroundContents(nsIDOMNode *newParent);
1306 nsresult CloneRange(nsIDOMRange **_retval);
1307 nsresult ToString(nsAString *_retval);
1308 nsresult Detach();
1309 nsresult CreateContextualFragment([in] const nsAString *fragment, [out] nsIDOMDocumentFragment **_retval);
1310 nsresult IsPointInRange([in] nsIDOMNode *parent, [in] int32_t offset, [out] bool *_retval);
1311 nsresult ComparePoint([in] nsIDOMNode *parent, [in] int32_t offset, [out] int16_t *_retval);
1312 nsresult IntersectsNode(nsIDOMNode *node, bool *_retval);
1313 nsresult GetClientRects(nsIDOMClientRectList **_retval);
1314 nsresult GetBoundingClientRect(nsIDOMClientRect **_retval);
1315 }
1316
1317 [
1318 object,
1319 uuid(12cf5a4d-fffb-4f2f-9cec-c65195661d76),
1320 local
1321 ]
1322 interface nsISelection : nsISupports
1323 {
1324 nsresult GetAnchorNode(nsIDOMNode **aAnchorNode);
1325 nsresult GetAnchorOffset(int32_t *aAnchorOffset);
1326 nsresult GetFocusNode(nsIDOMNode **aFocusNode);
1327 nsresult GetFocusOffset(int32_t *aFocusOffset);
1328 nsresult GetIsCollapsed(bool *aIsCollapsed);
1329 bool /* don't use */ Collapsed();
1330 nsresult GetRangeCount(int32_t *aRangeCount);
1331 nsresult GetRangeAt(int32_t index, nsIDOMRange **_retval);
1332 nsresult Collapse(nsIDOMNode *parentNode, int32_t offset);
1333 nsresult CollapseNative(nsINode *parentNode, int32_t offset);
1334 nsresult Extend(nsIDOMNode *parentNode, int32_t offset);
1335 nsresult ExtendNative(nsINode *parentNode, int32_t offset);
1336 nsresult CollapseToStart();
1337 nsresult CollapseToEnd();
1338 nsresult ContainsNode(nsIDOMNode *node, bool entirelyContained, bool *_retval);
1339 nsresult SelectAllChildren(nsIDOMNode *parentNode);
1340 nsresult AddRange(nsIDOMRange *range);
1341 nsresult RemoveRange(nsIDOMRange *range);
1342 nsresult RemoveAllRanges();
1343 nsresult DeleteFromDocument();
1344 nsresult SelectionLanguageChange(bool langRTL);
1345 nsresult ToString(nsAString *_retval);
1346 nsresult Modify(const nsAString *alter, const nsAString *direction, const nsAString *granularity);
1347 }
1348
1349 [
1350 object,
1351 uuid(a6cf906f-15b3-11d2-932e-00805f8add32),
1352 local
1353 ]
1354 interface nsIDOMWindowCollection : nsISupports
1355 {
1356 nsresult GetLength(uint32_t *aLength);
1357 nsresult Item(uint32_t index, nsIDOMWindow **_retval);
1358 nsresult NamedItem(const nsAString *name, nsIDOMWindow **_retval);
1359 }
1360
1361 [
1362 object,
1363 uuid(be62660a-e3f6-409c-a4a9-378364a9526f),
1364 local
1365 ]
1366 interface nsIDOMWindow : nsISupports
1367 {
1368 nsresult GetWindow(nsIDOMWindow **aWindow);
1369 nsresult GetSelf(nsIDOMWindow **aSelf);
1370 nsresult GetDocument(nsIDOMDocument **aDocument);
1371 nsresult GetName(nsAString *aName);
1372 nsresult SetName(const nsAString *aName);
1373 nsresult GetLocation(nsIDOMLocation **aLocation);
1374 nsresult GetHistory(nsIDOMHistory **aHistory);
1375 nsresult GetLocationbar(nsISupports **aLocationbar);
1376 nsresult GetMenubar(nsISupports **aMenubar);
1377 nsresult GetPersonalbar(nsISupports **aPersonalbar);
1378 nsresult GetScrollbars(nsISupports **aScrollbars);
1379 nsresult GetStatusbar(nsISupports **aStatusbar);
1380 nsresult GetToolbar(nsISupports **aToolbar);
1381 nsresult GetStatus(nsAString *aStatus);
1382 nsresult SetStatus(const nsAString *aStatus);
1383 nsresult Close();
1384 nsresult Stop();
1385 nsresult Focus();
1386 nsresult Blur();
1387 nsresult GetLength(uint32_t *aLength);
1388 nsresult GetScriptableTop(nsIDOMWindow **aTop);
1389 nsresult GetRealTop(nsIDOMWindow **aTop);
1390 nsresult GetScriptableParent(nsIDOMWindow **aParent);
1391 nsresult GetRealParent(nsIDOMWindow **aParent);
1392 nsresult GetOpener(nsIDOMWindow **aOpener);
1393 nsresult SetOpener(nsIDOMWindow *aOpener);
1394 nsresult GetScriptableFrameElement(nsIDOMElement **aFrameElement);
1395 nsresult GetRealFrameElement(nsIDOMElement **aFrameElement);
1396 nsresult GetNavigator(nsIDOMNavigator **aNavigator);
1397 nsresult GetApplicationCache(nsIDOMOfflineResourceList **aApplicationCache);
1398 nsresult Alert(const nsAString *text);
1399 nsresult Confirm(const nsAString *text, bool *_retval);
1400 nsresult Prompt(const nsAString *aMessage, const nsAString *aInitial, nsAString *_retval);
1401 nsresult Print();
1402 nsresult ShowModalDialog(const nsAString *aURI, nsIVariant *aArgs, const nsAString *aOptions, uint8_t _argc, nsIVariant **_retval);
1403 nsresult PostMessageMoz(const long /*jsval*/ *message, const nsAString *targetOrigin, const /*JS::Value*/ void *transfer, JSContext *cx);
1404 nsresult Atob(const nsAString *aAsciiString, nsAString *_retval);
1405 nsresult Btoa(const nsAString *aBase64Data, nsAString *_retval);
1406 nsresult GetSessionStorage(nsIDOMStorage **aSessionStorage);
1407 nsresult GetLocalStorage(nsIDOMStorage **aLocalStorage);
1408 nsresult GetSelection(nsISelection **_retval);
1409 nsresult MatchMedia(const nsAString *media_query_list, nsIDOMMediaQueryList **_retval);
1410 nsresult GetScreen(nsIDOMScreen **aScreen);
1411 nsresult GetInnerWidth(int32_t *aInnerWidth);
1412 nsresult SetInnerWidth(int32_t aInnerWidth);
1413 nsresult GetInnerHeight(int32_t *aInnerHeight);
1414 nsresult SetInnerHeight(int32_t aInnerHeight);
1415 nsresult GetScrollX(int32_t *aScrollX);
1416 nsresult GetPageXOffset(int32_t *aPageXOffset);
1417 nsresult GetScrollY(int32_t *aScrollY);
1418 nsresult GetPageYOffset(int32_t *aPageYOffset);
1419 nsresult Scroll(int32_t xScroll, int32_t yScroll);
1420 nsresult ScrollTo(int32_t xScroll, int32_t yScroll);
1421 nsresult ScrollBy(int32_t xScrollDif, int32_t yScrollDif);
1422 nsresult GetScreenX(int32_t *aScreenX);
1423 nsresult SetScreenX(int32_t aScreenX);
1424 nsresult GetScreenY(int32_t *aScreenY);
1425 nsresult SetScreenY(int32_t aScreenY);
1426 nsresult GetOuterWidth(int32_t *aOuterWidth);
1427 nsresult SetOuterWidth(int32_t aOuterWidth);
1428 nsresult GetOuterHeight(int32_t *aOuterHeight);
1429 nsresult SetOuterHeight(int32_t aOuterHeight);
1430 nsresult GetComputedStyle(nsIDOMElement *elt, const nsAString *pseudoElt, nsIDOMCSSStyleDeclaration **_retval);
1431 nsresult GetDefaultComputedStyle(nsIDOMElement *elt, const nsAString *pseudoElt, nsIDOMCSSStyleDeclaration **_retval);
1432 nsresult GetWindowRoot(nsIDOMEventTarget **aWindowRoot);
1433 nsresult GetFrames(nsIDOMWindowCollection **aFrames);
1434 nsresult GetTextZoom(float *aTextZoom);
1435 nsresult SetTextZoom(float aTextZoom);
1436 nsresult ScrollByLines(int32_t numLines);
1437 nsresult ScrollByPages(int32_t numPages);
1438 nsresult SizeToContent();
1439 nsresult GetContent(nsIDOMWindow **aContent);
1440 nsresult GetPrompter(nsIPrompt **aPrompter);
1441 nsresult GetClosed(bool *aClosed);
1442 nsresult GetCrypto(nsIDOMCrypto **aCrypto);
1443 nsresult GetPkcs11(nsIDOMPkcs11 **aPkcs11);
1444 nsresult GetControllers(nsIControllers **aControllers);
1445 nsresult GetMozInnerScreenX(float *aMozInnerScreenX);
1446 nsresult GetMozInnerScreenY(float *aMozInnerScreenY);
1447 nsresult GetDevicePixelRatio(float *aDevicePixelRatio);
1448 nsresult GetScrollMaxX(int32_t *aScrollMaxX);
1449 nsresult GetScrollMaxY(int32_t *aScrollMaxY);
1450 nsresult GetFullScreen(bool *aFullScreen);
1451 nsresult SetFullScreen(bool aFullScreen);
1452 nsresult Back();
1453 nsresult Forward();
1454 nsresult Home();
1455 nsresult MoveTo(int32_t xPos, int32_t yPos);
1456 nsresult MoveBy(int32_t xDif, int32_t yDif);
1457 nsresult ResizeTo(int32_t width, int32_t height);
1458 nsresult ResizeBy(int32_t widthDif, int32_t heightDif);
1459 nsresult Open(const nsAString *url, const nsAString *name, const nsAString *options, nsIDOMWindow **_retval);
1460 nsresult OpenDialog(const nsAString *url, const nsAString *name, const nsAString *options, nsISupports *aExtraArgument,
1461 nsIDOMWindow **_retval);
1462 nsresult UpdateCommands(const nsAString *action);
1463 nsresult Find(const nsAString *str, bool caseSensitive, bool backwards, bool wrapAround, bool wholeWord,
1464 bool searchInFrames, bool showDialog, bool *_retval);
1465 nsresult GetMozPaintCount(uint64_t *aMozPaintCount);
1466 nsresult MozRequestAnimationFrame(nsIFrameRequestCallback *aCallback, int32_t *_retval);
1467 nsresult RequestAnimationFrame(void /*const JS::Value*/ *aCallback, JSContext* cx, int32_t *_retval);
1468 nsresult MozCancelAnimationFrame(int32_t aHandle);
1469 nsresult MozCancelRequestAnimationFrame(int32_t aHandle);
1470 nsresult CancelAnimationFrame(int32_t aHandle);
1471 nsresult GetMozAnimationStartTime(int64_t *aMozAnimationStartTime);
1472 nsresult GetOnafterprint(JSContext *cx, jsval *aOnafterprint);
1473 nsresult SetOnafterprint(JSContext *cx, const jsval *aOnafterprint);
1474 nsresult GetOnbeforeprint(JSContext *cx, jsval *aOnbeforeprint);
1475 nsresult SetOnbeforeprint(JSContext *cx, const jsval *aOnbeforeprint);
1476 nsresult GetOnbeforeunload(JSContext *cx, jsval *aOnbeforeunload);
1477 nsresult SetOnbeforeunload(JSContext *cx, const jsval *aOnbeforeunload);
1478 nsresult GetOnhashchange(JSContext *cx, jsval *aOnhashchange);
1479 nsresult SetOnhashchange(JSContext *cx, const jsval *aOnhashchange);
1480 nsresult GetOnmessage(JSContext *cx, jsval *aOnmessage);
1481 nsresult SetOnmessage(JSContext *cx, const jsval *aOnmessage);
1482 nsresult GetOnoffline(JSContext *cx, jsval *aOnoffline);
1483 nsresult SetOnoffline(JSContext *cx, const jsval *aOnoffline);
1484 nsresult GetOnonline(JSContext *cx, jsval *aOnonline);
1485 nsresult SetOnonline(JSContext *cx, const jsval *aOnonline);
1486 nsresult GetOnpopstate(JSContext *cx, jsval *aOnpopstate);
1487 nsresult SetOnpopstate(JSContext *cx, const jsval *aOnpopstate);
1488 nsresult GetOnpagehide(JSContext *cx, jsval *aOnpagehide);
1489 nsresult SetOnpagehide(JSContext *cx, const jsval *aOnpagehide);
1490 nsresult GetOnpageshow(JSContext *cx, jsval *aOnpageshow);
1491 nsresult SetOnpageshow(JSContext *cx, const jsval *aOnpageshow);
1492 nsresult GetOnresize(JSContext *cx, jsval *aOnresize);
1493 nsresult SetOnresize(JSContext *cx, const jsval *aOnresize);
1494 nsresult GetOnunload(JSContext *cx, jsval *aOnunload);
1495 nsresult SetOnunload(JSContext *cx, const jsval *aOnunload);
1496 nsresult GetOndevicemotion(JSContext *cx, jsval *aOndevicemotion);
1497 nsresult SetOndevicemotion(JSContext *cx, const jsval *aOndevicemotion);
1498 nsresult GetOndeviceorientation(JSContext *cx, jsval *aOndeviceorientation);
1499 nsresult SetOndeviceorientation(JSContext *cx, const jsval *aOndeviceorientation);
1500 nsresult GetOndeviceproximity(JSContext* cx, jsval *aOndeviceproximity);
1501 nsresult SetOndeviceproximity(JSContext* cx, const jsval *aOndeviceproximity);
1502 nsresult GetOnuserproximity(JSContext* cx, jsval *aOndeviceproximity);
1503 nsresult SetOnuserproximity(JSContext* cx, const jsval *aOndeviceproximity);
1504 nsresult GetOndevicelight(JSContext* cx, jsval *aOndevicelight);
1505 nsresult SetOndevicelight(JSContext* cx, const jsval *aOndevicelight);
1506 nsresult GetOnmouseenter(JSContext* cx, jsval *aOnmouseenter);
1507 nsresult SetOnmouseenter(JSContext* cx, const jsval *aOnmouseenter);
1508 nsresult GetOnmouseleave(JSContext* cx, jsval *aOnmouseleave);
1509 nsresult SetOnmouseleave(JSContext* cx, const jsval *aOnmouseleave);
1510 }
1511
1512 [
1513 object,
1514 uuid(8b29a62f-b448-49f3-9242-241d5cf94ea9),
1515 local
1516 ]
1517 interface nsIDOMHTMLBodyElement : nsIDOMHTMLElement
1518 {
1519 nsresult GetALink(nsAString *aALink);
1520 nsresult SetALink(const nsAString *aALink);
1521 nsresult GetBackground(nsAString *aBackground);
1522 nsresult SetBackground(const nsAString *aBackground);
1523 nsresult GetBgColor(nsAString *aBgColor);
1524 nsresult SetBgColor(const nsAString *aBgColor);
1525 nsresult GetLink(nsAString *aLink);
1526 nsresult SetLink(const nsAString *aLink);
1527 nsresult GetText(nsAString *aText);
1528 nsresult SetText(const nsAString *aText);
1529 nsresult GetVLink(nsAString *aVLink);
1530 nsresult SetVLink(const nsAString *aVLink);
1531 nsresult GetOnafterprint(JSContext *cx, jsval *aOnafterprint);
1532 nsresult SetOnafterprint(JSContext *cx, const jsval *aOnafterprint);
1533 nsresult GetOnbeforeprint(JSContext *cx, jsval *aOnbeforeprint);
1534 nsresult SetOnbeforeprint(JSContext *cx, const jsval *aOnbeforeprint);
1535 nsresult GetOnbeforeunload(JSContext *cx, jsval *aOnbeforeunload);
1536 nsresult SetOnbeforeunload(JSContext *cx, const jsval *aOnbeforeunload);
1537 nsresult GetOnhashchange(JSContext *cx, jsval *aOnhashchange);
1538 nsresult SetOnhashchange(JSContext *cx, const jsval *aOnhashchange);
1539 nsresult GetOnmessage(JSContext *cx, jsval *aOnmessage);
1540 nsresult SetOnmessage(JSContext *cx, const jsval *aOnmessage);
1541 nsresult GetOnoffline(JSContext *cx, jsval *aOnoffline);
1542 nsresult SetOnoffline(JSContext *cx, const jsval *aOnoffline);
1543 nsresult GetOnonline(JSContext *cx, jsval *aOnonline);
1544 nsresult SetOnonline(JSContext *cx, const jsval *aOnonline);
1545 nsresult GetOnpagehide(JSContext *cx, jsval *aOnpagehide);
1546 nsresult SetOnpagehide(JSContext *cx, const jsval *aOnpagehide);
1547 nsresult GetOnpageshow(JSContext *cx, jsval *aOnpageshow);
1548 nsresult SetOnpageshow(JSContext *cx, const jsval *aOnpageshow);
1549 nsresult GetOnpopstate(JSContext *cx, jsval *aOnpopstate);
1550 nsresult SetOnpopstate(JSContext *cx, const jsval *aOnpopstate);
1551 nsresult GetOnresize(JSContext *cx, jsval *aOnresize);
1552 nsresult SetOnresize(JSContext *cx, const jsval *aOnresize);
1553 nsresult GetOnunload(JSContext *cx, jsval *aOnunload);
1554 nsresult SetOnunload(JSContext *cx, const jsval *aOnunload);
1555 }
1556
1557 [
1558 object,
1559 uuid(5e49bff8-fb61-41e3-b6a9-2017865a6d74),
1560 local
1561 ]
1562 interface nsIDOMHTMLFormElement : nsIDOMHTMLElement
1563 {
1564 nsresult GetAcceptCharset(nsAString *aAcceptCharset);
1565 nsresult SetAcceptCharset(const nsAString *aAcceptCharset);
1566 nsresult GetAction(nsAString *aAction);
1567 nsresult SetAction(const nsAString *aAction);
1568 nsresult GetAutocomplete(nsAString *aAutocomplete);
1569 nsresult SetAutocomplete(const nsAString *aAutocomplete);
1570 nsresult GetEnctype(nsAString *aEnctype);
1571 nsresult SetEnctype(const nsAString *aEnctype);
1572 nsresult GetEncoding(nsAString *aEncoding);
1573 nsresult SetEncoding(const nsAString *aEncoding);
1574 nsresult GetMethod(nsAString *aMethod);
1575 nsresult SetMethod(const nsAString *aMethod);
1576 nsresult GetName(nsAString *aName);
1577 nsresult SetName(const nsAString *aName);
1578 nsresult GetNoValidate(bool *aNoValidate);
1579 nsresult SetNoValidate(bool aNoValidate);
1580 nsresult GetTarget(nsAString *aTarget);
1581 nsresult SetTarget(const nsAString *aTarget);
1582 nsresult GetElements(nsIDOMHTMLCollection **aElements);
1583 nsresult GetLength(int32_t *aLength);
1584 nsresult Submit();
1585 nsresult Reset();
1586 nsresult CheckValidity(bool *_retval);
1587 nsresult GetFormData(nsIDOMHTMLElement *aOriginatingElement, nsAString *aActionURI, nsIInputStream **aPostDataStream);
1588 }
1589
1590 [
1591 object,
1592 uuid(d57537ed-39d0-46ea-8516-0ce0a5bfb805),
1593 local
1594 ]
1595 interface nsIDOMHTMLInputElement : nsIDOMHTMLElement
1596 {
1597 nsresult GetAccept(nsAString *aAccept);
1598 nsresult SetAccept(const nsAString *aAccept);
1599 nsresult GetAlt(nsAString *aAlt);
1600 nsresult SetAlt(const nsAString *aAlt);
1601 nsresult GetAutocomplete(nsAString *aAutocomplete);
1602 nsresult SetAutocomplete(const nsAString *aAutocomplete);
1603 nsresult GetAutofocus(bool *aAutofocus);
1604 nsresult SetAutofocus(bool aAutofocus);
1605 nsresult GetDefaultChecked(bool *aDefaultChecked);
1606 nsresult SetDefaultChecked(bool aDefaultChecked);
1607 nsresult GetChecked(bool *aChecked);
1608 nsresult SetChecked(bool aChecked);
1609 nsresult GetDisabled(bool *aDisabled);
1610 nsresult SetDisabled(bool aDisabled);
1611 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
1612 nsresult GetFormAction(nsAString *aFormAction);
1613 nsresult SetFormAction(const nsAString *aFormAction);
1614 nsresult GetFormEnctype(nsAString *aFormEnctype);
1615 nsresult SetFormEnctype(const nsAString *aFormEnctype);
1616 nsresult GetFormMethod(nsAString *aFormMethod);
1617 nsresult SetFormMethod(const nsAString *aFormMethod);
1618 nsresult GetFormNoValidate(bool *aFormNoValidate);
1619 nsresult SetFormNoValidate(bool aFormNoValidate);
1620 nsresult GetFormTarget(nsAString *aFormTarget);
1621 nsresult SetFormTarget(const nsAString *aFormTarget);
1622 nsresult GetFiles(nsIDOMFileList **aFiles);
1623 nsresult GetHeight(uint32_t *aHeight);
1624 nsresult SetHeight(uint32_t aHeight);
1625 nsresult GetIndeterminate(bool *aIndeterminate);
1626 nsresult SetIndeterminate(bool aIndeterminate);
1627 nsresult GetInputMode(nsAString *aInputMode);
1628 nsresult SetInputMode(const nsAString *aInputMode);
1629 nsresult GetList(nsIDOMHTMLElement **aList);
1630 nsresult GetMax(nsAString *aMax);
1631 nsresult SetMax(const nsAString *aMax);
1632 nsresult GetMaxLength(int32_t *aMaxLength);
1633 nsresult SetMaxLength(int32_t aMaxLength);
1634 nsresult GetMin(nsAString *aMin);
1635 nsresult SetMin(const nsAString *aMin);
1636 nsresult GetMultiple(bool *aMultiple);
1637 nsresult SetMultiple(bool aMultiple);
1638 nsresult GetName(nsAString *aName);
1639 nsresult SetName(const nsAString *aName);
1640 nsresult GetPattern(nsAString *aPattern);
1641 nsresult SetPattern(const nsAString *aPattern);
1642 nsresult GetPlaceholder(nsAString *aPlaceholder);
1643 nsresult SetPlaceholder(const nsAString *aPlaceholder);
1644 nsresult GetReadOnly(bool *aReadOnly);
1645 nsresult SetReadOnly(bool aReadOnly);
1646 nsresult GetRequired(bool *aRequired);
1647 nsresult SetRequired(bool aRequired);
1648 nsresult GetStep(nsAString *aStep);
1649 nsresult SetStep(const nsAString *aStep);
1650 nsresult GetAlign(nsAString *aAlign);
1651 nsresult SetAlign(const nsAString *aAlign);
1652 nsresult GetSize(uint32_t *aSize);
1653 nsresult SetSize(uint32_t aSize);
1654 nsresult GetWidth(uint32_t *aWidth);
1655 nsresult SetWidth(uint32_t aWidth);
1656 nsresult GetSrc(nsAString *aSrc);
1657 nsresult SetSrc(const nsAString *aSrc);
1658 nsresult GetType(nsAString *aType);
1659 nsresult SetType(const nsAString *aType);
1660 nsresult GetDefaultValue(nsAString *aDefaultValue);
1661 nsresult SetDefaultValue(const nsAString *aDefaultValue);
1662 nsresult GetValue(nsAString *aValue);
1663 nsresult SetValue(const nsAString *aValue);
1664 nsresult GetValueAsNumber(double *aValueAsNumber);
1665 nsresult SetValueAsNumber(double aValueAsNumber);
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(09017cf4-0004-4c27-a340-7f5d2fe282e3),
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(5564816e-2ab5-46ee-95a4-8f4688bdb449),
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(8af2123f-c83a-430a-a739-d103a8eaba52),
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 select_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(b7e1b86f-c98e-4658-81ce-ac29962f854a),
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(8783371a-6185-4176-9ed9-f781c75bf48a),
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(98c38ca0-5e3a-4c71-90a4-69d12a3c8d16),
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(76ec122a-db6d-4b3f-8a24-15faf117f695),
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(ad43cb9b-3253-446d-8ba9-50ee50ff017e),
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(1a7bf1f1-5d6c-4200-9ceb-455874322315),
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(02094366-0d3d-47e3-949c-89113a9bcc15),
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(1fb22137-c231-4eae-9ca4-557bb0852d89),
2076 local
2077 ]
2078 interface nsIDOMHTMLTableCellElement : nsIDOMHTMLElement
2079 {
2080 nsresult GetCellIndex(int32_t *aCellIndex);
2081 nsresult GetAbbr(nsAString *aAbbr);
2082 nsresult SetAbbr(const nsAString *aAbbr);
2083 nsresult GetAlign(nsAString *aAlign);
2084 nsresult SetAlign(const nsAString *aAlign);
2085 nsresult GetAxis(nsAString *aAxis);
2086 nsresult SetAxis(const nsAString *aAxis);
2087 nsresult GetBgColor(nsAString *aBgColor);
2088 nsresult SetBgColor(const nsAString *aBgColor);
2089 nsresult GetCh(nsAString *aCh);
2090 nsresult SetCh(const nsAString *aCh);
2091 nsresult GetChOff(nsAString *aChOff);
2092 nsresult SetChOff(const nsAString *aChOff);
2093 nsresult GetColSpan(int32_t *aColSpan);
2094 nsresult SetColSpan(int32_t aColSpan);
2095 nsresult GetHeaders(nsAString *aHeaders);
2096 nsresult SetHeaders(const nsAString *aHeaders);
2097 nsresult GetHeight(nsAString *aHeight);
2098 nsresult SetHeight(const nsAString *aHeight);
2099 nsresult GetNoWrap(bool *aNoWrap);
2100 nsresult SetNoWrap(bool aNoWrap);
2101 nsresult GetRowSpan(int32_t *aRowSpan);
2102 nsresult SetRowSpan(int32_t aRowSpan);
2103 nsresult GetScope(nsAString *aScope);
2104 nsresult SetScope(const nsAString *aScope);
2105 nsresult GetVAlign(nsAString *aVAlign);
2106 nsresult SetVAlign(const nsAString *aVAlign);
2107 nsresult GetWidth(nsAString *aWidth);
2108 nsresult SetWidth(const nsAString *aWidth);
2109 }
2110
2111 [
2112 object,
2113 uuid(21ffbe98-51f5-499e-8d6f-612ae798c1e1),
2114 local
2115 ]
2116 interface nsIDOMHTMLIFrameElement : nsIDOMHTMLElement
2117 {
2118 nsresult GetAlign(nsAString *aAlign);
2119 nsresult SetAlign(const nsAString *aAlign);
2120 nsresult GetFrameBorder(nsAString *aFrameBorder);
2121 nsresult SetFrameBorder(const nsAString *aFrameBorder);
2122 nsresult GetHeight(nsAString *aHeight);
2123 nsresult SetHeight(const nsAString *aHeight);
2124 nsresult GetLongDesc(nsAString *aLongDesc);
2125 nsresult SetLongDesc(const nsAString *aLongDesc);
2126 nsresult GetMarginHeight(nsAString *aMarginHeight);
2127 nsresult SetMarginHeight(const nsAString *aMarginHeight);
2128 nsresult GetMarginWidth(nsAString *aMarginWidth);
2129 nsresult SetMarginWidth(const nsAString *aMarginWidth);
2130 nsresult GetName(nsAString *aName);
2131 nsresult SetName(const nsAString *aName);
2132 nsresult GetScrolling(nsAString *aScrolling);
2133 nsresult SetScrolling(const nsAString *aScrolling);
2134 nsresult GetSrc(nsAString *aSrc);
2135 nsresult SetSrc(const nsAString *aSrc);
2136 nsresult GetWidth(nsAString *aWidth);
2137 nsresult SetWidth(const nsAString *aWidth);
2138 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2139 nsresult GetContentWindow(nsIDOMWindow **aContentWindow);
2140 nsresult GetSandbox(nsAString *aSandbox);
2141 nsresult SetSandbox(const nsAString *aSandbox);
2142 nsresult GetAllowFullscreen(bool *aAllowFullscreen);
2143 nsresult SetAllowFullscreen(bool aAllowFullscreen);
2144 }
2145
2146 [
2147 object,
2148 uuid(1a79af54-dbbb-4532-be48-944f3995e7e9),
2149 local
2150 ]
2151 interface nsIDOMHTMLFrameElement : nsIDOMHTMLElement
2152 {
2153 nsresult GetFrameBorder(nsAString *aFrameBorder);
2154 nsresult SetFrameBorder(const nsAString *aFrameBorder);
2155 nsresult GetLongDesc(nsAString *aLongDesc);
2156 nsresult SetLongDesc(const nsAString *aLongDesc);
2157 nsresult GetMarginHeight(nsAString *aMarginHeight);
2158 nsresult SetMarginHeight(const nsAString *aMarginHeight);
2159 nsresult GetMarginWidth(nsAString *aMarginWidth);
2160 nsresult SetMarginWidth(const nsAString *aMarginWidth);
2161 nsresult GetName(nsAString *aName);
2162 nsresult SetName(const nsAString *aName);
2163 nsresult GetNoResize(bool *aNoResize);
2164 nsresult SetNoResize(bool aNoResize);
2165 nsresult GetScrolling(nsAString *aScrolling);
2166 nsresult SetScrolling(const nsAString *aScrolling);
2167 nsresult GetSrc(nsAString *aSrc);
2168 nsresult SetSrc(const nsAString *aSrc);
2169 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2170 nsresult GetContentWindow(nsIDOMWindow **aContentWindow);
2171 }
2172
2173 [
2174 object,
2175 uuid(bed8f222-c4dd-41ba-9ec6-dfae0ec8def8),
2176 local
2177 ]
2178 interface nsIDOMHTMLObjectElement : nsIDOMHTMLElement
2179 {
2180 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
2181 nsresult GetCode(nsAString *aCode);
2182 nsresult SetCode(const nsAString *aCode);
2183 nsresult GetAlign(nsAString *aAlign);
2184 nsresult SetAlign(const nsAString *aAlign);
2185 nsresult GetArchive(nsAString *aArchive);
2186 nsresult SetArchive(const nsAString *aArchive);
2187 nsresult GetBorder(nsAString *aBorder);
2188 nsresult SetBorder(const nsAString *aBorder);
2189 nsresult GetCodeBase(nsAString *aCodeBase);
2190 nsresult SetCodeBase(const nsAString *aCodeBase);
2191 nsresult GetCodeType(nsAString *aCodeType);
2192 nsresult SetCodeType(const nsAString *aCodeType);
2193 nsresult GetData(nsAString *aData);
2194 nsresult SetData(const nsAString *aData);
2195 nsresult GetDeclare(bool *aDeclare);
2196 nsresult SetDeclare(bool aDeclare);
2197 nsresult GetHeight(nsAString *aHeight);
2198 nsresult SetHeight(const nsAString *aHeight);
2199 nsresult GetHspace(int32_t *aHspace);
2200 nsresult SetHspace(int32_t aHspace);
2201 nsresult GetName(nsAString *aName);
2202 nsresult SetName(const nsAString *aName);
2203 nsresult GetStandby(nsAString *aStandby);
2204 nsresult SetStandby(const nsAString *aStandby);
2205 nsresult GetType(nsAString *aType);
2206 nsresult SetType(const nsAString *aType);
2207 nsresult GetUseMap(nsAString *aUseMap);
2208 nsresult SetUseMap(const nsAString *aUseMap);
2209 nsresult GetVspace(int32_t *aVspace);
2210 nsresult SetVspace(int32_t aVspace);
2211 nsresult GetWidth(nsAString *aWidth);
2212 nsresult SetWidth(const nsAString *aWidth);
2213 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2214 nsresult GetWillValidate(bool *aWillValidate);
2215 nsresult GetValidity(nsIDOMValidityState **aValidity);
2216 nsresult GetValidationMessage(nsAString *aValidationMessage);
2217 nsresult CheckValidity(bool *_retval);
2218 nsresult SetCustomValidity(const nsAString *error);
2219 }
2220
2221 [
2222 object,
2223 uuid(e81273e1-d440-4dd3-9073-8199f7a9525e),
2224 local
2225 ]
2226 interface nsIDOMHTMLStyleElement : nsIDOMHTMLElement
2227 {
2228 nsresult GetDisabled(bool *aDisabled);
2229 nsresult SetDisabled(bool aDisabled);
2230 nsresult GetMedia(nsAString *aMedia);
2231 nsresult SetMedia(const nsAString *aMedia);
2232 nsresult GetType(nsAString *aType);
2233 nsresult SetType(const nsAString *aType);
2234 nsresult GetScoped(bool *aScoped);
2235 nsresult SetScoped(bool aScoped);
2236 nsresult GetDOMStyleSheet(nsIDOMStyleSheet **aDOMStyleSheet);
2237 }
2238
2239 [
2240 object,
2241 uuid(7cebc153-168a-416c-ba5a-56a8c2ddb2ec),
2242 local
2243 ]
2244 interface nsIDOMNodeSelector : nsISupports
2245 {
2246 nsresult QuerySelector(const nsAString *selectors, nsIDOMElement **_retval);
2247 nsresult QuerySelectorAll(const nsAString *selectors, nsIDOMNodeList **_retval);
2248 }
2249
2250 [
2251 object,
2252 uuid(94928ab3-8b63-11d3-989d-001083010e9b),
2253 local
2254 ]
2255 interface nsIURIContentListener : nsISupports
2256 {
2257 nsresult OnStartURIOpen(nsIURI *aURI, bool *_retval);
2258 nsresult DoContent(const char *aContentType, bool aIsContentPreferred, nsIRequest *aRequest,
2259 nsIStreamListener **aContentHandler, bool *_retval);
2260 nsresult IsPreferred(const char *aContentType, char **aDesiredContentType, bool *_retval);
2261 nsresult CanHandleContent(const char *aContentType, bool aIsContentPreferred,
2262 char **aDesiredContentType, bool *_retval);
2263 nsresult GetLoadCookie(nsISupports **aLoadCookie);
2264 nsresult SetLoadCookie(nsISupports *aLoadCookie);
2265 nsresult GetParentContentListener(nsIURIContentListener **aParentContentListener);
2266 nsresult SetParentContentListener(nsIURIContentListener *aParentContentListener);
2267 }
2268
2269 [
2270 object,
2271 uuid(44b78386-1dd2-11b2-9ad2-e4eee2ca1916),
2272 local
2273 ]
2274 interface nsITooltipListener : nsISupports
2275 {
2276 nsresult OnShowTooltip(int32_t aXCoords, int32_t aYCoords, const PRUnichar *aTipText);
2277 nsresult OnHideTooltip();
2278 }
2279
2280 [
2281 object,
2282 uuid(33e9d001-caab-4ba9-8961-54902f197202),
2283 local
2284 ]
2285 interface nsIWebBrowser : nsISupports
2286 {
2287 nsresult AddWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
2288 nsresult RemoveWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
2289 nsresult GetContainerWindow(nsIWebBrowserChrome **aContainerWindow);
2290 nsresult SetContainerWindow(nsIWebBrowserChrome *aContainerWindow);
2291 nsresult GetParentURIContentListener(nsIURIContentListener **aParentURIContentListener);
2292 nsresult SetParentURIContentListener(nsIURIContentListener *aParentURIContentListener);
2293 nsresult GetContentDOMWindow(nsIDOMWindow **aContentDOMWindow);
2294 nsresult GetIsActive(bool *aIsActive);
2295 nsresult SetIsActive(bool aIsActive);
2296 }
2297
2298 cpp_quote("#define SETUP_ALLOW_JAVASCRIPT 2")
2299 cpp_quote("#define SETUP_IS_CHROME_WRAPPER 7")
2300 cpp_quote("#define SETUP_DISABLE_NOSCRIPT 16")
2301
2302 [
2303 object,
2304 uuid(f15398a0-8018-11d3-af70-00a024ffc08c),
2305 local
2306 ]
2307 interface nsIWebBrowserSetup : nsISupports
2308 {
2309 nsresult SetProperty(uint32_t aId, uint32_t aValue);
2310 }
2311
2312 typedef void* nativeWindow;
2313
2314 [
2315 object,
2316 uuid(9da319f3-eee6-4504-81a5-6A19cf6215bf),
2317 local
2318 ]
2319 interface nsIBaseWindow : nsISupports
2320 {
2321 nsresult InitWindow(nativeWindow parentNativeWindow, nsIWidget *parentWidget, int32_t x,
2322 int32_t y, int32_t cx, int32_t cy);
2323 nsresult Create();
2324 nsresult Destroy();
2325 nsresult SetPosition(int32_t x, int32_t y);
2326 nsresult GetPosition(int32_t *x, int32_t *y);
2327 nsresult SetSize(int32_t cx, int32_t cy, bool fRepaint);
2328 nsresult GetSize(int32_t *cx, int32_t *cy);
2329 nsresult SetPositionAndSize(int32_t x, int32_t y, int32_t cx, int32_t cy, bool fRepaint);
2330 nsresult GetPositionAndSize(int32_t *x, int32_t *y, int32_t *cx, int32_t *cy);
2331 nsresult Repaint(bool force);
2332 nsresult GetParentWidget(nsIWidget **aParentWidget);
2333 nsresult SetParentWidget(nsIWidget *aParentWidget);
2334 nsresult GetParentNativeWindow(nativeWindow *aParentNativeWindow);
2335 nsresult SetParentNativeWindow(nativeWindow aParentNativeWindow);
2336 nsresult GetNativeHandle(nsAString *aNativeHandle);
2337 nsresult GetVisibility(bool *aVisibility);
2338 nsresult SetVisibility(bool aVisibility);
2339 nsresult GetEnabled(bool *aEnabled);
2340 nsresult SetEnabled(bool aEnabled);
2341 nsresult GetMainWidget(nsIWidget **aMainWidget);
2342 nsresult GetUnscaledDevicePixelsPerCSSPixel(double *aUnscaledDevicePixelsPerCSSPixel);
2343 nsresult SetFocus();
2344 nsresult GetTitle(PRUnichar **aTitle);
2345 nsresult SetTitle(const PRUnichar *aTitle);
2346 }
2347
2348 [
2349 object,
2350 uuid(28404f7e-0f17-4dc3-a21a-2074d8659b02),
2351 local
2352 ]
2353 interface nsIWebNavigation : nsISupports
2354 {
2355 const UINT LOAD_FLAGS_MASK = 0xffff;
2356 const UINT LOAD_FLAGS_NONE = 0;
2357 const UINT LOAD_FLAGS_IS_REFRESH = 0x0010;
2358 const UINT LOAD_FLAGS_IS_LINK = 0x0020;
2359 const UINT LOAD_FLAGS_BYPASS_HISTORY = 0x0040;
2360 const UINT LOAD_FLAGS_REPLACE_HISTORY = 0x0080;
2361 const UINT LOAD_FLAGS_BYPASS_CACHE = 0x0100;
2362 const UINT LOAD_FLAGS_BYPASS_PROXY = 0x0200;
2363 const UINT LOAD_FLAGS_CHARSET_CHANGE = 0x0400;
2364 const UINT LOAD_FLAGS_STOP_CONTENT = 0x0800;
2365 const UINT LOAD_FLAGS_FROM_EXTERNAL = 0x1000;
2366 const UINT LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP = 0x2000;
2367 const UINT LOAD_FLAGS_FIRST_LOAD = 0x4000;
2368 const UINT LOAD_FLAGS_ALLOW_POPUPS = 0x8000;
2369 const UINT LOAD_FLAGS_BYPASS_CLASSIFIER = 0x10000;
2370 const UINT LOAD_FLAGS_FORCE_ALLOW_COOKIES = 0x20000;
2371 const UINT LOAD_FLAGS_DISALLOW_INHERIT_OWNER = 0x40000;
2372 const UINT LOAD_FLAGS_URI_IS_UTF8 = 0x80000;
2373
2374 nsresult GetCanGoBack(bool *aCanGoBack);
2375 nsresult GetCanGoForward(bool *aCanGoForward);
2376 nsresult GoBack();
2377 nsresult GoForward();
2378 nsresult GotoIndex(int32_t index);
2379 nsresult LoadURI(const PRUnichar *aURI, uint32_t aLoadFlags, nsIURI *aReferrer,
2380 nsIInputStream *aPostData, nsIInputStream *aHeaders);
2381 nsresult Reload(uint32_t aReloadFlags);
2382 nsresult Stop(uint32_t aStopFlags);
2383 nsresult GetDocument(nsIDOMDocument **aDocument);
2384 nsresult GetCurrentURI(nsIURI **aCurrentURI);
2385 nsresult GetReferringURI(nsIURI **aReferringURI);
2386 nsresult GetSessionHistory(nsISHistory **aSessionHistory);
2387 nsresult SetSessionHistory(nsISHistory *aSessionHistory);
2388 }
2389
2390 [
2391 object,
2392 uuid(1c3437b0-9e2c-11e2-9e96-0800200c9a66),
2393 local
2394 ]
2395 interface nsIWebProgress : nsISupports
2396 {
2397 nsresult AddProgressListener(nsIWebProgressListener *aListener, uint32_t aNotifyMask);
2398 nsresult RemoveProgressListener(nsIWebProgressListener *aListener);
2399 nsresult GetDOMWindow(nsIDOMWindow **aDOMWindow);
2400 nsresult GetDOMWindowID(uint64_t *aDOMWindowID);
2401 nsresult GetIsTopLevel(bool *aIsTopLevel);
2402 nsresult GetIsLoadingDocument(bool *aIsLoadingDocument);
2403 }
2404
2405 [
2406 object,
2407 uuid(1bcfc611-8941-4c39-9e06-7116e564a1ce),
2408 local
2409 ]
2410 interface nsIPrintSettings : nsISupports
2411 {
2412 typedef struct { char dummy; } nsIntMargin;
2413
2414 nsresult SetPrintOptions(int32_t aType, bool aTurnOnOff);
2415 nsresult GetPrintOptions(int32_t aType, bool *_retval);
2416 nsresult GetPrintOptionsBits(int32_t *_retval);
2417 nsresult GetEffectivePageSize(double *aWidth, double *aHeight);
2418 nsresult Clone(nsIPrintSettings **_retval);
2419 nsresult Assign(nsIPrintSettings *aPS);
2420 nsresult GetPrintSession(nsIPrintSession **aPrintSession);
2421 nsresult SetPrintSession(nsIPrintSession *aPrintSession);
2422 nsresult GetStartPageRange(int32_t *aStartPageRange);
2423 nsresult SetStartPageRange(int32_t aStartPageRange);
2424 nsresult GetEndPageRange(int32_t *aEndPageRange);
2425 nsresult SetEndPageRange(int32_t aEndPageRange);
2426 nsresult GetEdgeTop(double *aEdgeTop);
2427 nsresult SetEdgeTop(double aEdgeTop);
2428 nsresult GetEdgeLeft(double *aEdgeLeft);
2429 nsresult SetEdgeLeft(double aEdgeLeft);
2430 nsresult GetEdgeBottom(double *aEdgeBottom);
2431 nsresult SetEdgeBottom(double aEdgeBottom);
2432 nsresult GetEdgeRight(double *aEdgeRight);
2433 nsresult SetEdgeRight(double aEdgeRight);
2434 nsresult GetMarginTop(double *aMarginTop);
2435 nsresult SetMarginTop(double aMarginTop);
2436 nsresult GetMarginLeft(double *aMarginLeft);
2437 nsresult SetMarginLeft(double aMarginLeft);
2438 nsresult GetMarginBottom(double *aMarginBottom);
2439 nsresult SetMarginBottom(double aMarginBottom);
2440 nsresult GetMarginRight(double *aMarginRight);
2441 nsresult SetMarginRight(double aMarginRight);
2442 nsresult GetUnwriteableMarginTop(double *aUnwriteableMarginTop);
2443 nsresult SetUnwriteableMarginTop(double aUnwriteableMarginTop);
2444 nsresult GetUnwriteableMarginLeft(double *aUnwriteableMarginLeft);
2445 nsresult SetUnwriteableMarginLeft(double aUnwriteableMarginLeft);
2446 nsresult GetUnwriteableMarginBottom(double *aUnwriteableMarginBottom);
2447 nsresult SetUnwriteableMarginBottom(double aUnwriteableMarginBottom);
2448 nsresult GetUnwriteableMarginRight(double *aUnwriteableMarginRight);
2449 nsresult SetUnwriteableMarginRight(double aUnwriteableMarginRight);
2450 nsresult GetScaling(double *aScaling);
2451 nsresult SetScaling(double aScaling);
2452 nsresult GetPrintBGColors(bool *aPrintBGColors);
2453 nsresult SetPrintBGColors(bool aPrintBGColors);
2454 nsresult GetPrintBGImages(bool *aPrintBGImages);
2455 nsresult SetPrintBGImages(bool aPrintBGImages);
2456 nsresult GetPrintRange(int16_t *aPrintRange);
2457 nsresult SetPrintRange(int16_t aPrintRange);
2458 nsresult GetTitle(PRUnichar **aTitle);
2459 nsresult SetTitle(const PRUnichar *aTitle);
2460 nsresult GetDocURL(PRUnichar **aDocURL);
2461 nsresult SetDocURL(const PRUnichar *aDocURL);
2462 nsresult GetHeaderStrLeft(PRUnichar **aHeaderStrLeft);
2463 nsresult SetHeaderStrLeft(const PRUnichar *aHeaderStrLeft);
2464 nsresult GetHeaderStrCenter(PRUnichar **aHeaderStrCenter);
2465 nsresult SetHeaderStrCenter(const PRUnichar *aHeaderStrCenter);
2466 nsresult GetHeaderStrRight(PRUnichar **aHeaderStrRight);
2467 nsresult SetHeaderStrRight(const PRUnichar *aHeaderStrRight);
2468 nsresult GetFooterStrLeft(PRUnichar **aFooterStrLeft);
2469 nsresult SetFooterStrLeft(const PRUnichar *aFooterStrLeft);
2470 nsresult GetFooterStrCenter(PRUnichar **aFooterStrCenter);
2471 nsresult SetFooterStrCenter(const PRUnichar *aFooterStrCenter);
2472 nsresult GetFooterStrRight(PRUnichar **aFooterStrRight);
2473 nsresult SetFooterStrRight(const PRUnichar *aFooterStrRight);
2474 nsresult GetHowToEnableFrameUI(int16_t *aHowToEnableFrameUI);
2475 nsresult SetHowToEnableFrameUI(int16_t aHowToEnableFrameUI);
2476 nsresult GetIsCancelled(bool *aIsCancelled);
2477 nsresult SetIsCancelled(bool aIsCancelled);
2478 nsresult GetPrintFrameTypeUsage(int16_t *aPrintFrameTypeUsage);
2479 nsresult SetPrintFrameTypeUsage(int16_t aPrintFrameTypeUsage);
2480 nsresult GetPrintFrameType(int16_t *aPrintFrameType);
2481 nsresult SetPrintFrameType(int16_t aPrintFrameType);
2482 nsresult GetPrintSilent(bool *aPrintSilent);
2483 nsresult SetPrintSilent(bool aPrintSilent);
2484 nsresult GetShrinkToFit(bool *aShrinkToFit);
2485 nsresult SetShrinkToFit(bool aShrinkToFit);
2486 nsresult GetShowPrintProgress(bool *aShowPrintProgress);
2487 nsresult SetShowPrintProgress(bool aShowPrintProgress);
2488 nsresult GetPaperName(PRUnichar **aPaperName);
2489 nsresult SetPaperName(const PRUnichar *aPaperName);
2490 nsresult GetPaperSizeType(int16_t *aPaperSizeType);
2491 nsresult SetPaperSizeType(int16_t aPaperSizeType);
2492 nsresult GetPaperData(int16_t *aPaperData);
2493 nsresult SetPaperData(int16_t aPaperData);
2494 nsresult GetPaperWidth(double *aPaperWidth);
2495 nsresult SetPaperWidth(double aPaperWidth);
2496 nsresult GetPaperHeight(double *aPaperHeight);
2497 nsresult SetPaperHeight(double aPaperHeight);
2498 nsresult GetPaperSizeUnit(int16_t *aPaperSizeUnit);
2499 nsresult SetPaperSizeUnit(int16_t aPaperSizeUnit);
2500 nsresult GetPlexName(PRUnichar **aPlexName);
2501 nsresult SetPlexName(const PRUnichar *aPlexName);
2502 nsresult GetColorspace(PRUnichar **aColorspace);
2503 nsresult SetColorspace(const PRUnichar *aColorspace);
2504 nsresult GetResolutionName(PRUnichar **aResolutionName);
2505 nsresult SetResolutionName(const PRUnichar aResolutionName);
2506 nsresult GetDownloadFonts(bool *aDownloadFonts);
2507 nsresult SetDownloadFonts(bool aDownloadFonts);
2508 nsresult GetPrintReversed(bool *aPrintReversed);
2509 nsresult SetPrintReversed(bool aPrintReversed);
2510 nsresult GetPrintInColor(bool *aPrintInColor);
2511 nsresult SetPrintInColor(bool aPrintInColor);
2512 nsresult GetOrientation(int32_t *aOrientation);
2513 nsresult SetOrientation(int32_t aOrientation);
2514 nsresult GetPrintCommand(PRUnichar **aPrintCommand);
2515 nsresult SetPrintCommand(const PRUnichar *aPrintCommand);
2516 nsresult GetNumCopies(int32_t *aNumCopies);
2517 nsresult SetNumCopies(int32_t aNumCopies);
2518 nsresult GetPrinterName(PRUnichar **aPrinterName);
2519 nsresult SetPrinterName(const PRUnichar *aPrinterName);
2520 nsresult GetPrintToFile(bool *aPrintToFile);
2521 nsresult SetPrintToFile(bool aPrintToFile);
2522 nsresult GetToFileName(PRUnichar **aToFileName);
2523 nsresult SetToFileName(const PRUnichar *aToFileName);
2524 nsresult GetOutputFormat(int16_t *aOutputFormat);
2525 nsresult SetOutputFormat(int16_t aOutputFormat);
2526 nsresult GetPrintPageDelay(int32_t *aPrintPageDelay);
2527 nsresult SetPrintPageDelay(int32_t aPrintPageDelay);
2528 nsresult GetResolution(int32_t *aResolution) = 0;
2529 nsresult SetResolution(int32_t aResolution) = 0;
2530 nsresult GetDuplex(int32_t *aDuplex);
2531 nsresult SetDuplex(int32_t aDuplex);
2532 nsresult GetIsInitializedFromPrinter(bool *aIsInitializedFromPrinter);
2533 nsresult SetIsInitializedFromPrinter(bool aIsInitializedFromPrinter);
2534 nsresult GetIsInitializedFromPrefs(bool *aIsInitializedFromPrefs);
2535 nsresult SetIsInitializedFromPrefs(bool aIsInitializedFromPrefs);
2536 nsresult GetPersistMarginBoxSettings(bool *aPersistMarginBoxSettings);
2537 nsresult SetPersistMarginBoxSettings(bool aPersistMarginBoxSettings);
2538 nsresult SetMarginInTwips(nsIntMargin *aMargin);
2539 nsresult SetEdgeInTwips(nsIntMargin *aEdge);
2540 nsresult GetMarginInTwips(nsIntMargin *aMargin);
2541 nsresult GetEdgeInTwips(nsIntMargin *aEdge);
2542 nsresult SetupSilentPrinting();
2543 nsresult SetUnwriteableMarginInTwips(nsIntMargin *aEdge);
2544 nsresult GetUnwriteableMarginInTwips(nsIntMargin *aEdge);
2545 nsresult GetPageRanges(void * /*nsTArray<int32_t>&*/ aPages);
2546 }
2547
2548 [
2549 object,
2550 uuid(9a7ca4b0-fbba-11d4-a869-00105a183419),
2551 local
2552 ]
2553 interface nsIWebBrowserPrint : nsISupports
2554 {
2555 nsresult GetGlobalPrintSettings(nsIPrintSettings **aGlobalPrintSettings);
2556 nsresult GetCurrentPrintSettings(nsIPrintSettings **aCurrentPrintSettings);
2557 nsresult GetCurrentChildDOMWindow(nsIDOMWindow **aCurrentChildDOMWindow);
2558 nsresult GetDoingPrint(bool *aDoingPrint);
2559 nsresult GetDoingPrintPreview(bool *aDoingPrintPreview);
2560 nsresult GetIsFramesetDocument(bool *aIsFramesetDocument);
2561 nsresult GetIsFramesetFrameSelected(bool *aIsFramesetFrameSelected);
2562 nsresult GetIsIFrameSelected(bool *aIsIFrameSelected);
2563 nsresult GetIsRangeSelection(bool *aIsRangeSelection);
2564 nsresult GetPrintPreviewNumPages(int32_t *aPrintPreviewNumPages);
2565 nsresult Print(nsIPrintSettings *aThePrintSettings, nsIWebProgressListener *aWPListener);
2566 nsresult PrintPreview(nsIPrintSettings *aThePrintSettings, nsIDOMWindow *aChildDOMWin,
2567 nsIWebProgressListener *aWPListener);
2568 nsresult PrintPreviewNavigate(int16_t aNavType, int32_t aPageNum);
2569 nsresult Cancel();
2570 nsresult EnumerateDocumentNames(uint32_t *aCount, PRUnichar ***aResult);
2571 nsresult ExitPrintPreview();
2572 }
2573
2574 [
2575 object,
2576 uuid(919e792a-6490-40b8-bba5-f9e9ad5640c8),
2577 local
2578 ]
2579 interface nsIScrollable : nsISupports
2580 {
2581 enum {
2582 ScrollOrientation_X = 1,
2583 ScrollOrientation_Y = 2
2584 };
2585
2586 enum {
2587 Scrollbar_Auto = 1,
2588 Scrollbar_Never = 2,
2589 Scrollbar_Always = 3
2590 };
2591
2592 nsresult GetCurScrollPos(int32_t scrollOrientation, int32_t *curPos);
2593 nsresult SetCurScrollPos(int32_t scrollOrientation, int32_t curPos);
2594 nsresult SetCurScrollPosEx(int32_t curHorizontalPos, int32_t curVerticalPos);
2595 nsresult GetScrollRange(int32_t scrollOrientation, int32_t *minPos, int32_t *maxPos);
2596 nsresult SetScrollRange(int32_t scrollOrientation, int32_t minPos, int32_t maxPos);
2597 nsresult SetScrollRangeEx(int32_t minHorizontalPos, int32_t maxHorizontalPos,
2598 int32_t minVerticalPos, int32_t maxVerticalPos);
2599 nsresult GetDefaultScrollbarPreferences(int32_t scrollOrientation, int32_t *scrollbarPref);
2600 nsresult SetDefaultScrollbarPreferences(int32_t scrollOrientation, int32_t scrollbarPref);
2601 nsresult GetScrollbarVisibility(bool *verticalVisible, bool *horizontalVisible);
2602 }
2603
2604 [
2605 object,
2606 uuid(272a5020-64f5-485c-a8c4-44b2882ae0a2),
2607 local
2608 ]
2609 interface nsIFile : nsISupports
2610 {
2611 typedef struct {
2612 /* Currently not needed */
2613 char dummy;
2614 } PRFileDesc, PRLibrary, widl_FILE;
2615 #define FILE widl_FILE
2616
2617 nsresult Append(const nsAString *node);
2618 nsresult AppendNative(const nsAString *node);
2619 nsresult Normalize();
2620 nsresult Create(uint32_t type, uint32_t permission);
2621 nsresult GetLeafName(nsAString *aLeafName);
2622 nsresult SetLeafName(const nsAString *aLeafName);
2623 nsresult GetNativeLeafName(nsAString *aLeafName);
2624 nsresult SetNativeLeafName(const nsAString *aLeafName);
2625 nsresult CopyTo(nsIFile *newParentDir, const nsAString *newName);
2626 nsresult CopyToNative(nsIFile *newParentDir, const nsAString *newName);
2627 nsresult CopyToFollowingLinks(nsIFile *newParentDir, const nsAString *newName);
2628 nsresult CopyToFollowingLinksNative(nsIFile *newParentDir, const nsAString *newName);
2629 nsresult MoveTo(nsIFile *newParentDir, const nsAString *newName);
2630 nsresult MoveToNative(nsIFile *newParentDir, const nsAString *newName);
2631 nsresult Remove(bool recursive);
2632 nsresult GetPermissions(uint32_t *aPermissions);
2633 nsresult SetPermissions(uint32_t pPermissions);
2634 nsresult GetPermissionsOfLink(uint32_t *aPermissions);
2635 nsresult SetPermissionsOfLink(uint32_t pPermissions);
2636 nsresult GetLastModifiedTime(PRTime *aLastModifiedTime);
2637 nsresult SetLastModifiedTime(PRTime aLastModifiedTime);
2638 nsresult GetLastModifiedTimeOfLink(PRTime *aLastModifiedTimeOfLink);
2639 nsresult SetLastModifiedTimeOfLink(PRTime aLastModifiedTimeOfLink);
2640 nsresult GetFileSize(int64_t *aFileSize);
2641 nsresult SetFileSize(int64_t aFileSize);
2642 nsresult GetFileSizeOfLink(int64_t *aFileSizeOfLink);
2643 nsresult GetTarget(nsAString *aTarget);
2644 nsresult GetNativeTarget(nsACString *aNativeTarget);
2645 nsresult GetPath(nsAString *aPath);
2646 nsresult GetNativePath(nsACString *aNativePath);
2647 nsresult Exists(bool *_retval);
2648 nsresult IsWritable(bool *_retval);
2649 nsresult IsReadable(bool *_retval);
2650 nsresult IsExecutable(bool *_retval);
2651 nsresult IsHidden(bool *_retval);
2652 nsresult IsDirectory(bool *_retval);
2653 nsresult IsFile(bool *_retval);
2654 nsresult IsSymlink(bool *_retval);
2655 nsresult IsSpecial(bool *_retval);
2656 nsresult CreateUnique(uint32_t type, uint32_t permission);
2657 nsresult Clone(nsIFile **_retval);
2658 nsresult Equals(nsIFile *inFile, bool *_retval);
2659 nsresult Contains(nsIFile *inFile, bool recir, bool *_retval);
2660 nsresult GetParent(nsIFile **aParent);
2661 nsresult GetDirectoryEntries(nsISimpleEnumerator **aDirectoryEntries);
2662 nsresult InitWithPath(const nsAString *filePath);
2663 nsresult InitWithNativePath(const nsACString *filePath);
2664 nsresult InitWithFile(nsIFile *aFile);
2665 nsresult GetFollowLinks(bool *aFollowLinks);
2666 nsresult SetFollowLinks(bool aFollowLinks);
2667 nsresult OpenNSPRFileDesc(int32_t flags, int32_t mode, PRFileDesc **_retval);
2668 nsresult OpenANSIFileDesc(const char *mode, FILE **_retval);
2669 nsresult Load(PRLibrary **_retval);
2670 nsresult GetDiskSpaceAvailable(int64_t *aDiskSpaceAvailable);
2671 nsresult AppendRelativePath(const nsAString *relativeFilePath);
2672 nsresult AppendRelativeNativePath(const nsACString *relativeFilePath);
2673 nsresult GetPersistentDescriptor(nsACString *aPersistentDescriptor);
2674 nsresult SetPersistentDescriptor(const nsACString *aPersistentDescriptor);
2675 nsresult Reveal();
2676 nsresult Launch();
2677 nsresult GetRelativeDescriptor(nsIFile *fromFile, nsACString *_retval);
2678 nsresult SetRelativeDescriptor(nsIFile *fromFile, const nsACString *relativeDesc);
2679 }
2680
2681 [
2682 object,
2683 uuid(1d940426-5fe5-42c3-84ae-a300f2d9ebd5),
2684 local
2685 ]
2686 interface nsIComponentManager : nsISupports
2687 {
2688 nsresult GetClassObject(nsCIDRef aClass, nsIIDRef aIID, void **result);
2689 nsresult GetClassObjectByContractID(const char *aContractID, nsIIDRef aIID, void **result);
2690 nsresult CreateInstance(nsCIDRef aClass, nsISupports *aDelegate, nsIIDRef aIID,
2691 void **result);
2692 nsresult CreateInstanceByContractID(const char *aContractID, nsISupports *aDelegate,
2693 nsIIDRef aIID, void **result);
2694 nsresult AddBootstrappedManifestLocation(nsIFile *aLocation);
2695 nsresult RemoveBootstrappedManifestLocation(nsIFile *aLocation);
2696 }
2697
2698 [
2699 object,
2700 uuid(55d25e49-793f-4727-a69f-de8b15f4b985),
2701 local
2702 ]
2703 interface nsIPrefBranch : nsISupports
2704 {
2705 nsresult GetRoot(char **aRoot);
2706 nsresult GetPrefType(const char *aPrefName, int32_t *_retval);
2707 nsresult GetBoolPref(const char *aPrefName, bool *_retval);
2708 nsresult SetBoolPref(const char *aPrefName, bool aValue);
2709 nsresult GetFloatPref(const char *aPrefName, float *_retval);
2710 nsresult GetCharPref(const char *aPrefName, char **_retval);
2711 nsresult SetCharPref(const char *aPrefName, const char *aValue);
2712 nsresult GetIntPref(const char *aPrefName, int32_t *_retval);
2713 nsresult SetIntPref(const char *aPrefName, int32_t aValue);
2714 nsresult GetComplexValue(const char *aPrefName, const nsIID *aType, void **aValue);
2715 nsresult SetComplexValue(const char *aPrefName, const nsIID *aType, nsISupports *aValue);
2716 nsresult ClearUserPref(const char *aPrefName);
2717 nsresult LockPref(const char *aPrefName);
2718 nsresult PrefHasUserValue(const char *aPrefName, bool *_retval);
2719 nsresult PrefIsLocked(const char *aPrefName, bool *_retval);
2720 nsresult UnlockPref(const char *aPrefName);
2721 nsresult DeleteBranch(const char *aStartingAt);
2722 nsresult GetChildList(const char *aStartingAt, uint32_t *aCount, char ***aChildArray);
2723 nsresult ResetBranch(const char *aStartingAt);
2724 nsresult AddObserver(const char *aDomain, nsIObserver *aObserver, bool aHoldWeak);
2725 nsresult RemoveObserver(const char *aDomain, nsIObserver *aObserver);
2726 }
2727
2728 [
2729 object,
2730 uuid(bbf8cab0-d43a-11d3-8cc2-00609792278c),
2731 local
2732 ]
2733 interface nsIDirectoryServiceProvider : nsISupports
2734 {
2735 nsresult GetFile(const char *prop, bool *persistent, nsIFile **_retval);
2736 }
2737
2738 [
2739 object,
2740 uuid(2f977d4b-5485-11d4-87e2-0010a4e75ef2),
2741 local
2742 ]
2743 interface nsIDirectoryServiceProvider2 : nsIDirectoryServiceProvider
2744 {
2745 nsresult GetFiles(const char *prop, nsISimpleEnumerator **_retval);
2746 }
2747
2748 [
2749 object,
2750 uuid(f5753fec-a051-4ddc-8891-11f1f1575072),
2751 local
2752 ]
2753 interface nsIProtocolHandler : nsISupports
2754 {
2755 nsresult GetScheme(nsACString *aScheme);
2756 nsresult GetDefaultPort(int32_t *aDefaultPort);
2757 nsresult GetProtocolFlags(uint32_t *aProtocolFlags);
2758 nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset,
2759 nsIURI *aBaseURI, nsIURI **_retval);
2760 nsresult NewChannel(nsIURI *aURI, nsIChannel **_retval);
2761 nsresult AllowPort(int32_t port, const char *scheme, bool *_retval);
2762 }
2763
2764 [
2765 object,
2766 uuid(0e61f3b2-34d7-4c79-bfdc-4860bc7341b7),
2767 local
2768 ]
2769 interface nsIExternalProtocolHandler : nsIProtocolHandler
2770 {
2771 nsresult ExternalAppExistsForScheme(const nsACString *scheme, bool *_retval);
2772 }
2773
2774 [
2775 object,
2776 uuid(bddeda3f-9020-4d12-8c70-984ee9f7935e),
2777 local
2778 ]
2779 interface nsIIOService : nsISupports
2780 {
2781 nsresult GetProtocolHandler(const char *aScheme, nsIProtocolHandler **_retval);
2782 nsresult GetProtocolFlags(const char *aScheme, uint32_t *_retval);
2783 nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
2784 nsIURI **_retval);
2785 nsresult NewFileURI(nsIFile *aFile, nsIURI **_retval);
2786 nsresult NewChannelFromURI(nsIURI *aURI, nsIChannel **_retval);
2787 nsresult NewChannel(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
2788 nsIChannel **_retval);
2789 nsresult GetOffline(bool *aOffline);
2790 nsresult SetOffline(bool aOffline);
2791 nsresult AllowPort(int32_t aPort, const char *aScheme, bool *_retval);
2792 nsresult ExtractScheme(const nsACString *urlString, nsACString *_retval);
2793 }
2794
2795 [
2796 object,
2797 uuid(ca68c485-9db3-4c12-82a6-4fab7948e2d5),
2798 local,
2799 ]
2800 interface nsINetUtil : nsISupports
2801 {
2802 nsresult ParseContentType(const nsACString *aTypeHeader, nsACString *aCharset,
2803 bool *aHadCharset, nsACString *_retval);
2804 nsresult ProtocolHasFlags(nsIURI *aURI, uint32_t aFlag, bool *_retval);
2805 nsresult URIChainHasFlags(nsIURI *aURI, uint32_t aFlags, bool *_retval);
2806 nsresult ToImmutableURI(nsIURI *aURI, nsIURI **_retval);
2807 nsresult NewSimpleNestedURI(nsIURI *aURI, nsIURI **_retval);
2808 nsresult EscapeString(const nsACString *aString, uint32_t aEscapeType, nsACString *_retval);
2809 nsresult EscapeURL(const nsACString *aStr, uint32_t aFlags, nsACString *_retval);
2810 nsresult UnescapeString(const nsACString *aStr, uint32_t aFlags, nsACString *_retval);
2811 nsresult ExtractCharsetFromContentType(const nsACString *aTypeHeader, nsACString *aCharset,
2812 int32_t *aCharsetStart, int32_t *aCharsetEnd, bool *_retval);
2813 }
2814
2815 [
2816 object,
2817 uuid(9c5d3c58-1dd1-11b2-a1c9-f3699284657a),
2818 local
2819 ]
2820 interface nsIWebBrowserFocus : nsISupports
2821 {
2822 nsresult Activate();
2823 nsresult Deactivate();
2824 nsresult SetFocusAtFirstElement();
2825 nsresult SetFocusAtLastElement();
2826 nsresult GetFocusedWindow(nsIDOMWindow **aFocusedWindow);
2827 nsresult SetFocusedWindow(nsIDOMWindow *aFocusedWindow);
2828 nsresult GetFocusedElement(nsIDOMElement **aFocusedElement);
2829 nsresult SetFocusedElement(nsIDOMElement *aFocusedElement);
2830 }
2831
2832 [
2833 object,
2834 uuid(e8c414c4-dc38-4ba3-ab4e-ec4cbbe22907),
2835 local
2836 ]
2837 interface nsIWebBrowserChrome : nsISupports
2838 {
2839 nsresult SetStatus(uint32_t statusType, const PRUnichar *status);
2840 nsresult GetWebBrowser(nsIWebBrowser **aWebBrowser);
2841 nsresult SetWebBrowser(nsIWebBrowser *aWebBrowser);
2842 nsresult GetChromeFlags(uint32_t *aChromeFlags);
2843 nsresult SetChromeFlags(uint32_t aChromeFlags);
2844 nsresult DestroyBrowserWindow();
2845 nsresult SizeBrowserTo(int32_t aCX, int32_t aCY);
2846 nsresult ShowAsModal();
2847 nsresult IsWindowModal(bool *_retval);
2848 nsresult ExitModalEventLoop(nsresult aStatus);
2849 }
2850
2851 [
2852 object,
2853 uuid(df31c120-ded6-11d1-bd85-00805f8ae3f4),
2854 local
2855 ]
2856 interface nsIDOMEventListener : nsISupports
2857 {
2858 nsresult HandleEvent(nsIDOMEvent *event);
2859 }
2860
2861 [
2862 object,
2863 uuid(31e92e56-4d23-4a4a-9cfe-a6d12cf434bc),
2864 local
2865 ]
2866 interface nsIDOMEventTarget : nsISupports
2867 {
2868 nsresult AddEventListener(const nsAString *type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, uint8_t _argc);
2869 nsresult AddSystemEventListener(const nsAString *type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, uint8_t _argc);
2870 nsresult RemoveEventListener(const nsAString *type, nsIDOMEventListener *listener, bool useCapture);
2871 nsresult RemoveSystemEventListener(const nsAString *type, nsIDOMEventListener *listener, bool aUseCapture);
2872 nsresult DispatchEvent(nsIDOMEvent *evt, bool *_retval);
2873
2874 /* Followed by methods we should try to avoid using */
2875 }
2876
2877 [
2878 object,
2879 uuid(02d54f52-a1f5-4ad2-b560-36f14012935e),
2880 local
2881 ]
2882 interface nsIDOMEvent : nsISupports
2883 {
2884 nsresult GetType(nsAString *aType);
2885 nsresult GetTarget(nsIDOMEventTarget **aTarget);
2886 nsresult GetCurrentTarget(nsIDOMEventTarget **aCurrentTarget);
2887 nsresult GetEventPhase(uint16_t *aEventPhase);
2888 nsresult GetBubbles(bool *aBubbles);
2889 nsresult GetCancelable(bool *aCancelable);
2890 nsresult GetTimeStamp(DOMTimeStamp *aTimeStamp);
2891 nsresult StopPropagation();
2892 nsresult PreventDefault();
2893 nsresult InitEvent(const nsAString *eventTypeArg, bool canBubbleArg, bool cancelableArg);
2894 nsresult GetDefaultPrevented(bool *aDefaultPrevented);
2895 nsresult StopImmediatePropagation();
2896 nsresult GetOriginalTarget(nsIDOMEventTarget **aOriginalTarget);
2897 nsresult GetExplicitOriginalTarget(nsIDOMEventTarget * *aExplicitOriginalTarget);
2898 nsresult GetPreventDefault(bool *_retval);
2899 nsresult GetIsTrusted(bool *aIsTrusted);
2900 nsresult DuplicatePrivateData();
2901 nsresult SetTarget(nsIDOMEventTarget *aTarget);
2902 bool IsDispatchStopped();
2903 /*nsEvent*/ void *GetInternalNSEvent();
2904 void SetTrusted(bool aTrusted);
2905 void Serialize(/*IPC::Message*/ void *aMsg, bool aSerializeInterfaceType);
2906 bool Deserialize(const /*IPC::Message*/ void *aMsg, void **aIter);
2907 void SetOwner(void /*mozilla::dom::EventTarget*/ *aOwner);
2908 void /*nsDOMEvent*/ *InternalDOMEvent();
2909 }
2910
2911 [
2912 object,
2913 uuid(cbe333d7-5b2c-4a9b-b99b-e6e388afa62b),
2914 local
2915 ]
2916 interface nsIDOMWindowUtils : nsISupports
2917 {
2918 nsresult GetImageAnimationMode(uint16_t *aImageAnimationMode);
2919 nsresult SetImageAnimationMode(uint16_t aImageAnimationMode);
2920 nsresult GetDocCharsetIsForced(bool *aDocCharsetIsForced);
2921 nsresult GetCursorType(int16_t *_retval);
2922 nsresult GetDocumentMetadata(const nsAString *aName, nsAString *_retval);
2923 nsresult Redraw(uint32_t aCount, uint32_t *_retval);
2924 nsresult SetCSSViewport(float aWidthPx, float aHeightPx);
2925 nsresult GetViewportInfo(uint32_t aDisplayWidth, uint32_t aDisplayHeight, double *aDefaultZoom, bool *aAllowZoom,
2926 double *aMinZoom, double *aMaxZoom, uint32_t *aWidth, uint32_t *aHeight, bool *aAutoSize);
2927 nsresult SetDisplayPortForElement(float aXPx, float aYPx, float aWidthPx, float aHeightPx, nsIDOMElement *aElement);
2928 nsresult SetCriticalDisplayPortForElement(float aXPx, float aYPx, float aWidthPx, float aHeightPx, nsIDOMElement *aElement);
2929 nsresult SetResolution(float aXResolution, float aYResolution);
2930 nsresult GetResolution(float *aXResolution, float *aYResolution);
2931 nsresult GetIsFirstPaint(bool *aIsFirstPaint);
2932 nsresult SetIsFirstPaint(bool aIsFirstPaint);
2933 nsresult GetPresShellId(uint32_t *aPresShellId);
2934 nsresult SendMouseEvent(const nsAString *aType, float aX, float aY, int32_t aButton, int32_t aClickCount,
2935 int32_t aModifiers, bool aIgnoreRootScrollFrame, float aPressure, uint16_t aInputSourceArg, bool *_retval);
2936 nsresult SendTouchEvent(const nsAString *aType, uint32_t *aIdentifiers, int32_t *aXs, int32_t *aYs,
2937 uint32_t *aRxs, uint32_t *aRys, float *aRotationAngles, float *aForces, uint32_t count, int32_t aModifiers,
2938 bool aIgnoreRootScrollFrame, bool *_retval);
2939 nsresult SendMouseEventToWindow(const nsAString *aType, float aX, float aY, int32_t aButton, int32_t aClickCount,
2940 int32_t aModifiers, bool aIgnoreRootScrollFrame, float aPressure, uint16_t aInputSourceArg);
2941 nsresult SendWheelEvent(float aX, float aY, double aDeltaX, double aDeltaY, double aDeltaZ, uint32_t aDeltaMode,
2942 int32_t aModifiers, int32_t aLineOrPageDeltaX, int32_t aLineOrPageDeltaY, uint32_t aOptions);
2943 nsresult SendKeyEvent(const nsAString *aType, int32_t aKeyCode, int32_t aCharCode, int32_t aModifiers,
2944 uint32_t aAdditionalFlags, bool *_retval);
2945 nsresult SendNativeKeyEvent(int32_t aNativeKeyboardLayout, int32_t aNativeKeyCode, int32_t aModifierFlags,
2946 const nsAString *aCharacters, const nsAString *aUnmodifiedCharacters);
2947 nsresult SendNativeMouseEvent(int32_t aScreenX, int32_t aScreenY, int32_t aNativeMessage, int32_t aModifierFlags,
2948 nsIDOMElement *aElement);
2949 nsresult SendNativeMouseScrollEvent(int32_t aScreenX, int32_t aScreenY, uint32_t aNativeMessage, double aDeltaX,
2950 double aDeltaY, double aDeltaZ, uint32_t aModifierFlags, uint32_t aAdditionalFlags, nsIDOMElement *aElement);
2951 nsresult ActivateNativeMenuItemAt(const nsAString *indexString);
2952 nsresult ForceUpdateNativeMenuAt(const nsAString *indexString);
2953 nsresult Focus(nsIDOMElement *aElement);
2954 nsresult GarbageCollect(nsICycleCollectorListener *aListener, int32_t aExtraForgetSkippableCalls);
2955 nsresult CycleCollect(nsICycleCollectorListener *aListener, int32_t aExtraForgetSkippableCalls);
2956 nsresult SendSimpleGestureEvent(const nsAString *aType, float aX, float aY, uint32_t aDirection, double aDelta,
2957 int32_t aModifiers, uint32_t aClickCount);
2958 nsresult ElementFromPoint(float aX, float aY, bool aIgnoreRootScrollFrame, bool aFlushLayout, nsIDOMElement **_retval);
2959 nsresult NodesFromRect(float aX, float aY, float aTopSize, float aRightSize, float aBottomSize, float aLeftSize,
2960 bool aIgnoreRootScrollFrame, bool aFlushLayout, nsIDOMNodeList **_retval);
2961 nsresult CompareCanvases(nsIDOMHTMLCanvasElement *aCanvas1, nsIDOMHTMLCanvasElement *aCanvas2,
2962 uint32_t *aMaxDifference, uint32_t *_retval);
2963 nsresult GetIsMozAfterPaintPending(bool *aIsMozAfterPaintPending);
2964 nsresult SuppressEventHandling(bool aSuppress);
2965 nsresult ClearMozAfterPaintEvents();
2966 nsresult DisableNonTestMouseEvents(bool aDisable);
2967 nsresult GetScrollXY(bool aFlushLayout, int32_t *aScrollX, int32_t *aScrollY);
2968 nsresult GetScrollbarSize(bool aFlushLayout, int32_t *aWidth, int32_t *aHeight);
2969 nsresult GetBoundsWithoutFlushing(nsIDOMElement *aElement, nsIDOMClientRect **_retval);
2970 nsresult GetRootBounds(nsIDOMClientRect **_retval);
2971 nsresult GetIMEIsOpen(bool *aIMEIsOpen);
2972 nsresult GetIMEStatus(uint32_t *aIMEStatus);
2973 nsresult GetScreenPixelsPerCSSPixel(float *aScreenPixelsPerCSSPixel);
2974 nsresult GetFullZoom(float *aFullZoom);
2975 nsresult DispatchDOMEventViaPresShell(nsIDOMNode *aTarget, nsIDOMEvent *aEvent, bool aTrusted, bool *_retval);
2976 nsresult DispatchEventToChromeOnly(nsIDOMEventTarget *aTarget, nsIDOMEvent *aEvent, bool *_retval);
2977 nsresult GetClassName(const /*JS::Value*/ void *aObject, JSContext *cx, char **_retval);
2978 nsresult SendContentCommandEvent(const nsAString *aType, nsITransferable *aTransferable);
2979 nsresult SendCompositionEvent(const nsAString *aType, const nsAString *aData, const nsAString *aLocale);
2980 nsresult SendTextEvent(const nsAString *aCompositionString, int32_t aFirstClauseLength, uint32_t aFirstClauseAttr,
2981 int32_t aSecondClauseLength, uint32_t aSecondClauseAttr, int32_t aThirdClauseLength, uint32_t aThirdClauseAttr,
2982 int32_t aCaretStart, int32_t aCaretLength);
2983 nsresult SendQueryContentEvent(uint32_t aType, uint32_t aOffset, uint32_t aLength, int32_t aX, int32_t aY,
2984 nsIQueryContentEventResult **_retval);
2985 nsresult RemoteFrameFullscreenChanged(nsIDOMElement *aFrameElement, const nsAString *aNewOrigin);
2986 nsresult RemoteFrameFullscreenReverted();
2987 nsresult ExitFullscreen();
2988 nsresult SendSelectionSetEvent(uint32_t aOffset, uint32_t aLength, bool aReverse, bool *_retval);
2989 nsresult SelectAtPoint(float aX, float aY, uint32_t aSelectBehavior, bool *_retval);
2990 nsresult GetVisitedDependentComputedStyle(nsIDOMElement *aElement, const nsAString *aPseudoElement,
2991 const nsAString *aPropertyName, nsAString *_retval);
2992 nsresult GetParent(const /*JS::Value*/ void *obj, JSContext *cx, /*JS::Value*/ void *_retval);
2993 nsresult GetOuterWindowID(uint64_t *aOuterWindowID);
2994 nsresult GetCurrentInnerWindowID(uint64_t *aCurrentInnerWindowID);
2995 nsresult EnterModalState();
2996 nsresult LeaveModalState();
2997 nsresult EnterModalStateWithWindow(nsIDOMWindow **_retval);
2998 nsresult LeaveModalStateWithWindow(nsIDOMWindow *aWindow);
2999 nsresult IsInModalState(bool *_retval);
3000 nsresult SuspendTimeouts();
3001 nsresult ResumeTimeouts();
3002 nsresult GetLayerManagerType(nsAString *aLayerManagerType);
3003 nsresult GetLayerManagerRemote(bool *aLayerManagerRemote);
3004 nsresult StartFrameTimeRecording(uint32_t *startIndex);
3005 nsresult StopFrameTimeRecording(uint32_t startIndex, float **paintTimes, uint32_t *frameCount, float **frameIntervals);
3006 nsresult BeginTabSwitch();
3007 nsresult GetDisplayDPI(float *aDisplayDPI);
3008 nsresult GetOuterWindowWithId(uint64_t aOuterWindowID, nsIDOMWindow **_retval);
3009 nsresult RenderDocument(const void /*nsRect*/ *aRect, uint32_t aFlags, int /*nscolor*/ aBackgroundColor,
3010 void /*gfxContext*/ *aThebesContext);
3011 nsresult AdvanceTimeAndRefresh(int64_t aMilliseconds);
3012 nsresult RestoreNormalRefresh();
3013 nsresult GetIsTestControllingRefreshes(bool *aIsTestControllingRefreshes);
3014 nsresult ComputeAnimationDistance(nsIDOMElement *element, const nsAString *property, const nsAString *value1,
3015 const nsAString *value2, double *_retval);
3016 nsresult WrapDOMFile(nsIFile *aFile, nsIDOMFile **_retval);
3017 nsresult GetFocusedInputType(char **aFocusedInputType);
3018 nsresult FindElementWithViewId(long /*nsViewID*/ aId, nsIDOMElement **_retval);
3019 nsresult LeafLayersPartitionWindow(bool *_retval);
3020 nsresult GetMayHaveTouchEventListeners(bool *aMayHaveTouchEventListeners);
3021 nsresult CheckAndClearPaintedState(nsIDOMElement *aElement, bool *_retval);
3022 nsresult GetFile(const nsAString *aName, const /*JS::Value*/ void *aBlobParts, const /*JS::Value*/ void *aParameters,
3023 JSContext* cx, uint8_t _argc, nsIDOMFile **_retval);
3024 nsresult GetBlob(const /*JS::Value*/ void *aBlobParts, const /*JS::Value*/ void *aParameters, JSContext *cx,
3025 uint8_t _argc, nsIDOMBlob * _retval);
3026 nsresult GetFileId(const /*JS::Value*/ void *aFile, JSContext *cx, int64_t *_retval);
3027 nsresult GetFileReferences(const nsAString *aDatabaseName, int64_t aId, int32_t *aRefCnt, int32_t *aDBRefCnt,
3028 int32_t *aSliceRefCnt, bool *_retval);
3029 nsresult IsIncrementalGCEnabled(JSContext *cx, bool *_retval);
3030 nsresult StartPCCountProfiling(JSContext *cx);
3031 nsresult StopPCCountProfiling(JSContext *cx);
3032 nsresult PurgePCCounts(JSContext *cx);
3033 nsresult GetPCCountScriptCount(JSContext *cx, int32_t *_retval);
3034 nsresult GetPCCountScriptSummary(int32_t script, JSContext *cx, nsAString *_retval);
3035 nsresult GetPCCountScriptContents(int32_t script, JSContext *cx, nsAString *_retval);
3036 nsresult GetPaintingSuppressed(bool *aPaintingSuppressed);
3037 nsresult GetPlugins(JSContext *cx, /*JS::Value*/ void *aPlugins);
3038 nsresult SetScrollPositionClampingScrollPortSize(float aWidth, float aHeight);
3039 nsresult SetContentDocumentFixedPositionMargins(float aTop, float aRight, float aBottom, float aLeft);
3040 nsresult PreventFurtherDialogs();
3041 nsresult LoadSheet(nsIURI *sheetURI, uint32_t type);
3042 nsresult RemoveSheet(nsIURI *sheetURI, uint32_t type);
3043 nsresult GetIsHandlingUserInput(bool *aIsHandlingUserInput);
3044 nsresult AllowScriptsToClose();
3045 nsresult GetIsParentWindowMainWidgetVisible(bool *aIsParentWindowMainWidgetVisible);
3046 nsresult IsNodeDisabledForEvents(nsIDOMNode *aNode, bool *_retval);
3047 nsresult GetPaintFlashing(bool *aPaintFlashing);
3048 nsresult SetPaintFlashing(bool aPaintFlashing);
3049 nsresult RunInStableState(nsIRunnable *runnable);
3050 nsresult RunBeforeNextEvent(nsIRunnable *runnable);
3051 nsresult GetOMTAOrComputedStyle(nsIDOMNode *aNode, const nsAString *aProperty, nsAString *_retval);
3052 }
3053
3054 cpp_quote("#define CONTEXT_NONE 0x00")
3055 cpp_quote("#define CONTEXT_LINK 0x01")
3056 cpp_quote("#define CONTEXT_IMAGE 0x02")
3057 cpp_quote("#define CONTEXT_DOCUMENT 0x04")
3058 cpp_quote("#define CONTEXT_TEXT 0x08")
3059 cpp_quote("#define CONTEXT_INPUT 0x10")
3060 cpp_quote("#define CONTEXT_BACKGROUND_IMAGE 0x20")
3061
3062 [
3063 object,
3064 uuid(3478b6b0-3875-11d4-94ef-0020183bf181),
3065 local
3066 ]
3067 interface nsIContextMenuListener : nsISupports
3068 {
3069 nsresult OnShowContextMenu(uint32_t aContextFlags, nsIDOMEvent *aEvent, nsIDOMNode *aNode);
3070 }
3071
3072 [
3073 object,
3074 uuid(d73852f8-7bd6-477d-8233-117dbf83860b),
3075 local
3076 ]
3077 interface nsIDOMUIEvent : nsIDOMEvent
3078 {
3079 nsresult GetView(nsIDOMWindow **aView);
3080 nsresult GetDetail(int32_t *aDetail);
3081 nsresult InitUIEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3082 nsIDOMWindow *viewArg, int32_t detailArg);
3083 nsresult GetLayerX(int32_t *aLayerX);
3084 nsresult GetLayerY(int32_t *aLayerY);
3085 nsresult GetPageX(int32_t *aPageX);
3086 nsresult GetPageY(int32_t *aPageY);
3087 nsresult GetWhich(uint32_t *aWhich);
3088 nsresult GetRangeParent(nsIDOMNode **aRangeParent);
3089 nsresult GetRangeOffset(int32_t *aRangeOffset);
3090 nsresult GetCancelBubble(bool *aCancelBubble);
3091 nsresult SetCancelBubble(bool aCancelBubble);
3092 nsresult GetIsChar(bool *aIsChar);
3093 }
3094
3095 [
3096 object,
3097 uuid(afb2e57b-2822-4969-b2a9-0cada6859534),
3098 local
3099 ]
3100 interface nsIDOMMouseEvent : nsIDOMUIEvent
3101 {
3102 nsresult GetScreenX(int32_t *aScreenX);
3103 nsresult GetScreenY(int32_t *aScreenY);
3104 nsresult GetMozMovementX(int32_t *aMozMovementX);
3105 nsresult GetMozMovementY(int32_t *aMozMovementY);
3106 nsresult GetClientX(int32_t *aClientX);
3107 nsresult GetClientY(int32_t *aClientY);
3108 nsresult GetCtrlKey(bool *aCtrlKey);
3109 nsresult GetShiftKey(bool *aShiftKey);
3110 nsresult GetAltKey(bool *aAltKey);
3111 nsresult GetMetaKey(bool *aMetaKey);
3112 nsresult GetButton(uint16_t *aButton);
3113 nsresult GetButtons(uint16_t *aButtons);
3114 nsresult GetRelatedTarget(nsIDOMEventTarget **aRelatedTarget);
3115 nsresult InitMouseEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3116 nsIDOMWindow *viewArg, int32_t detailArg, int32_t screenXArg, int32_t screenYArg,
3117 int32_t clientXArg, int32_t clientYArg, bool ctrlKeyArg, bool altKeyArg,
3118 bool shiftKeyArg, bool metaKeyArg, uint16_t buttonArg,
3119 nsIDOMEventTarget *relatedTargetArg);
3120 nsresult GetMozPressure(float *aMozPressure);
3121 nsresult GetMozInputSource(uint16_t *aMozInputSource);
3122 nsresult InitNSMouseEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3123 nsIDOMWindow *viewArg, int32_t detailArg, int32_t screenXArg, int32_t screenYArg,
3124 int32_t clientXArg, int32_t clientYArg, bool ctrlKeyArg, bool altKeyArg, bool shiftKeyArg,
3125 bool metaKeyArg, uint16_t buttonArg, nsIDOMEventTarget *relatedTargetArg, float pressure,
3126 uint16_t inputSourceArg);
3127 nsresult GetModifierState(const nsAString *keyArg, bool *_retval);
3128 }
3129
3130 [
3131 object,
3132 uuid(91a3d7f2-223b-4e09-a566-634e7ee0a31d),
3133 local
3134 ]
3135 interface nsIDOMKeyEvent : nsIDOMUIEvent
3136 {
3137 nsresult GetCharCode(uint32_t *aCharCode);
3138 nsresult GetKeyCode(uint32_t *aKeyCode);
3139 nsresult GetAltKey(bool *aAltKey);
3140 nsresult GetCtrlKey(bool *aCtrlKey);
3141 nsresult GetShiftKey(bool *aShiftKey);
3142 nsresult GetMetaKey(bool *aMetaKey);
3143 nsresult InitKeyEvent(const nsAString *typeArg, bool canBubbleArg,
3144 bool cancelableArg, nsIDOMWindow *viewArg, bool ctrlKeyArg,
3145 bool altKeyArg, bool shiftKeyArg, bool metaKeyArg, uint32_t keyCodeArg,
3146 uint32_t charCodeArg);
3147 nsresult GetModifierState(const nsAString *keyArg, bool *_retval);
3148 nsresult GetLocation(uint32_t *aLocation);
3149 nsresult GetKey(nsAString *aKey);
3150 }
3151
3152 [
3153 object,
3154 uuid(0b976267-4aaa-4f36-a2d4-27b5ca8d73bb),
3155 local
3156 ]
3157 interface nsIEmbeddingSiteWindow : nsISupports
3158 {
3159 nsresult SetDimensions(uint32_t flags, int32_t x, int32_t y, int32_t cx, int32_t cy);
3160 nsresult GetDimensions(uint32_t flags, int32_t *x, int32_t *y, int32_t *cx, int32_t *cy);
3161 nsresult SetFocus();
3162 nsresult GetVisibility(bool *aVisibility);
3163 nsresult SetVisibility(bool aVisibility);
3164 nsresult GetTitle(PRUnichar **aTitle);
3165 nsresult SetTitle(const PRUnichar *aTitle);
3166 nsresult GetSiteWindow(void **aSiteWindow);
3167 nsresult Blur();
3168 }
3169
3170 [
3171 object,
3172 uuid(2417cbfe-65ad-48a6-b4b6-eb84db174392),
3173 local
3174 ]
3175 interface nsIComponentRegistrar : nsISupports
3176 {
3177 nsresult AutoRegister(nsIFile *aSpec);
3178 nsresult AutoUnregister(nsIFile *aSpec);
3179 nsresult RegisterFactory(const nsCID *aClass, const char *aClassName,
3180 const char *aContractID, nsIFactory *aFactory);
3181 nsresult UnregisterFactory(const nsCID *aClass, nsIFactory *aFactory);
3182 nsresult RegisterFactoryLocation(const nsCID *aClass, const char *aClassName,
3183 const char *aContractID, nsIFile *aFile, const char *aLoaderStr,
3184 const char *aType);
3185 nsresult UnregisterFactoryLocation(const nsCID *aClass, nsIFile *aFile);
3186 nsresult IsCIDRegistered(const nsCID *aClass, bool *_retval);
3187 nsresult IsContractIDRegistered(const char *aContractID, bool *_retval);
3188 nsresult EnumerateCIDs(nsISimpleEnumerator **_retval);
3189 nsresult EnumerateContractIDs(nsISimpleEnumerator **_retval);
3190 nsresult CIDToContractID(const nsCID *aClass, char **_retval);
3191 nsresult ContractIDToCID(const char *aContractID, nsCID **_retval);
3192 }
3193
3194 [
3195 object,
3196 uuid(1630c61a-325e-49ca-8759-a31b16c47aa5),
3197 local
3198 ]
3199 interface nsIPromptService : nsISupports
3200 {
3201 nsresult Alert(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3202 const PRUnichar *aText);
3203 nsresult AlertCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3204 const PRUnichar *aText, const PRUnichar *aCheckMsg, bool *aCheckState);
3205 nsresult Confirm(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3206 const PRUnichar *aText, bool *_retval);
3207 nsresult ConfirmCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3208 const PRUnichar *aText, const PRUnichar *aCheckMsg, bool *aCheckState,
3209 bool *_retval);
3210 nsresult ConfirmEx(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3211 const PRUnichar *aText, uint32_t aButtonFlags, const PRUnichar *aButton0Title,
3212 const PRUnichar *aButton1Title, const PRUnichar *aButton2Title,
3213 const PRUnichar *aCheckMsg, bool *aCheckState, int32_t *_retval);
3214 nsresult Prompt(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3215 const PRUnichar *aText, PRUnichar **aValue, const PRUnichar *aCheckMsg,
3216 bool *aCheckState, bool *_retval);
3217 nsresult PromptUsernameAndPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3218 const PRUnichar *aText, PRUnichar **aUsername, PRUnichar **aPassword,
3219 const PRUnichar *aCheckMsg, bool *aCheckState, bool *_retval);
3220 nsresult PromptPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3221 const PRUnichar *aText, PRUnichar **aPassword, const PRUnichar *aCheckMsg,
3222 bool *aCheckState, bool *_retval);
3223 nsresult Select(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3224 const PRUnichar *aText, uint32_t aCount, const PRUnichar **aSelectList,
3225 int32_t *aOutSelection, bool *_retval);
3226 }
3227
3228 [
3229 object,
3230 uuid(b128a1e6-44f3-4331-8fbe-5af360ff21ee),
3231 local
3232 ]
3233 interface nsITooltipTextProvider : nsISupports
3234 {
3235 nsresult GetNodeText(nsIDOMNode *aNode, PRUnichar **aText, bool *_retval);
3236 }
3237
3238 [
3239 object,
3240 uuid(24f3f4da-18a4-448d-876d-7360fefac029),
3241 local
3242 ]
3243 interface nsIEditingSession : nsISupports
3244 {
3245 nsresult GetEditorStatus(uint32_t *aEditorStatus);
3246 nsresult MakeWindowEditable(nsIDOMWindow *window, const char *aEditorType,
3247 bool doAfterUriLoad, bool aMakeWholeDocumentEditable, bool aInteractive);
3248 nsresult WindowIsEditable(nsIDOMWindow *window, bool *_retval);
3249 nsresult GetEditorForWindow(nsIDOMWindow *window, nsIEditor **_retval);
3250 nsresult SetupEditorOnWindow(nsIDOMWindow *window);
3251 nsresult TearDownEditorOnWindow(nsIDOMWindow *window);
3252 nsresult SetEditorOnControllers(nsIDOMWindow *aWindow, nsIEditor *aEditor);
3253 nsresult DisableJSAndPlugins(nsIDOMWindow *aWindow);
3254 nsresult RestoreJSAndPlugins(nsIDOMWindow *aWindow);
3255 nsresult DetachFromWindow(nsIDOMWindow *aWindow);
3256 nsresult ReattachToWindow(nsIDOMWindow *aWindow);
3257 nsresult GetJsAndPluginsDisabled(bool *aJsAndPluginsDisabled);
3258 }
3259
3260 [
3261 object,
3262 uuid(83f892cf-7ed3-490e-967a-62640f3158e1),
3263 local
3264 ]
3265 interface nsICommandParams : nsISupports
3266 {
3267 nsresult GetValueType(const char *name, int16_t *_retval);
3268 nsresult GetBooleanValue(const char *name, bool *_retval);
3269 nsresult GetLongValue(const char *name, int32_t *_retval);
3270 nsresult GetDoubleValue(const char *name, double *_retval);
3271 nsresult GetStringValue(const char *name, nsAString *_retval);
3272 nsresult GetCStringValue(const char *name, char **_retval);
3273 nsresult GetISupportsValue(const char *name, nsISupports **_retval);
3274 nsresult SetBooleanValue(const char *name, bool value);
3275 nsresult SetLongValue(const char *name, int32_t value);
3276 nsresult SetDoubleValue(const char *name, double value);
3277 nsresult SetStringValue(const char *name, const nsAString *value);
3278 nsresult SetCStringValue(const char *name, const char *value);
3279 nsresult SetISupportsValue(const char *name, nsISupports *value);
3280 nsresult RemoveValue(const char *name);
3281 nsresult HasMoreElements(bool *_retval);
3282 nsresult First();
3283 nsresult GetNext(char **_retval);
3284 }
3285
3286 [
3287 object,
3288 uuid(080d2001-f91e-11d4-a73c-f9242928207c),
3289 local
3290 ]
3291 interface nsICommandManager : nsISupports
3292 {
3293 nsresult AddCommandObserver(nsIObserver *aCommandObserver, const char *aCommandToObserve);
3294 nsresult RemoveCommandObserver(nsIObserver *aCommandObserver, const char *aCommandObserved);
3295 nsresult IsCommandSupported(const char *aCommandName, nsIDOMWindow *aTargetWindow, bool *_retval);
3296 nsresult IsCommandEnabled(const char *aCommandName, nsIDOMWindow *aTargetWindow, bool *_retval);
3297 nsresult GetCommandState(const char *aCommandName, nsIDOMWindow *aTargetWindow,
3298 nsICommandParams *aCommandParams);
3299 nsresult DoCommand(const char *aCommandName, nsICommandParams *aCommandParams,
3300 nsIDOMWindow *aTargetWindow);
3301 }
3302
3303 [
3304 object,
3305 uuid(3275b2cd-af6d-429a-80d7-f0c5120342ac),
3306 local
3307 ]
3308 interface nsICategoryManager : nsISupports
3309 {
3310 nsresult GetCategoryEntry(const char *aCategory, const char *aEntry, char **_retval);
3311 nsresult AddCategoryEntry(const char *aCategory, const char *aEntry, const char *aValue, bool aPersist,
3312 bool aReplace, char **_retval);
3313 nsresult DeleteCategoryEntry(const char *aCategory, const char *aEntry, bool aPersist);
3314 nsresult DeleteCategory(const char *aCategory);
3315 nsresult EnumerateCategory(const char *aCategory, nsISimpleEnumerator **_retval);
3316 nsresult EnumerateCategories(nsISimpleEnumerator **_retval);
3317 }
3318
3319 [
3320 object,
3321 uuid(47b82b60-a36f-4167-8072-6f421151ed50),
3322 local
3323 ]
3324 interface nsIControllerContext : nsISupports
3325 {
3326 nsresult Init(nsIControllerCommandTable *aCommandTable);
3327 nsresult SetCommandContext(nsISupports *aCommandContext);
3328 }
3329
3330 [
3331 object,
3332 uuid(d5b61b82-1da4-11d3-bf87-00105a1b0627),
3333 local
3334 ]
3335 interface nsIController : nsISupports
3336 {
3337 nsresult IsCommandEnabled(const char *command, bool *_retval);
3338 nsresult SupportsCommand(const char *command, bool *_retval);
3339 nsresult DoCommand(const char *command);
3340 nsresult OnEvent(const char *eventName);
3341 }
3342
3343 [
3344 object,
3345 uuid(8a8b4b1d-72d8-428e-9575-f918baf69ea1),
3346 local
3347 ]
3348 interface nsIContent : nsISupports
3349 {
3350 /* This is not a real interface declaration. It's too internal for us. */
3351 }
3352
3353 [
3354 object,
3355 uuid(62cca591-a030-4117-9b80-dcd366bbb509),
3356 local
3357 ]
3358 interface nsIDocument : nsISupports
3359 {
3360 /* This is not a real interface declaration. It's too internal for us. */
3361 }
3362
3363 [
3364 object,
3365 uuid(b1ee32f2-b8c4-49b9-93df-b6fab5d54688),
3366 local
3367 ]
3368 interface nsIContentSerializer : nsISupports
3369 {
3370 nsresult Init(uint32_t flags, uint32_t aWrapColumn, const char *aCharSet, bool aIsCopying,
3371 bool aIsWholeDocument);
3372 nsresult AppendText(nsIContent *aText, int32_t aStartOffset, int32_t aEndOffset, nsAString *aStr);
3373 nsresult AppendCDATASection(nsIContent *aCDATASection, int32_t aStartOffset,
3374 int32_t aEndOffset, nsAString *aStr);
3375 nsresult AppendProcessingInstruction(nsIContent *aPI, int32_t aStartOffset,
3376 int32_t aEndOffset, nsAString *aStr);
3377 nsresult AppendComment(nsIContent *aComment, int32_t aStartOffset, int32_t aEndOffset,
3378 nsAString *aStr);
3379 nsresult AppendDoctype(nsIContent *aDoctype, nsAString *aStr);
3380 nsresult AppendElementStart(nsIContent *aElement, nsIContent *aOriginalElement,
3381 nsAString *aStr);
3382 nsresult AppendElementEnd(nsIContent *aElement, nsAString *aStr);
3383 nsresult Flush(nsAString *aStr);
3384 nsresult AppendDocumentStart(nsIDocument *aDocument, nsAString *aStr);
3385 }
3386
3387 [
3388 object,
3389 uuid(753b38d1-ee03-4e58-a650-1076ccccdb7f),
3390 local
3391 ]
3392 interface nsIEditor : nsISupports
3393 {
3394 typedef void *nsIContentPtr;
3395
3396 nsresult GetSelection([out] nsISelection *_retval);
3397 nsresult Init([in] nsIDOMDocument *doc, [in] nsIContentPtr aRoot, [in] nsISelectionController *aSelCon, [in] uint32_t aFlags);
3398 nsresult SetAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] const nsAString *sourceAttrValue, [in] bool aSuppressTransaction);
3399 nsresult RemoveAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] bool aSuppressTransaction);
3400 nsresult PostCreate();
3401 nsresult PreDestroy();
3402 nsresult GetFlags([out] uint32_t *_retval);
3403 nsresult SetFlags([in] uint32_t val);
3404 nsresult GetContentsMIMEType([out] char **_retval);
3405 nsresult SetContentsMIMEType([in] const char *val);
3406 nsresult GetIsDocumentEditable([out] bool *_retval);
3407 nsresult GetIsSelectionEditable(bool *aIsSelectionEditable);
3408 nsresult GetDocument([out] nsIDOMDocument **_retval);
3409 nsresult GetRootElement([out] nsIDOMElement **_retval);
3410 nsresult GetSelectionController([out] nsISelectionController **_retval);
3411 nsresult DeleteSelection(int16_t action, int16_t aStripWrappers);
3412 nsresult GetDocumentIsEmpty([out] bool *_retval);
3413 nsresult GetDocumentModified([out] bool *_retval);
3414 nsresult GetDocumentCharacterSet([out] nsACString *_retval);
3415 nsresult SetDocumentCharacterSet([in] const nsACString *val);
3416 nsresult ResetModificationCount();
3417 nsresult GetModificationCount([out] int32_t *_retval);
3418 nsresult IncrementModificationCount([in] int32_t aModCount);
3419 nsresult GetTransactionManager([out] nsITransactionManager **_retval);
3420 nsresult SetTransactionManager(nsITransactionManager *aTransactionManager);
3421 nsresult DoTransaction([in] nsITransaction *txn);
3422 nsresult EnableUndo([in] bool enable);
3423 nsresult GetNumberOfUndoItems(int32_t *aNumberOfUndoItems);
3424 nsresult GetNumberOfRedoItems(int32_t *aNumberOfRedoItems);
3425 nsresult Undo([in] uint32_t count);
3426 nsresult CanUndo([out] bool *isEnabled, [out] bool *canUndo);
3427 nsresult Redo([in] uint32_t count);
3428 nsresult CanRedo([out] bool *isEnabled, [out] bool *canRedo);
3429 nsresult BeginTransaction();
3430 nsresult EndTransaction();
3431 nsresult BeginPlaceHolderTransaction([in] nsIAtom *name);
3432 nsresult EndPlaceHolderTransaction();
3433 nsresult ShouldTxnSetSelection([out] bool *_retval);
3434 nsresult SetShouldTxnSetSelection([in] bool should);
3435 nsresult GetInlineSpellChecker([out] nsIInlineSpellChecker **_retval);
3436 nsresult SyncRealTimeSpell();
3437 nsresult SetSpellcheckUserOverride(bool enable);
3438 nsresult Cut();
3439 nsresult CanCut([out] bool *_retval);
3440 nsresult Copy();
3441 nsresult CanCopy([out] bool *_retval);
3442 nsresult Paste([in] int32_t aSelectionType);
3443 nsresult PasteTransferable(nsITransferable *aTransferable);
3444 nsresult CanPaste([in] int32_t aSelectionType, [out] bool *_retval);
3445 nsresult CanPasteTransferable(nsITransferable *aTransferable, bool *_retval);
3446 nsresult SelectAll();
3447 nsresult BeginningOfDocument();
3448 nsresult EndOfDocument();
3449 nsresult SetAttribute([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [in] const nsAString *attvalue);
3450 nsresult GetAttributeValue([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [out] nsAString *resultValue, bool *_retval);
3451 nsresult RemoveAttribute([in] nsIDOMElement *aElement, [in] const nsAString *aAttribute);
3452 nsresult CloneAttribute([in] const nsAString *aAttribute, [in] nsIDOMNode *aDestNode, [in] nsIDOMNode *aSourceNode);
3453 nsresult CloneAttributes([in] nsIDOMNode *destNode, [in] nsIDOMNode *sourceNode);
3454 nsresult CreateNode([in] const nsAString *tag, [in] nsIDOMNode *parent, [in] int32_t position, [out] nsIDOMNode **_retval);
3455 nsresult InsertNode([in] nsIDOMNode *node, [in] nsIDOMNode *parent, [in] int32_t aPosition);
3456 nsresult SplitNode([in] nsIDOMNode *existingRightNode, [in] int32_t offset, [out] nsIDOMNode **newLeftNode);
3457 nsresult JoinNodes([in] nsIDOMNode *leftNode, [in] nsIDOMNode *rightNode, [in] nsIDOMNode *parent);
3458 nsresult DeleteNode([in] nsIDOMNode *child);
3459 bool OutputsMozDirty();
3460 nsresult MarkNodeDirty([in] nsIDOMNode *node);
3461 nsresult SwitchTextDirection();
3462 nsresult OutputToString([in] nsAString formatType, [in] uint32_t flags, [out] nsAString *_retval);
3463 nsresult OutputToStream([in] nsIOutputStream *aStream, [in] nsAString *formatType, [in] nsACString *charsetOverride, [in] uint32_t flags);
3464 nsresult SetEditorObserver(nsIEditorObserver *observer);
3465 nsresult RemoveEditorObserver(nsIEditorObserver *observer);
3466 nsresult AddEditActionListener([in] nsIEditActionListener *listener);
3467 nsresult RemoveEditActionListener([in] nsIEditActionListener *listener);
3468 nsresult AddDocumentStateListener([in] nsIDocumentStateListener *listener);
3469 nsresult RemoveDocumentStateListener([in] nsIDocumentStateListener *listener);
3470 nsresult DumpContentTree();
3471 nsresult DebugDumpContent();
3472 nsresult DebugUnitTests([out] int32_t *outNumTests, [out] int32_t *outNumTestsFailed);
3473 bool IsModifiableNode(nsIDOMNode *aNode);
3474 nsresult GetLastKeypressEventTrusted(bool *aLastKeypressEventTrusted);
3475 nsresult SetSuppressDispatchingInputEvent(bool aSuppressDispatchingInputEvent);
3476 }
3477
3478 [
3479 object,
3480 uuid(833f30de-94c7-4630-a852-2300ef329d7b),
3481 local
3482 ]
3483 interface nsIHTMLEditor : nsISupports
3484 {
3485 nsresult AddDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3486 nsresult RemoveDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3487 nsresult RemoveAllDefaultProperties();
3488 nsresult SetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3489 nsresult GetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] bool *aFirst, [out] bool *aAny, [out] bool *aAll);
3490 nsresult GetInlinePropertyWithAttrValue([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] bool *aFirst, [out] bool *aAny, [out] bool *aAll, [out] nsAString *_retval);
3491 nsresult RemoveAllInlineProperties();
3492 nsresult RemoveInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute);
3493 nsresult IncreaseFontSize();
3494 nsresult DecreaseFontSize();
3495 nsresult NodeIsBlock([in] nsIDOMNode *node, bool *_retval);
3496 nsresult InsertHTML([in] nsAString *aInputString);
3497 nsresult PasteNoFormatting([in] int32_t aSelectionType);
3498 nsresult RebuildDocumentFromSource([in] nsAString *aSourceString);
3499 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);
3500 nsresult InsertElementAtSelection([in] nsIDOMElement *aElement, [in] bool aDeleteSelection);
3501 nsresult SetDocumentTitle([in] nsAString *aTitle);
3502 nsresult UpdateBaseURL();
3503 nsresult SelectElement([in] nsIDOMElement *aElement);
3504 nsresult SetCaretAfterElement([in] nsIDOMElement *aElement);
3505 nsresult SetParagraphFormat([in] nsAString *aParagraphFormat);
3506 nsresult GetParagraphState([out] bool *aMixed, [out] nsAString *_retval);
3507 nsresult GetFontFaceState([out] bool *aMixed, [out] nsAString *_retval);
3508 nsresult GetFontColorState([out] bool *aMixed, [out] nsAString *_retval);
3509 nsresult GetBackgroundColorState([out] bool *aMixed, [out] nsAString *_retval);
3510 nsresult GetHighlightColorState([out] bool *aMixed, [out] nsAString *_retval);
3511 nsresult GetListState([out] bool *aMixed, [out] bool *aOL, [out] bool *aUL, [out] bool *aDL);
3512 nsresult GetListItemState([out] bool *aMixed, [out] bool *aLI, [out] bool *aDT, [out] bool *aDD);
3513 nsresult GetAlignment([out] bool *aMixed, [out] int16_t *aAlign);
3514 nsresult GetIndentState([out] bool *aCanIndent, [out] bool *aCanOutdent);
3515 nsresult MakeOrChangeList([in] nsAString *aListType, [in] bool entireList, [in] nsAString *aBulletType);
3516 nsresult RemoveList([in] nsAString *aListType);
3517 nsresult Indent([in] nsAString *aIndent);
3518 nsresult Align([in] nsAString *aAlign);
3519 nsresult GetElementOrParentByTagName([in] nsAString *aTagName, [in] nsIDOMNode *aNode, [out] nsIDOMElement **_retval);
3520 nsresult GetSelectedElement([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
3521 nsresult GetHeadContentsAsHTML([out] nsAString *_retval);
3522 nsresult ReplaceHeadContentsWithHTML([in] nsAString *aSourceToInsert);
3523 nsresult CreateElementWithDefaults([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
3524 nsresult InsertLinkAroundSelection([in] nsIDOMElement *aAnchorElement);
3525 nsresult SetBackgroundColor([in] nsAString *aColor);
3526 nsresult SetBodyAttribute([in] nsAString *aAttr, [in] nsAString *aValue);
3527 nsresult GetLinkedObjects([out] nsISupportsArray **_retval);
3528 nsresult GetIsCSSEnabled([out] bool *_retval);
3529 nsresult SetIsCSSEnabled([in] bool prb);
3530 nsresult AddInsertionListener([in] nsIContentFilter *inFilter);
3531 nsresult RemoveInsertionListener([in] nsIContentFilter *inFilter);
3532 nsresult CreateAnonymousElement([in] nsAString *aTag, [in] nsIDOMNode *aParentNode, [in] nsAString *aAnonClass, [in] bool aIsCreatedHidden, [out] nsIDOMElement **_retval);
3533 nsresult GetSelectionContainer([out] nsIDOMElement **_retval);
3534 nsresult CheckSelectionStateForAnonymousButtons([in] nsISelection *aSelection);
3535 nsresult IsAnonymousElement([in] nsIDOMElement *aElement, [out] bool *_retval);
3536 nsresult GetReturnInParagraphCreatesNewParagraph([out] bool *_retval);
3537 nsresult SetReturnInParagraphCreatesNewParagraph([in] bool prb);
3538 nsresult BreakIsVisible(nsIDOMNode *aNode, bool *_retval);
3539 void /*Element*/ *GetActiveEditingHost();
3540 }
3541
3542 interface nsIDocShellTreeItem;
3543
3544 [
3545 object,
3546 uuid(37f1ab73-f224-44b1-82f0-d2834ab1cec0),
3547 local
3548 ]
3549 interface nsIDocShellTreeNode : nsISupports
3550 {
3551 nsresult GetChildCount(int32_t *aChildCount);
3552 nsresult AddChild(nsIDocShellTreeItem *child);
3553 nsresult RemoveChild(nsIDocShellTreeItem *child);
3554 nsresult GetChildAt(int32_t index, nsIDocShellTreeItem **_retval);
3555 nsresult FindChildWithName(const PRUnichar *aName, bool aRecurse, bool aSameType, nsIDocShellTreeItem *aRequestor,
3556 nsIDocShellTreeItem *aOriginalRequestor, nsIDocShellTreeItem **_retval);
3557 }
3558
3559 [
3560 object,
3561 uuid(e35bbb39-985b-4d62-81da-73c330222e5f),
3562 local
3563 ]
3564 interface nsIDocShellTreeItem : nsIDocShellTreeNode
3565 {
3566 nsresult GetName(nsAString *aName);
3567 nsresult SetName(const nsAString *aName);
3568 nsresult NameEquals(const PRUnichar *name, bool *_retval);
3569 nsresult GetItemType(int32_t *aItemType);
3570 nsresult SetItemType(int32_t aItemType);
3571 nsresult GetParent(nsIDocShellTreeItem **aParent);
3572 nsresult GetSameTypeParent(nsIDocShellTreeItem **aSameTypeParent);
3573 nsresult GetRootTreeItem(nsIDocShellTreeItem **aRootTreeItem);
3574 nsresult GetSameTypeRootTreeItem(nsIDocShellTreeItem **aSameTypeRootTreeItem);
3575 nsresult FindItemWithName(const PRUnichar *name, nsISupports *aRequestor, nsIDocShellTreeItem *aOriginalRequestor, nsIDocShellTreeItem **_retval);
3576 nsresult GetTreeOwner(nsIDocShellTreeOwner **aTreeOwner);
3577 nsresult SetTreeOwner(nsIDocShellTreeOwner *treeOwner);
3578 }
3579
3580 [
3581 object,
3582 uuid(f453d2ee-bac7-46f9-a553-df918f0cc0d0),
3583 local
3584 ]
3585 interface nsIDocShell : nsIDocShellTreeItem
3586 {
3587 nsresult LoadURI(nsIURI *uri, nsIDocShellLoadInfo *loadInfo, uint32_t aLoadFlags, bool firstParty);
3588 nsresult LoadStream(nsIInputStream *aStream, nsIURI *aURI, const nsACString *aContentType,
3589 const nsACString *aContentCharset, nsIDocShellLoadInfo *aLoadInfo);
3590 nsresult InternalLoad(nsIURI *aURI, nsIURI *aReferrer, nsISupports *aOwner, uint32_t aFlags, const PRUnichar *aWindowTarget,
3591 const char *aTypeHint, nsACString *aFileName, nsIInputStream *aPostDataStream, nsIInputStream *aHeadersStream,
3592 uint32_t aLoadFlags, nsISHEntry *aSHEntry, bool firstParty, nsIDocShell **aDocShell, nsIRequest **aRequest);
3593 nsresult AddState(nsIVariant *aData, const nsAString *aTitle, const nsAString *aURL, bool aReplace, JSContext *cx);
3594 nsresult CreateLoadInfo(nsIDocShellLoadInfo **loadInfo);
3595 nsresult PrepareForNewContentModel();
3596 nsresult SetCurrentURI(nsIURI *aURI);
3597 nsresult FirePageHideNotification(bool isUnload);
3598 nsresult GetPresContext(void /*nsPresContext*/ **aPresContext);
3599 nsIPresShell *GetPresShell();
3600 nsresult GetEldestPresShell(nsIPresShell **aEldestPresShell);
3601 nsresult GetContentViewer(nsIContentViewer **aContentViewer);
3602 nsresult GetChromeEventHandler(nsIDOMEventTarget **aChromeEventHandler);
3603 nsresult SetChromeEventHandler(nsIDOMEventTarget *aChromeEventHandler);
3604 nsresult GetAllowPlugins(bool *aAllowPlugins);
3605 nsresult SetAllowPlugins(bool aAllowPlugins);
3606 nsresult GetAllowJavascript(bool *aAllowJavascript);
3607 nsresult SetAllowJavascript(bool aAllowJavascript);
3608 nsresult GetDisableNoScript(bool *aDisableNoScript);
3609 nsresult SetDisableNoScript(bool aDisableNoScript);
3610 nsresult GetAllowMetaRedirects(bool *aAllowMetaRedirects);
3611 nsresult SetAllowMetaRedirects(bool aAllowMetaRedirects);
3612 nsresult GetAllowSubframes(bool *aAllowSubframes);
3613 nsresult SetAllowSubframes(bool aAllowSubframes);
3614 nsresult GetAllowImages(bool *aAllowImages);
3615 nsresult SetAllowImages(bool aAllowImages);
3616 nsresult GetAllowMedia(bool *aAllowMedia);
3617 nsresult SetAllowMedia(bool aAllowMedia);
3618 nsresult GetAllowDNSPrefetch(bool *aAllowDNSPrefetch);
3619 nsresult SetAllowDNSPrefetch(bool aAllowDNSPrefetch);
3620 nsresult GetAllowWindowControl(bool *aAllowWindowControl);
3621 nsresult SetAllowWindowControl(bool aAllowWindowControl);
3622 nsresult GetDocShellEnumerator(int32_t aItemType, int32_t aDirection, nsISimpleEnumerator **_retval);
3623 nsresult GetAppType(uint32_t *aAppType);
3624 nsresult SetAppType(uint32_t aAppType);
3625 nsresult GetAllowAuth(bool *aAllowAuth);
3626 nsresult SetAllowAuth(bool aAllowAuth);
3627 nsresult GetZoom(float *aZoom);
3628 nsresult SetZoom(float aZoom);
3629 nsresult GetMarginWidth(int32_t *aMarginWidth);
3630 nsresult SetMarginWidth(int32_t aMarginWidth);
3631 nsresult GetMarginHeight(int32_t *aMarginHeight);
3632 nsresult SetMarginHeight(int32_t aMarginHeight);
3633 nsresult TabToTreeOwner(bool forward, bool *tookFocus);
3634 nsresult GetBusyFlags(uint32_t *aBusyFlags);
3635 nsresult GetLoadType(uint32_t *aLoadType);
3636 nsresult SetLoadType(uint32_t aLoadType);
3637 nsresult IsBeingDestroyed(bool *_retval);
3638 nsresult GetIsExecutingOnLoadHandler(bool *aIsExecutingOnLoadHandler);
3639 nsresult GetLayoutHistoryState(nsILayoutHistoryState **aLayoutHistoryState);
3640 nsresult SetLayoutHistoryState(nsILayoutHistoryState *aLayoutHistoryState);
3641 nsresult GetShouldSaveLayoutState(bool *aShouldSaveLayoutState);
3642 nsresult GetSecurityUI(nsISecureBrowserUI **aSecurityUI);
3643 nsresult SetSecurityUI(nsISecureBrowserUI *aSecurityUI);
3644 nsresult SuspendRefreshURIs();
3645 nsresult ResumeRefreshURIs();
3646 nsresult BeginRestore(nsIContentViewer *viewer, bool top);
3647 nsresult FinishRestore();
3648 nsresult GetRestoringDocument(bool *aRestoringDocument);
3649 nsresult GetUseErrorPages(bool *aUseErrorPages);
3650 nsresult SetUseErrorPages(bool aUseErrorPages);
3651 nsresult GetPreviousTransIndex(int32_t *aPreviousTransIndex);
3652 nsresult GetLoadedTransIndex(int32_t *aLoadedTransIndex);
3653 nsresult HistoryPurged(int32_t numEntries);
3654 nsresult GetSessionStorageForPrincipal(nsIPrincipal *principal, const nsAString *documentURI,
3655 bool create, nsIDOMStorage **_retval);
3656 nsresult AddSessionStorage(nsIPrincipal *principal, nsIDOMStorage *storage);
3657 nsresult GetCurrentDocumentChannel(nsIChannel **aCurrentDocumentChannel);
3658 nsresult SetChildOffset(uint32_t offset);
3659 nsresult GetIsInUnload(bool *aIsInUnload);
3660 nsresult GetChannelIsUnsafe(bool *aChannelIsUnsafe);
3661 nsresult GetHasMixedActiveContentLoaded(bool *aHasMixedActiveContentLoaded);
3662 nsresult GetHasMixedActiveContentBlocked(bool *aHasMixedActiveContentBlocked);
3663 nsresult GetHasMixedDisplayContentLoaded(bool *aHasMixedDisplayContentLoaded);
3664 nsresult GetHasMixedDisplayContentBlocked(bool *aHasMixedDisplayContentBlocked);
3665 void DetachEditorFromWindow();
3666 nsresult GetIsOffScreenBrowser(bool *aIsOffScreenBrowser);
3667 nsresult SetIsOffScreenBrowser(bool aIsOffScreenBrowser);
3668 nsresult GetPrintPreview(nsIWebBrowserPrint **aPrintPreview);
3669 nsresult GetCanExecuteScripts(bool *aCanExecuteScripts);
3670 nsresult GetIsActive(bool *aIsActive);
3671 nsresult SetIsActive(bool aIsActive);
3672 nsresult GetHistoryID(uint64_t *aHistoryID);
3673 nsresult GetIsAppTab(bool *aIsAppTab);
3674 nsresult SetIsAppTab(bool aIsAppTab);
3675 nsresult CreateAboutBlankContentViewer(nsIPrincipal *aPrincipal);
3676 nsresult GetCharset(char **aCharset);
3677 nsresult SetCharset(const char * aCharset);
3678 nsresult GatherCharsetMenuTelemetry();
3679 nsresult GetForcedCharset(nsIAtom **aForcedCharset);
3680 nsresult SetForcedCharset(nsIAtom *aForcedCharset);
3681 nsresult GetParentCharset(nsIAtom **aParentCharset);
3682 nsresult SetParentCharset(nsIAtom *aParentCharset);
3683 nsresult GetParentCharsetSource(int32_t *aParentCharsetSource);
3684 nsresult SetParentCharsetSource(int32_t aParentCharsetSource);
3685 nsresult AddWeakPrivacyTransitionObserver(nsIPrivacyTransitionObserver *obs);
3686 nsresult AddWeakReflowObserver(nsISupports /*nsIReflowObserver*/ *obs);
3687 nsresult RemoveWeakReflowObserver(nsISupports /*nsIReflowObserver*/ *obs);
3688 nsresult NotifyReflowObservers(bool interruptible, int /*DOMHighResTimeStamp*/ start, int /*DOMHighResTimeStamp*/ end);
3689 nsresult GetIsBrowserElement(bool *aIsBrowserElement);
3690 nsresult GetIsApp(bool *aIsApp);
3691 nsresult GetIsBrowserOrApp(bool *aIsBrowserOrApp);
3692 nsresult GetIsInBrowserElement(bool *aIsInBrowserElement);
3693 nsresult GetIsInBrowserOrApp(bool *aIsInBrowserOrApp);
3694 nsresult SetIsApp(uint32_t ownAppId);
3695 nsresult SetIsBrowserInsideApp(uint32_t containingAppId);
3696 nsresult GetAppId(uint32_t *aAppId);
3697 nsresult GetSameTypeParentIgnoreBrowserAndAppBoundaries(nsIDocShell **_retval);
3698 nsresult GetAsyncPanZoomEnabled(bool *aAsyncPanZoomEnabled);
3699 nsresult GetSandboxFlags(uint32_t *aSandboxFlags);
3700 nsresult SetSandboxFlags(uint32_t aSandboxFlags);
3701 nsresult GetMixedContentChannel(nsIChannel **aMixedContentChannel);
3702 nsresult SetMixedContentChannel(nsIChannel *aMixedContentChannel);
3703 nsresult GetAllowMixedContentAndConnectionData(bool *rootHasSecureConnection, bool *allowMixedContent, bool *isRootDocShell);
3704 bool PluginsAllowedInCurrentDoc();
3705 nsresult GetFullscreenAllowed(bool *aFullscreenAllowed);
3706 nsresult SetFullscreenAllowed(bool allowed);
3707 nsresult GetAffectPrivateSessionLifetime(bool *aAffectPrivateSessionLifetime);
3708 nsresult SetAffectPrivateSessionLifetime(bool aAffectPrivateSessionLifetime);
3709 nsresult GetMayEnableCharacterEncodingMenu(bool *aMayEnableCharacterEncodingMenu);
3710 nsresult GetEditor(nsIEditor **aEditor);
3711 nsresult SetEditor(nsIEditor *aEditor);
3712 nsresult GetEditable(bool *aEditable);
3713 nsresult GetHasEditingSession(bool *aHasEditingSession);
3714 nsresult MakeEditable(bool inWaitForUriLoad);
3715 nsresult GetChildSHEntry(int32_t aChildOffset, nsISHEntry **_retval);
3716 nsresult AddChildSHEntry(nsISHEntry *aCloneReference, nsISHEntry *aHistoryEntry, int32_t aChildOffset, uint32_t aLoadType, bool aCloneChildren);
3717 nsresult GetUseGlobalHistory(bool *aUseGlobalHistory);
3718 nsresult SetUseGlobalHistory(bool aUseGlobalHistory);
3719 nsresult RemoveFromSessionHistory();
3720 nsresult GetCreatedDynamically(bool *aCreatedDynamically);
3721 nsresult SetCreatedDynamically(bool aCreatedDynamically);
3722 nsresult GetCurrentSHEntry(nsISHEntry **aEntry, bool *_retval);
3723 }
3724
3725 [
3726 object,
3727 uuid(02d37b31-e654-4b74-9bc3-14dfe0020bb3),
3728 local
3729 ]
3730 interface nsIMarkupDocumentViewer : nsISupports
3731 {
3732 nsresult ScrollToNode(nsIDOMNode *node);
3733 nsresult GetTextZoom(float *aTextZoom);
3734 nsresult SetTextZoom(float aTextZoom);
3735 nsresult GetFullZoom(float *aFullZoom);
3736 nsresult SetFullZoom(float aFullZoom);
3737 nsresult GetAuthorStyleDisabled(bool *aAuthorStyleDisabled);
3738 nsresult SetAuthorStyleDisabled(bool aAuthorStyleDisabled);
3739 nsresult GetDefaultCharacterSet(nsACString *aDefaultCharacterSet);
3740 nsresult SetDefaultCharacterSet(const nsACString *aDefaultCharacterSet);
3741 nsresult GetForceCharacterSet(nsACString *aForceCharacterSet);
3742 nsresult SetForceCharacterSet(const nsACString *aForceCharacterSet);
3743 nsresult GetHintCharacterSet(nsACString *aHintCharacterSet);
3744 nsresult SetHintCharacterSet(const nsACString *aHintCharacterSet);
3745 nsresult GetHintCharacterSetSource(int32_t *aHintCharacterSetSource);
3746 nsresult SetHintCharacterSetSource(int32_t aHintCharacterSetSource);
3747 nsresult GetPrevDocCharacterSet(nsACString *aPrevDocCharacterSet);
3748 nsresult SetPrevDocCharacterSet(const nsACString *aPrevDocCharacterSet);
3749 nsresult GetContentSize(int32_t *width, int32_t *height);
3750 nsresult GetBidiTextDirection(uint8_t *aBidiTextDirection);
3751 nsresult SetBidiTextDirection(uint8_t aBidiTextDirection);
3752 nsresult GetBidiTextType(uint8_t *aBidiTextType);
3753 nsresult SetBidiTextType(uint8_t aBidiTextType);
3754 nsresult GetBidiNumeral(uint8_t *aBidiNumeral);
3755 nsresult SetBidiNumeral(uint8_t aBidiNumeral);
3756 nsresult GetBidiSupport(uint8_t *aBidiSupport);
3757 nsresult SetBidiSupport(uint8_t aBidiSupport);
3758 nsresult GetBidiOptions(uint32_t *aBidiOptions);
3759 nsresult SetBidiOptions(uint32_t aBidiOptions);
3760 nsresult GetMinFontSize(int32_t *aMinFontSize);
3761 nsresult SetMinFontSize(int32_t aMinFontSize);
3762 nsresult AppendSubtree(void /* nsTArray<nsCOMPtr<nsIMarkupDocumentViewer>> */ *array);
3763 nsresult ChangeMaxLineBoxWidth(int32_t maxLineBoxWidth);
3764 }
3765
3766 [
3767 object,
3768 uuid(16fe5e3e-eadc-4312-9d44-b6bedd6b5474),
3769 local
3770 ]
3771 interface nsIMutationObserver : nsISupports
3772 {
3773 void CharacterDataWillChange(nsIDocument *aDocument, nsIContent *aContent,
3774 void /*CharacterDataChangeInfo*/ *aInfo);
3775 void CharacterDataChanged(nsIDocument *aDocument, nsIContent *aContent,
3776 void /*CharacterDataChangeInfo*/ *aInfo);
3777 void AttributeWillChange(nsIDocument *aDocument, nsIContent *aContent, int32_t aNameSpaceID,
3778 nsIAtom *aAttribute, int32_t aModType);
3779 void AttributeChanged(nsIDocument *aDocument, nsIContent *aContent, int32_t aNameSpaceID,
3780 nsIAtom *aAttribute, int32_t aModType);
3781 void AttributeSetToCurrentValue(nsIDocument *aDocument, /*mozilla::dom::Element*/ void *aElement,
3782 int32_t aNameSpaceID, nsIAtom *aAttribute);
3783 void ContentAppended(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aFirstNewContent,
3784 int32_t aNewIndexInContainer);
3785 void ContentInserted(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
3786 int32_t aIndexInContainer);
3787 void ContentRemoved(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
3788 int32_t aIndexInContainer, nsIContent *aPreviousSibling);
3789 void NodeWillBeDestroyed(const nsINode *aNode);
3790 void ParentChainChanged(nsIContent *aContent);
3791 }
3792
3793 [
3794 object,
3795 uuid(2c4ad90a-740e-4212-ba3f-feacda4b929e),
3796 local
3797 ]
3798 interface nsIParser : nsISupports
3799 {
3800 typedef int nsDTDMode;
3801 typedef int eParserCommands;
3802
3803 /* From nsParserBase: */
3804 bool IsParserEnabled();
3805 nsresult GetChannel(nsIChannel **aChannel);
3806
3807 void SetContentSink(nsIContentSink *aSink);
3808 nsIContentSink *GetContentSink();
3809 void GetCommand(nsACString *aCommand);
3810 void SetCommand2(const char *aCommand);
3811 void SetCommand(eParserCommands aParserCommand);
3812 void SetDocumentCharset(const nsACString *aCharset, int32_t aSource);
3813 void GetDocumentCharset(nsACString *oCharset, int32_t *oSource);
3814 nsresult GetDTD(nsIDTD **aDTD);
3815 nsIStreamListener *GetStreamListener();
3816 nsresult ContinueInterruptedParsing();
3817 void BlockParser();
3818 void UnblockParser();
3819 void ContinueInterruptedParsingAsync();
3820 bool IsComplete();
3821 nsresult Parse(nsIURI *aURL, nsIRequestObserver *aListener, void *aKey, nsDTDMode aMode);
3822 nsresult Terminate();
3823 nsresult ParseFragment(const nsAString *aSourceBuffer, void /*nsTArray<nsString>*/ *aTagStack);
3824 nsresult BuildModel();
3825 nsresult CancelParsingEvents();
3826 void Reset();
3827 bool IsInsertionPointDefined();
3828 void BeginEvaluatingParserInsertedScript();
3829 void EndEvaluatingParserInsertedScript();
3830 void MarkAsNotScriptCreated(const char *aCommand);
3831 bool IsScriptCreated();
3832 }
3833
3834 [
3835 object,
3836 uuid(900bc4bc-8b6c-4cba-82fa-568a80fffd3e),
3837 local
3838 ]
3839 interface nsIDocumentObserver : nsIMutationObserver
3840 {
3841 typedef uint32_t nsUpdateType;
3842
3843 typedef struct {
3844 uint64_t mStates;
3845 } nsEventStates;
3846
3847 void BeginUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
3848 void EndUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
3849 void BeginLoad(nsIDocument *aDocument);
3850 void EndLoad(nsIDocument *aDocument);
3851 void ContentStatesChanged(nsIDocument *aDocument, nsIContent *aContent, nsEventStates *aStateMask);
3852 void DocumentStatesChanged(nsIDocument *aDocument, nsEventStates *aStateMask);
3853 void StyleSheetAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, bool aDocumentSheet);
3854 void StyleSheetRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, bool aDocumentSheet);
3855 void StyleSheetApplicableStateChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet,
3856 bool aApplicable);
3857 void StyleRuleChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aOldStyleRule,
3858 nsIStyleRule *aNewStyleRule);
3859 void StyleRuleAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
3860 void StyleRuleRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
3861 void BindToDocument(nsIDocument *aDocument, nsIContent *aContent);
3862 void AttemptToExecuteScript(nsIContent *aContent, nsIParser *aParser, bool *aBlock);
3863 }
3864
3865 [
3866 object,
3867 uuid(3682dd99-8560-44f4-9b8f-ccce9d7b96fb),
3868 local
3869 ]
3870 interface nsIContentUtils : nsISupports
3871 {
3872 bool IsSafeToRunScript();
3873 nsresult AddDocumentObserver(nsIDocument *aDocument, nsIDocumentObserver *aObserver);
3874 nsresult RemoveDocumentObserver(nsIDocument *aDocument, nsIDocumentObserver *aObserver);
3875 nsresult AddMutationObserver(nsINode *aNode, nsIMutationObserver *aObserver);
3876 nsresult RemoveMutationObserver(nsINode *aNode, nsIMutationObserver *aObserver);
3877 nsresult AddScriptRunner(nsIRunnable *aRunnable);
3878 JSContext *GetContextFromDocument(nsIDocument *aDocument);
3879 }
3880
3881 [
3882 object,
3883 uuid(8f672000-bab9-4c60-aaaf-2673c4e2a4c6),
3884 local
3885 ]
3886 interface nsIPluginInstance : nsISupports
3887 {
3888 nsresult GetDOMElement(nsIDOMElement **aDOMElement);
3889 }
3890
3891 cpp_quote("DEFINE_GUID(IID_nsCycleCollectionISupports, 0xc61eac14,0x5f7a,0x4481,0x96,0x5e,0x7e,0xaa,0x6e,0xff,0xa8,0x5f);")