Sync with trunk revision 63128.
[reactos.git] / dll / win32 / mshtml / nsiface.idl
1 /*
2 * Copyright 2005-2012 Jacek Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19 /*
20 * NOTE:
21 * This file is not a typical idl file. Interfaces in this file are XPCOM
22 * interfaces (NOT MSCOM!), but we generate the header file with WIDL
23 * compatible with XPCOM, usable in C code.
24 */
25
26 cpp_quote("#define GECKO_VERSION \"2.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 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(21ffbe98-51f5-499e-8d6f-612ae798c1e1),
2076 local
2077 ]
2078 interface nsIDOMHTMLIFrameElement : nsIDOMHTMLElement
2079 {
2080 nsresult GetAlign(nsAString *aAlign);
2081 nsresult SetAlign(const nsAString *aAlign);
2082 nsresult GetFrameBorder(nsAString *aFrameBorder);
2083 nsresult SetFrameBorder(const nsAString *aFrameBorder);
2084 nsresult GetHeight(nsAString *aHeight);
2085 nsresult SetHeight(const nsAString *aHeight);
2086 nsresult GetLongDesc(nsAString *aLongDesc);
2087 nsresult SetLongDesc(const nsAString *aLongDesc);
2088 nsresult GetMarginHeight(nsAString *aMarginHeight);
2089 nsresult SetMarginHeight(const nsAString *aMarginHeight);
2090 nsresult GetMarginWidth(nsAString *aMarginWidth);
2091 nsresult SetMarginWidth(const nsAString *aMarginWidth);
2092 nsresult GetName(nsAString *aName);
2093 nsresult SetName(const nsAString *aName);
2094 nsresult GetScrolling(nsAString *aScrolling);
2095 nsresult SetScrolling(const nsAString *aScrolling);
2096 nsresult GetSrc(nsAString *aSrc);
2097 nsresult SetSrc(const nsAString *aSrc);
2098 nsresult GetWidth(nsAString *aWidth);
2099 nsresult SetWidth(const nsAString *aWidth);
2100 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2101 nsresult GetContentWindow(nsIDOMWindow **aContentWindow);
2102 nsresult GetSandbox(nsAString *aSandbox);
2103 nsresult SetSandbox(const nsAString *aSandbox);
2104 nsresult GetAllowFullscreen(bool *aAllowFullscreen);
2105 nsresult SetAllowFullscreen(bool aAllowFullscreen);
2106 }
2107
2108 [
2109 object,
2110 uuid(1a79af54-dbbb-4532-be48-944f3995e7e9),
2111 local
2112 ]
2113 interface nsIDOMHTMLFrameElement : nsIDOMHTMLElement
2114 {
2115 nsresult GetFrameBorder(nsAString *aFrameBorder);
2116 nsresult SetFrameBorder(const nsAString *aFrameBorder);
2117 nsresult GetLongDesc(nsAString *aLongDesc);
2118 nsresult SetLongDesc(const nsAString *aLongDesc);
2119 nsresult GetMarginHeight(nsAString *aMarginHeight);
2120 nsresult SetMarginHeight(const nsAString *aMarginHeight);
2121 nsresult GetMarginWidth(nsAString *aMarginWidth);
2122 nsresult SetMarginWidth(const nsAString *aMarginWidth);
2123 nsresult GetName(nsAString *aName);
2124 nsresult SetName(const nsAString *aName);
2125 nsresult GetNoResize(bool *aNoResize);
2126 nsresult SetNoResize(bool aNoResize);
2127 nsresult GetScrolling(nsAString *aScrolling);
2128 nsresult SetScrolling(const nsAString *aScrolling);
2129 nsresult GetSrc(nsAString *aSrc);
2130 nsresult SetSrc(const nsAString *aSrc);
2131 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2132 nsresult GetContentWindow(nsIDOMWindow **aContentWindow);
2133 }
2134
2135 [
2136 object,
2137 uuid(bed8f222-c4dd-41ba-9ec6-dfae0ec8def8),
2138 local
2139 ]
2140 interface nsIDOMHTMLObjectElement : nsIDOMHTMLElement
2141 {
2142 nsresult GetForm(nsIDOMHTMLFormElement **aForm);
2143 nsresult GetCode(nsAString *aCode);
2144 nsresult SetCode(const nsAString *aCode);
2145 nsresult GetAlign(nsAString *aAlign);
2146 nsresult SetAlign(const nsAString *aAlign);
2147 nsresult GetArchive(nsAString *aArchive);
2148 nsresult SetArchive(const nsAString *aArchive);
2149 nsresult GetBorder(nsAString *aBorder);
2150 nsresult SetBorder(const nsAString *aBorder);
2151 nsresult GetCodeBase(nsAString *aCodeBase);
2152 nsresult SetCodeBase(const nsAString *aCodeBase);
2153 nsresult GetCodeType(nsAString *aCodeType);
2154 nsresult SetCodeType(const nsAString *aCodeType);
2155 nsresult GetData(nsAString *aData);
2156 nsresult SetData(const nsAString *aData);
2157 nsresult GetDeclare(bool *aDeclare);
2158 nsresult SetDeclare(bool aDeclare);
2159 nsresult GetHeight(nsAString *aHeight);
2160 nsresult SetHeight(const nsAString *aHeight);
2161 nsresult GetHspace(int32_t *aHspace);
2162 nsresult SetHspace(int32_t aHspace);
2163 nsresult GetName(nsAString *aName);
2164 nsresult SetName(const nsAString *aName);
2165 nsresult GetStandby(nsAString *aStandby);
2166 nsresult SetStandby(const nsAString *aStandby);
2167 nsresult GetType(nsAString *aType);
2168 nsresult SetType(const nsAString *aType);
2169 nsresult GetUseMap(nsAString *aUseMap);
2170 nsresult SetUseMap(const nsAString *aUseMap);
2171 nsresult GetVspace(int32_t *aVspace);
2172 nsresult SetVspace(int32_t aVspace);
2173 nsresult GetWidth(nsAString *aWidth);
2174 nsresult SetWidth(const nsAString *aWidth);
2175 nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
2176 nsresult GetWillValidate(bool *aWillValidate);
2177 nsresult GetValidity(nsIDOMValidityState **aValidity);
2178 nsresult GetValidationMessage(nsAString *aValidationMessage);
2179 nsresult CheckValidity(bool *_retval);
2180 nsresult SetCustomValidity(const nsAString *error);
2181 }
2182
2183 [
2184 object,
2185 uuid(f85e1b05-6dc4-442d-bea8-7cf551f9bc9f),
2186 local
2187 ]
2188 interface nsIDOMHTMLParamElement : nsIDOMHTMLElement
2189 {
2190 nsresult GetName(nsAString *aName);
2191 nsresult SetName(const nsAString *aName);
2192 nsresult GetType(nsAString *aType);
2193 nsresult SetType(const nsAString *aType);
2194 nsresult GetValue(nsAString *aValue);
2195 nsresult SetValue(const nsAString *aValue);
2196 nsresult GetValueType(nsAString *aValueType);
2197 nsresult SetValueType(const nsAString *aValueType);
2198 }
2199
2200 [
2201 object,
2202 uuid(e81273e1-d440-4dd3-9073-8199f7a9525e),
2203 local
2204 ]
2205 interface nsIDOMHTMLStyleElement : nsIDOMHTMLElement
2206 {
2207 nsresult GetDisabled(bool *aDisabled);
2208 nsresult SetDisabled(bool aDisabled);
2209 nsresult GetMedia(nsAString *aMedia);
2210 nsresult SetMedia(const nsAString *aMedia);
2211 nsresult GetType(nsAString *aType);
2212 nsresult SetType(const nsAString *aType);
2213 nsresult GetScoped(bool *aScoped);
2214 nsresult SetScoped(bool aScoped);
2215 nsresult GetDOMStyleSheet(nsIDOMStyleSheet **aDOMStyleSheet);
2216 }
2217
2218 [
2219 object,
2220 uuid(7cebc153-168a-416c-ba5a-56a8c2ddb2ec),
2221 local
2222 ]
2223 interface nsIDOMNodeSelector : nsISupports
2224 {
2225 nsresult QuerySelector(const nsAString *selectors, nsIDOMElement **_retval);
2226 nsresult QuerySelectorAll(const nsAString *selectors, nsIDOMNodeList **_retval);
2227 }
2228
2229 [
2230 object,
2231 uuid(94928ab3-8b63-11d3-989d-001083010e9b),
2232 local
2233 ]
2234 interface nsIURIContentListener : nsISupports
2235 {
2236 nsresult OnStartURIOpen(nsIURI *aURI, bool *_retval);
2237 nsresult DoContent(const char *aContentType, bool aIsContentPreferred, nsIRequest *aRequest,
2238 nsIStreamListener **aContentHandler, bool *_retval);
2239 nsresult IsPreferred(const char *aContentType, char **aDesiredContentType, bool *_retval);
2240 nsresult CanHandleContent(const char *aContentType, bool aIsContentPreferred,
2241 char **aDesiredContentType, bool *_retval);
2242 nsresult GetLoadCookie(nsISupports **aLoadCookie);
2243 nsresult SetLoadCookie(nsISupports *aLoadCookie);
2244 nsresult GetParentContentListener(nsIURIContentListener **aParentContentListener);
2245 nsresult SetParentContentListener(nsIURIContentListener *aParentContentListener);
2246 }
2247
2248 [
2249 object,
2250 uuid(44b78386-1dd2-11b2-9ad2-e4eee2ca1916),
2251 local
2252 ]
2253 interface nsITooltipListener : nsISupports
2254 {
2255 nsresult OnShowTooltip(int32_t aXCoords, int32_t aYCoords, const PRUnichar *aTipText);
2256 nsresult OnHideTooltip();
2257 }
2258
2259 [
2260 object,
2261 uuid(33e9d001-caab-4ba9-8961-54902f197202),
2262 local
2263 ]
2264 interface nsIWebBrowser : nsISupports
2265 {
2266 nsresult AddWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
2267 nsresult RemoveWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
2268 nsresult GetContainerWindow(nsIWebBrowserChrome **aContainerWindow);
2269 nsresult SetContainerWindow(nsIWebBrowserChrome *aContainerWindow);
2270 nsresult GetParentURIContentListener(nsIURIContentListener **aParentURIContentListener);
2271 nsresult SetParentURIContentListener(nsIURIContentListener *aParentURIContentListener);
2272 nsresult GetContentDOMWindow(nsIDOMWindow **aContentDOMWindow);
2273 nsresult GetIsActive(bool *aIsActive);
2274 nsresult SetIsActive(bool aIsActive);
2275 }
2276
2277 cpp_quote("#define SETUP_ALLOW_JAVASCRIPT 2")
2278 cpp_quote("#define SETUP_IS_CHROME_WRAPPER 7")
2279 cpp_quote("#define SETUP_DISABLE_NOSCRIPT 16")
2280
2281 [
2282 object,
2283 uuid(f15398a0-8018-11d3-af70-00a024ffc08c),
2284 local
2285 ]
2286 interface nsIWebBrowserSetup : nsISupports
2287 {
2288 nsresult SetProperty(uint32_t aId, uint32_t aValue);
2289 }
2290
2291 typedef void* nativeWindow;
2292
2293 [
2294 object,
2295 uuid(9da319f3-eee6-4504-81a5-6A19cf6215bf),
2296 local
2297 ]
2298 interface nsIBaseWindow : nsISupports
2299 {
2300 nsresult InitWindow(nativeWindow parentNativeWindow, nsIWidget *parentWidget, int32_t x,
2301 int32_t y, int32_t cx, int32_t cy);
2302 nsresult Create();
2303 nsresult Destroy();
2304 nsresult SetPosition(int32_t x, int32_t y);
2305 nsresult GetPosition(int32_t *x, int32_t *y);
2306 nsresult SetSize(int32_t cx, int32_t cy, bool fRepaint);
2307 nsresult GetSize(int32_t *cx, int32_t *cy);
2308 nsresult SetPositionAndSize(int32_t x, int32_t y, int32_t cx, int32_t cy, bool fRepaint);
2309 nsresult GetPositionAndSize(int32_t *x, int32_t *y, int32_t *cx, int32_t *cy);
2310 nsresult Repaint(bool force);
2311 nsresult GetParentWidget(nsIWidget **aParentWidget);
2312 nsresult SetParentWidget(nsIWidget *aParentWidget);
2313 nsresult GetParentNativeWindow(nativeWindow *aParentNativeWindow);
2314 nsresult SetParentNativeWindow(nativeWindow aParentNativeWindow);
2315 nsresult GetNativeHandle(nsAString *aNativeHandle);
2316 nsresult GetVisibility(bool *aVisibility);
2317 nsresult SetVisibility(bool aVisibility);
2318 nsresult GetEnabled(bool *aEnabled);
2319 nsresult SetEnabled(bool aEnabled);
2320 nsresult GetMainWidget(nsIWidget **aMainWidget);
2321 nsresult GetUnscaledDevicePixelsPerCSSPixel(double *aUnscaledDevicePixelsPerCSSPixel);
2322 nsresult SetFocus();
2323 nsresult GetTitle(PRUnichar **aTitle);
2324 nsresult SetTitle(const PRUnichar *aTitle);
2325 }
2326
2327 [
2328 object,
2329 uuid(28404f7e-0f17-4dc3-a21a-2074d8659b02),
2330 local
2331 ]
2332 interface nsIWebNavigation : nsISupports
2333 {
2334 const UINT LOAD_FLAGS_MASK = 0xffff;
2335 const UINT LOAD_FLAGS_NONE = 0;
2336 const UINT LOAD_FLAGS_IS_REFRESH = 0x0010;
2337 const UINT LOAD_FLAGS_IS_LINK = 0x0020;
2338 const UINT LOAD_FLAGS_BYPASS_HISTORY = 0x0040;
2339 const UINT LOAD_FLAGS_REPLACE_HISTORY = 0x0080;
2340 const UINT LOAD_FLAGS_BYPASS_CACHE = 0x0100;
2341 const UINT LOAD_FLAGS_BYPASS_PROXY = 0x0200;
2342 const UINT LOAD_FLAGS_CHARSET_CHANGE = 0x0400;
2343 const UINT LOAD_FLAGS_STOP_CONTENT = 0x0800;
2344 const UINT LOAD_FLAGS_FROM_EXTERNAL = 0x1000;
2345 const UINT LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP = 0x2000;
2346 const UINT LOAD_FLAGS_FIRST_LOAD = 0x4000;
2347 const UINT LOAD_FLAGS_ALLOW_POPUPS = 0x8000;
2348 const UINT LOAD_FLAGS_BYPASS_CLASSIFIER = 0x10000;
2349 const UINT LOAD_FLAGS_FORCE_ALLOW_COOKIES = 0x20000;
2350 const UINT LOAD_FLAGS_DISALLOW_INHERIT_OWNER = 0x40000;
2351 const UINT LOAD_FLAGS_URI_IS_UTF8 = 0x80000;
2352
2353 nsresult GetCanGoBack(bool *aCanGoBack);
2354 nsresult GetCanGoForward(bool *aCanGoForward);
2355 nsresult GoBack();
2356 nsresult GoForward();
2357 nsresult GotoIndex(int32_t index);
2358 nsresult LoadURI(const PRUnichar *aURI, uint32_t aLoadFlags, nsIURI *aReferrer,
2359 nsIInputStream *aPostData, nsIInputStream *aHeaders);
2360 nsresult Reload(uint32_t aReloadFlags);
2361 nsresult Stop(uint32_t aStopFlags);
2362 nsresult GetDocument(nsIDOMDocument **aDocument);
2363 nsresult GetCurrentURI(nsIURI **aCurrentURI);
2364 nsresult GetReferringURI(nsIURI **aReferringURI);
2365 nsresult GetSessionHistory(nsISHistory **aSessionHistory);
2366 nsresult SetSessionHistory(nsISHistory *aSessionHistory);
2367 }
2368
2369 [
2370 object,
2371 uuid(1c3437b0-9e2c-11e2-9e96-0800200c9a66),
2372 local
2373 ]
2374 interface nsIWebProgress : nsISupports
2375 {
2376 nsresult AddProgressListener(nsIWebProgressListener *aListener, uint32_t aNotifyMask);
2377 nsresult RemoveProgressListener(nsIWebProgressListener *aListener);
2378 nsresult GetDOMWindow(nsIDOMWindow **aDOMWindow);
2379 nsresult GetDOMWindowID(uint64_t *aDOMWindowID);
2380 nsresult GetIsTopLevel(bool *aIsTopLevel);
2381 nsresult GetIsLoadingDocument(bool *aIsLoadingDocument);
2382 }
2383
2384 [
2385 object,
2386 uuid(1bcfc611-8941-4c39-9e06-7116e564a1ce),
2387 local
2388 ]
2389 interface nsIPrintSettings : nsISupports
2390 {
2391 typedef struct { char dummy; } nsIntMargin;
2392
2393 nsresult SetPrintOptions(int32_t aType, bool aTurnOnOff);
2394 nsresult GetPrintOptions(int32_t aType, bool *_retval);
2395 nsresult GetPrintOptionsBits(int32_t *_retval);
2396 nsresult GetEffectivePageSize(double *aWidth, double *aHeight);
2397 nsresult Clone(nsIPrintSettings **_retval);
2398 nsresult Assign(nsIPrintSettings *aPS);
2399 nsresult GetPrintSession(nsIPrintSession **aPrintSession);
2400 nsresult SetPrintSession(nsIPrintSession *aPrintSession);
2401 nsresult GetStartPageRange(int32_t *aStartPageRange);
2402 nsresult SetStartPageRange(int32_t aStartPageRange);
2403 nsresult GetEndPageRange(int32_t *aEndPageRange);
2404 nsresult SetEndPageRange(int32_t aEndPageRange);
2405 nsresult GetEdgeTop(double *aEdgeTop);
2406 nsresult SetEdgeTop(double aEdgeTop);
2407 nsresult GetEdgeLeft(double *aEdgeLeft);
2408 nsresult SetEdgeLeft(double aEdgeLeft);
2409 nsresult GetEdgeBottom(double *aEdgeBottom);
2410 nsresult SetEdgeBottom(double aEdgeBottom);
2411 nsresult GetEdgeRight(double *aEdgeRight);
2412 nsresult SetEdgeRight(double aEdgeRight);
2413 nsresult GetMarginTop(double *aMarginTop);
2414 nsresult SetMarginTop(double aMarginTop);
2415 nsresult GetMarginLeft(double *aMarginLeft);
2416 nsresult SetMarginLeft(double aMarginLeft);
2417 nsresult GetMarginBottom(double *aMarginBottom);
2418 nsresult SetMarginBottom(double aMarginBottom);
2419 nsresult GetMarginRight(double *aMarginRight);
2420 nsresult SetMarginRight(double aMarginRight);
2421 nsresult GetUnwriteableMarginTop(double *aUnwriteableMarginTop);
2422 nsresult SetUnwriteableMarginTop(double aUnwriteableMarginTop);
2423 nsresult GetUnwriteableMarginLeft(double *aUnwriteableMarginLeft);
2424 nsresult SetUnwriteableMarginLeft(double aUnwriteableMarginLeft);
2425 nsresult GetUnwriteableMarginBottom(double *aUnwriteableMarginBottom);
2426 nsresult SetUnwriteableMarginBottom(double aUnwriteableMarginBottom);
2427 nsresult GetUnwriteableMarginRight(double *aUnwriteableMarginRight);
2428 nsresult SetUnwriteableMarginRight(double aUnwriteableMarginRight);
2429 nsresult GetScaling(double *aScaling);
2430 nsresult SetScaling(double aScaling);
2431 nsresult GetPrintBGColors(bool *aPrintBGColors);
2432 nsresult SetPrintBGColors(bool aPrintBGColors);
2433 nsresult GetPrintBGImages(bool *aPrintBGImages);
2434 nsresult SetPrintBGImages(bool aPrintBGImages);
2435 nsresult GetPrintRange(int16_t *aPrintRange);
2436 nsresult SetPrintRange(int16_t aPrintRange);
2437 nsresult GetTitle(PRUnichar **aTitle);
2438 nsresult SetTitle(const PRUnichar *aTitle);
2439 nsresult GetDocURL(PRUnichar **aDocURL);
2440 nsresult SetDocURL(const PRUnichar *aDocURL);
2441 nsresult GetHeaderStrLeft(PRUnichar **aHeaderStrLeft);
2442 nsresult SetHeaderStrLeft(const PRUnichar *aHeaderStrLeft);
2443 nsresult GetHeaderStrCenter(PRUnichar **aHeaderStrCenter);
2444 nsresult SetHeaderStrCenter(const PRUnichar *aHeaderStrCenter);
2445 nsresult GetHeaderStrRight(PRUnichar **aHeaderStrRight);
2446 nsresult SetHeaderStrRight(const PRUnichar *aHeaderStrRight);
2447 nsresult GetFooterStrLeft(PRUnichar **aFooterStrLeft);
2448 nsresult SetFooterStrLeft(const PRUnichar *aFooterStrLeft);
2449 nsresult GetFooterStrCenter(PRUnichar **aFooterStrCenter);
2450 nsresult SetFooterStrCenter(const PRUnichar *aFooterStrCenter);
2451 nsresult GetFooterStrRight(PRUnichar **aFooterStrRight);
2452 nsresult SetFooterStrRight(const PRUnichar *aFooterStrRight);
2453 nsresult GetHowToEnableFrameUI(int16_t *aHowToEnableFrameUI);
2454 nsresult SetHowToEnableFrameUI(int16_t aHowToEnableFrameUI);
2455 nsresult GetIsCancelled(bool *aIsCancelled);
2456 nsresult SetIsCancelled(bool aIsCancelled);
2457 nsresult GetPrintFrameTypeUsage(int16_t *aPrintFrameTypeUsage);
2458 nsresult SetPrintFrameTypeUsage(int16_t aPrintFrameTypeUsage);
2459 nsresult GetPrintFrameType(int16_t *aPrintFrameType);
2460 nsresult SetPrintFrameType(int16_t aPrintFrameType);
2461 nsresult GetPrintSilent(bool *aPrintSilent);
2462 nsresult SetPrintSilent(bool aPrintSilent);
2463 nsresult GetShrinkToFit(bool *aShrinkToFit);
2464 nsresult SetShrinkToFit(bool aShrinkToFit);
2465 nsresult GetShowPrintProgress(bool *aShowPrintProgress);
2466 nsresult SetShowPrintProgress(bool aShowPrintProgress);
2467 nsresult GetPaperName(PRUnichar **aPaperName);
2468 nsresult SetPaperName(const PRUnichar *aPaperName);
2469 nsresult GetPaperSizeType(int16_t *aPaperSizeType);
2470 nsresult SetPaperSizeType(int16_t aPaperSizeType);
2471 nsresult GetPaperData(int16_t *aPaperData);
2472 nsresult SetPaperData(int16_t aPaperData);
2473 nsresult GetPaperWidth(double *aPaperWidth);
2474 nsresult SetPaperWidth(double aPaperWidth);
2475 nsresult GetPaperHeight(double *aPaperHeight);
2476 nsresult SetPaperHeight(double aPaperHeight);
2477 nsresult GetPaperSizeUnit(int16_t *aPaperSizeUnit);
2478 nsresult SetPaperSizeUnit(int16_t aPaperSizeUnit);
2479 nsresult GetPlexName(PRUnichar **aPlexName);
2480 nsresult SetPlexName(const PRUnichar *aPlexName);
2481 nsresult GetColorspace(PRUnichar **aColorspace);
2482 nsresult SetColorspace(const PRUnichar *aColorspace);
2483 nsresult GetResolutionName(PRUnichar **aResolutionName);
2484 nsresult SetResolutionName(const PRUnichar aResolutionName);
2485 nsresult GetDownloadFonts(bool *aDownloadFonts);
2486 nsresult SetDownloadFonts(bool aDownloadFonts);
2487 nsresult GetPrintReversed(bool *aPrintReversed);
2488 nsresult SetPrintReversed(bool aPrintReversed);
2489 nsresult GetPrintInColor(bool *aPrintInColor);
2490 nsresult SetPrintInColor(bool aPrintInColor);
2491 nsresult GetOrientation(int32_t *aOrientation);
2492 nsresult SetOrientation(int32_t aOrientation);
2493 nsresult GetPrintCommand(PRUnichar **aPrintCommand);
2494 nsresult SetPrintCommand(const PRUnichar *aPrintCommand);
2495 nsresult GetNumCopies(int32_t *aNumCopies);
2496 nsresult SetNumCopies(int32_t aNumCopies);
2497 nsresult GetPrinterName(PRUnichar **aPrinterName);
2498 nsresult SetPrinterName(const PRUnichar *aPrinterName);
2499 nsresult GetPrintToFile(bool *aPrintToFile);
2500 nsresult SetPrintToFile(bool aPrintToFile);
2501 nsresult GetToFileName(PRUnichar **aToFileName);
2502 nsresult SetToFileName(const PRUnichar *aToFileName);
2503 nsresult GetOutputFormat(int16_t *aOutputFormat);
2504 nsresult SetOutputFormat(int16_t aOutputFormat);
2505 nsresult GetPrintPageDelay(int32_t *aPrintPageDelay);
2506 nsresult SetPrintPageDelay(int32_t aPrintPageDelay);
2507 nsresult GetResolution(int32_t *aResolution) = 0;
2508 nsresult SetResolution(int32_t aResolution) = 0;
2509 nsresult GetDuplex(int32_t *aDuplex);
2510 nsresult SetDuplex(int32_t aDuplex);
2511 nsresult GetIsInitializedFromPrinter(bool *aIsInitializedFromPrinter);
2512 nsresult SetIsInitializedFromPrinter(bool aIsInitializedFromPrinter);
2513 nsresult GetIsInitializedFromPrefs(bool *aIsInitializedFromPrefs);
2514 nsresult SetIsInitializedFromPrefs(bool aIsInitializedFromPrefs);
2515 nsresult GetPersistMarginBoxSettings(bool *aPersistMarginBoxSettings);
2516 nsresult SetPersistMarginBoxSettings(bool aPersistMarginBoxSettings);
2517 nsresult SetMarginInTwips(nsIntMargin *aMargin);
2518 nsresult SetEdgeInTwips(nsIntMargin *aEdge);
2519 nsresult GetMarginInTwips(nsIntMargin *aMargin);
2520 nsresult GetEdgeInTwips(nsIntMargin *aEdge);
2521 nsresult SetupSilentPrinting();
2522 nsresult SetUnwriteableMarginInTwips(nsIntMargin *aEdge);
2523 nsresult GetUnwriteableMarginInTwips(nsIntMargin *aEdge);
2524 nsresult GetPageRanges(void * /*nsTArray<int32_t>&*/ aPages);
2525 }
2526
2527 [
2528 object,
2529 uuid(9a7ca4b0-fbba-11d4-a869-00105a183419),
2530 local
2531 ]
2532 interface nsIWebBrowserPrint : nsISupports
2533 {
2534 nsresult GetGlobalPrintSettings(nsIPrintSettings **aGlobalPrintSettings);
2535 nsresult GetCurrentPrintSettings(nsIPrintSettings **aCurrentPrintSettings);
2536 nsresult GetCurrentChildDOMWindow(nsIDOMWindow **aCurrentChildDOMWindow);
2537 nsresult GetDoingPrint(bool *aDoingPrint);
2538 nsresult GetDoingPrintPreview(bool *aDoingPrintPreview);
2539 nsresult GetIsFramesetDocument(bool *aIsFramesetDocument);
2540 nsresult GetIsFramesetFrameSelected(bool *aIsFramesetFrameSelected);
2541 nsresult GetIsIFrameSelected(bool *aIsIFrameSelected);
2542 nsresult GetIsRangeSelection(bool *aIsRangeSelection);
2543 nsresult GetPrintPreviewNumPages(int32_t *aPrintPreviewNumPages);
2544 nsresult Print(nsIPrintSettings *aThePrintSettings, nsIWebProgressListener *aWPListener);
2545 nsresult PrintPreview(nsIPrintSettings *aThePrintSettings, nsIDOMWindow *aChildDOMWin,
2546 nsIWebProgressListener *aWPListener);
2547 nsresult PrintPreviewNavigate(int16_t aNavType, int32_t aPageNum);
2548 nsresult Cancel();
2549 nsresult EnumerateDocumentNames(uint32_t *aCount, PRUnichar ***aResult);
2550 nsresult ExitPrintPreview();
2551 }
2552
2553 [
2554 object,
2555 uuid(919e792a-6490-40b8-bba5-f9e9ad5640c8),
2556 local
2557 ]
2558 interface nsIScrollable : nsISupports
2559 {
2560 enum {
2561 ScrollOrientation_X = 1,
2562 ScrollOrientation_Y = 2
2563 };
2564
2565 enum {
2566 Scrollbar_Auto = 1,
2567 Scrollbar_Never = 2,
2568 Scrollbar_Always = 3
2569 };
2570
2571 nsresult GetCurScrollPos(int32_t scrollOrientation, int32_t *curPos);
2572 nsresult SetCurScrollPos(int32_t scrollOrientation, int32_t curPos);
2573 nsresult SetCurScrollPosEx(int32_t curHorizontalPos, int32_t curVerticalPos);
2574 nsresult GetScrollRange(int32_t scrollOrientation, int32_t *minPos, int32_t *maxPos);
2575 nsresult SetScrollRange(int32_t scrollOrientation, int32_t minPos, int32_t maxPos);
2576 nsresult SetScrollRangeEx(int32_t minHorizontalPos, int32_t maxHorizontalPos,
2577 int32_t minVerticalPos, int32_t maxVerticalPos);
2578 nsresult GetDefaultScrollbarPreferences(int32_t scrollOrientation, int32_t *scrollbarPref);
2579 nsresult SetDefaultScrollbarPreferences(int32_t scrollOrientation, int32_t scrollbarPref);
2580 nsresult GetScrollbarVisibility(bool *verticalVisible, bool *horizontalVisible);
2581 }
2582
2583 [
2584 object,
2585 uuid(272a5020-64f5-485c-a8c4-44b2882ae0a2),
2586 local
2587 ]
2588 interface nsIFile : nsISupports
2589 {
2590 typedef struct {
2591 /* Currently not needed */
2592 char dummy;
2593 } PRFileDesc, PRLibrary, widl_FILE;
2594 #define FILE widl_FILE
2595
2596 nsresult Append(const nsAString *node);
2597 nsresult AppendNative(const nsAString *node);
2598 nsresult Normalize();
2599 nsresult Create(uint32_t type, uint32_t permission);
2600 nsresult GetLeafName(nsAString *aLeafName);
2601 nsresult SetLeafName(const nsAString *aLeafName);
2602 nsresult GetNativeLeafName(nsAString *aLeafName);
2603 nsresult SetNativeLeafName(const nsAString *aLeafName);
2604 nsresult CopyTo(nsIFile *newParentDir, const nsAString *newName);
2605 nsresult CopyToNative(nsIFile *newParentDir, const nsAString *newName);
2606 nsresult CopyToFollowingLinks(nsIFile *newParentDir, const nsAString *newName);
2607 nsresult CopyToFollowingLinksNative(nsIFile *newParentDir, const nsAString *newName);
2608 nsresult MoveTo(nsIFile *newParentDir, const nsAString *newName);
2609 nsresult MoveToNative(nsIFile *newParentDir, const nsAString *newName);
2610 nsresult Remove(bool recursive);
2611 nsresult GetPermissions(uint32_t *aPermissions);
2612 nsresult SetPermissions(uint32_t pPermissions);
2613 nsresult GetPermissionsOfLink(uint32_t *aPermissions);
2614 nsresult SetPermissionsOfLink(uint32_t pPermissions);
2615 nsresult GetLastModifiedTime(PRTime *aLastModifiedTime);
2616 nsresult SetLastModifiedTime(PRTime aLastModifiedTime);
2617 nsresult GetLastModifiedTimeOfLink(PRTime *aLastModifiedTimeOfLink);
2618 nsresult SetLastModifiedTimeOfLink(PRTime aLastModifiedTimeOfLink);
2619 nsresult GetFileSize(int64_t *aFileSize);
2620 nsresult SetFileSize(int64_t aFileSize);
2621 nsresult GetFileSizeOfLink(int64_t *aFileSizeOfLink);
2622 nsresult GetTarget(nsAString *aTarget);
2623 nsresult GetNativeTarget(nsACString *aNativeTarget);
2624 nsresult GetPath(nsAString *aPath);
2625 nsresult GetNativePath(nsACString *aNativePath);
2626 nsresult Exists(bool *_retval);
2627 nsresult IsWritable(bool *_retval);
2628 nsresult IsReadable(bool *_retval);
2629 nsresult IsExecutable(bool *_retval);
2630 nsresult IsHidden(bool *_retval);
2631 nsresult IsDirectory(bool *_retval);
2632 nsresult IsFile(bool *_retval);
2633 nsresult IsSymlink(bool *_retval);
2634 nsresult IsSpecial(bool *_retval);
2635 nsresult CreateUnique(uint32_t type, uint32_t permission);
2636 nsresult Clone(nsIFile **_retval);
2637 nsresult Equals(nsIFile *inFile, bool *_retval);
2638 nsresult Contains(nsIFile *inFile, bool recir, bool *_retval);
2639 nsresult GetParent(nsIFile **aParent);
2640 nsresult GetDirectoryEntries(nsISimpleEnumerator **aDirectoryEntries);
2641 nsresult InitWithPath(const nsAString *filePath);
2642 nsresult InitWithNativePath(const nsACString *filePath);
2643 nsresult InitWithFile(nsIFile *aFile);
2644 nsresult GetFollowLinks(bool *aFollowLinks);
2645 nsresult SetFollowLinks(bool aFollowLinks);
2646 nsresult OpenNSPRFileDesc(int32_t flags, int32_t mode, PRFileDesc **_retval);
2647 nsresult OpenANSIFileDesc(const char *mode, FILE **_retval);
2648 nsresult Load(PRLibrary **_retval);
2649 nsresult GetDiskSpaceAvailable(int64_t *aDiskSpaceAvailable);
2650 nsresult AppendRelativePath(const nsAString *relativeFilePath);
2651 nsresult AppendRelativeNativePath(const nsACString *relativeFilePath);
2652 nsresult GetPersistentDescriptor(nsACString *aPersistentDescriptor);
2653 nsresult SetPersistentDescriptor(const nsACString *aPersistentDescriptor);
2654 nsresult Reveal();
2655 nsresult Launch();
2656 nsresult GetRelativeDescriptor(nsIFile *fromFile, nsACString *_retval);
2657 nsresult SetRelativeDescriptor(nsIFile *fromFile, const nsACString *relativeDesc);
2658 }
2659
2660 [
2661 object,
2662 uuid(1d940426-5fe5-42c3-84ae-a300f2d9ebd5),
2663 local
2664 ]
2665 interface nsIComponentManager : nsISupports
2666 {
2667 nsresult GetClassObject(nsCIDRef aClass, nsIIDRef aIID, void **result);
2668 nsresult GetClassObjectByContractID(const char *aContractID, nsIIDRef aIID, void **result);
2669 nsresult CreateInstance(nsCIDRef aClass, nsISupports *aDelegate, nsIIDRef aIID,
2670 void **result);
2671 nsresult CreateInstanceByContractID(const char *aContractID, nsISupports *aDelegate,
2672 nsIIDRef aIID, void **result);
2673 nsresult AddBootstrappedManifestLocation(nsIFile *aLocation);
2674 nsresult RemoveBootstrappedManifestLocation(nsIFile *aLocation);
2675 }
2676
2677 [
2678 object,
2679 uuid(55d25e49-793f-4727-a69f-de8b15f4b985),
2680 local
2681 ]
2682 interface nsIPrefBranch : nsISupports
2683 {
2684 nsresult GetRoot(char **aRoot);
2685 nsresult GetPrefType(const char *aPrefName, int32_t *_retval);
2686 nsresult GetBoolPref(const char *aPrefName, bool *_retval);
2687 nsresult SetBoolPref(const char *aPrefName, bool aValue);
2688 nsresult GetFloatPref(const char *aPrefName, float *_retval);
2689 nsresult GetCharPref(const char *aPrefName, char **_retval);
2690 nsresult SetCharPref(const char *aPrefName, const char *aValue);
2691 nsresult GetIntPref(const char *aPrefName, int32_t *_retval);
2692 nsresult SetIntPref(const char *aPrefName, int32_t aValue);
2693 nsresult GetComplexValue(const char *aPrefName, const nsIID *aType, void **aValue);
2694 nsresult SetComplexValue(const char *aPrefName, const nsIID *aType, nsISupports *aValue);
2695 nsresult ClearUserPref(const char *aPrefName);
2696 nsresult LockPref(const char *aPrefName);
2697 nsresult PrefHasUserValue(const char *aPrefName, bool *_retval);
2698 nsresult PrefIsLocked(const char *aPrefName, bool *_retval);
2699 nsresult UnlockPref(const char *aPrefName);
2700 nsresult DeleteBranch(const char *aStartingAt);
2701 nsresult GetChildList(const char *aStartingAt, uint32_t *aCount, char ***aChildArray);
2702 nsresult ResetBranch(const char *aStartingAt);
2703 nsresult AddObserver(const char *aDomain, nsIObserver *aObserver, bool aHoldWeak);
2704 nsresult RemoveObserver(const char *aDomain, nsIObserver *aObserver);
2705 }
2706
2707 [
2708 object,
2709 uuid(bbf8cab0-d43a-11d3-8cc2-00609792278c),
2710 local
2711 ]
2712 interface nsIDirectoryServiceProvider : nsISupports
2713 {
2714 nsresult GetFile(const char *prop, bool *persistent, nsIFile **_retval);
2715 }
2716
2717 [
2718 object,
2719 uuid(2f977d4b-5485-11d4-87e2-0010a4e75ef2),
2720 local
2721 ]
2722 interface nsIDirectoryServiceProvider2 : nsIDirectoryServiceProvider
2723 {
2724 nsresult GetFiles(const char *prop, nsISimpleEnumerator **_retval);
2725 }
2726
2727 [
2728 object,
2729 uuid(f5753fec-a051-4ddc-8891-11f1f1575072),
2730 local
2731 ]
2732 interface nsIProtocolHandler : nsISupports
2733 {
2734 nsresult GetScheme(nsACString *aScheme);
2735 nsresult GetDefaultPort(int32_t *aDefaultPort);
2736 nsresult GetProtocolFlags(uint32_t *aProtocolFlags);
2737 nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset,
2738 nsIURI *aBaseURI, nsIURI **_retval);
2739 nsresult NewChannel(nsIURI *aURI, nsIChannel **_retval);
2740 nsresult AllowPort(int32_t port, const char *scheme, bool *_retval);
2741 }
2742
2743 [
2744 object,
2745 uuid(0e61f3b2-34d7-4c79-bfdc-4860bc7341b7),
2746 local
2747 ]
2748 interface nsIExternalProtocolHandler : nsIProtocolHandler
2749 {
2750 nsresult ExternalAppExistsForScheme(const nsACString *scheme, bool *_retval);
2751 }
2752
2753 [
2754 object,
2755 uuid(bddeda3f-9020-4d12-8c70-984ee9f7935e),
2756 local
2757 ]
2758 interface nsIIOService : nsISupports
2759 {
2760 nsresult GetProtocolHandler(const char *aScheme, nsIProtocolHandler **_retval);
2761 nsresult GetProtocolFlags(const char *aScheme, uint32_t *_retval);
2762 nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
2763 nsIURI **_retval);
2764 nsresult NewFileURI(nsIFile *aFile, nsIURI **_retval);
2765 nsresult NewChannelFromURI(nsIURI *aURI, nsIChannel **_retval);
2766 nsresult NewChannel(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
2767 nsIChannel **_retval);
2768 nsresult GetOffline(bool *aOffline);
2769 nsresult SetOffline(bool aOffline);
2770 nsresult AllowPort(int32_t aPort, const char *aScheme, bool *_retval);
2771 nsresult ExtractScheme(const nsACString *urlString, nsACString *_retval);
2772 }
2773
2774 [
2775 object,
2776 uuid(ca68c485-9db3-4c12-82a6-4fab7948e2d5),
2777 local,
2778 ]
2779 interface nsINetUtil : nsISupports
2780 {
2781 nsresult ParseContentType(const nsACString *aTypeHeader, nsACString *aCharset,
2782 bool *aHadCharset, nsACString *_retval);
2783 nsresult ProtocolHasFlags(nsIURI *aURI, uint32_t aFlag, bool *_retval);
2784 nsresult URIChainHasFlags(nsIURI *aURI, uint32_t aFlags, bool *_retval);
2785 nsresult ToImmutableURI(nsIURI *aURI, nsIURI **_retval);
2786 nsresult NewSimpleNestedURI(nsIURI *aURI, nsIURI **_retval);
2787 nsresult EscapeString(const nsACString *aString, uint32_t aEscapeType, nsACString *_retval);
2788 nsresult EscapeURL(const nsACString *aStr, uint32_t aFlags, nsACString *_retval);
2789 nsresult UnescapeString(const nsACString *aStr, uint32_t aFlags, nsACString *_retval);
2790 nsresult ExtractCharsetFromContentType(const nsACString *aTypeHeader, nsACString *aCharset,
2791 int32_t *aCharsetStart, int32_t *aCharsetEnd, bool *_retval);
2792 }
2793
2794 [
2795 object,
2796 uuid(9c5d3c58-1dd1-11b2-a1c9-f3699284657a),
2797 local
2798 ]
2799 interface nsIWebBrowserFocus : nsISupports
2800 {
2801 nsresult Activate();
2802 nsresult Deactivate();
2803 nsresult SetFocusAtFirstElement();
2804 nsresult SetFocusAtLastElement();
2805 nsresult GetFocusedWindow(nsIDOMWindow **aFocusedWindow);
2806 nsresult SetFocusedWindow(nsIDOMWindow *aFocusedWindow);
2807 nsresult GetFocusedElement(nsIDOMElement **aFocusedElement);
2808 nsresult SetFocusedElement(nsIDOMElement *aFocusedElement);
2809 }
2810
2811 [
2812 object,
2813 uuid(e8c414c4-dc38-4ba3-ab4e-ec4cbbe22907),
2814 local
2815 ]
2816 interface nsIWebBrowserChrome : nsISupports
2817 {
2818 nsresult SetStatus(uint32_t statusType, const PRUnichar *status);
2819 nsresult GetWebBrowser(nsIWebBrowser **aWebBrowser);
2820 nsresult SetWebBrowser(nsIWebBrowser *aWebBrowser);
2821 nsresult GetChromeFlags(uint32_t *aChromeFlags);
2822 nsresult SetChromeFlags(uint32_t aChromeFlags);
2823 nsresult DestroyBrowserWindow();
2824 nsresult SizeBrowserTo(int32_t aCX, int32_t aCY);
2825 nsresult ShowAsModal();
2826 nsresult IsWindowModal(bool *_retval);
2827 nsresult ExitModalEventLoop(nsresult aStatus);
2828 }
2829
2830 [
2831 object,
2832 uuid(df31c120-ded6-11d1-bd85-00805f8ae3f4),
2833 local
2834 ]
2835 interface nsIDOMEventListener : nsISupports
2836 {
2837 nsresult HandleEvent(nsIDOMEvent *event);
2838 }
2839
2840 [
2841 object,
2842 uuid(31e92e56-4d23-4a4a-9cfe-a6d12cf434bc),
2843 local
2844 ]
2845 interface nsIDOMEventTarget : nsISupports
2846 {
2847 nsresult AddEventListener(const nsAString *type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, uint8_t _argc);
2848 nsresult AddSystemEventListener(const nsAString *type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, uint8_t _argc);
2849 nsresult RemoveEventListener(const nsAString *type, nsIDOMEventListener *listener, bool useCapture);
2850 nsresult RemoveSystemEventListener(const nsAString *type, nsIDOMEventListener *listener, bool aUseCapture);
2851 nsresult DispatchEvent(nsIDOMEvent *evt, bool *_retval);
2852
2853 /* Followed by methods we should try to avoid using */
2854 }
2855
2856 [
2857 object,
2858 uuid(02d54f52-a1f5-4ad2-b560-36f14012935e),
2859 local
2860 ]
2861 interface nsIDOMEvent : nsISupports
2862 {
2863 nsresult GetType(nsAString *aType);
2864 nsresult GetTarget(nsIDOMEventTarget **aTarget);
2865 nsresult GetCurrentTarget(nsIDOMEventTarget **aCurrentTarget);
2866 nsresult GetEventPhase(uint16_t *aEventPhase);
2867 nsresult GetBubbles(bool *aBubbles);
2868 nsresult GetCancelable(bool *aCancelable);
2869 nsresult GetTimeStamp(DOMTimeStamp *aTimeStamp);
2870 nsresult StopPropagation();
2871 nsresult PreventDefault();
2872 nsresult InitEvent(const nsAString *eventTypeArg, bool canBubbleArg, bool cancelableArg);
2873 nsresult GetDefaultPrevented(bool *aDefaultPrevented);
2874 nsresult StopImmediatePropagation();
2875 nsresult GetOriginalTarget(nsIDOMEventTarget **aOriginalTarget);
2876 nsresult GetExplicitOriginalTarget(nsIDOMEventTarget * *aExplicitOriginalTarget);
2877 nsresult GetPreventDefault(bool *_retval);
2878 nsresult GetIsTrusted(bool *aIsTrusted);
2879 nsresult DuplicatePrivateData();
2880 nsresult SetTarget(nsIDOMEventTarget *aTarget);
2881 bool IsDispatchStopped();
2882 /*nsEvent*/ void *GetInternalNSEvent();
2883 void SetTrusted(bool aTrusted);
2884 void Serialize(/*IPC::Message*/ void *aMsg, bool aSerializeInterfaceType);
2885 bool Deserialize(const /*IPC::Message*/ void *aMsg, void **aIter);
2886 void SetOwner(void /*mozilla::dom::EventTarget*/ *aOwner);
2887 void /*nsDOMEvent*/ *InternalDOMEvent();
2888 }
2889
2890 [
2891 object,
2892 uuid(cbe333d7-5b2c-4a9b-b99b-e6e388afa62b),
2893 local
2894 ]
2895 interface nsIDOMWindowUtils : nsISupports
2896 {
2897 nsresult GetImageAnimationMode(uint16_t *aImageAnimationMode);
2898 nsresult SetImageAnimationMode(uint16_t aImageAnimationMode);
2899 nsresult GetDocCharsetIsForced(bool *aDocCharsetIsForced);
2900 nsresult GetCursorType(int16_t *_retval);
2901 nsresult GetDocumentMetadata(const nsAString *aName, nsAString *_retval);
2902 nsresult Redraw(uint32_t aCount, uint32_t *_retval);
2903 nsresult SetCSSViewport(float aWidthPx, float aHeightPx);
2904 nsresult GetViewportInfo(uint32_t aDisplayWidth, uint32_t aDisplayHeight, double *aDefaultZoom, bool *aAllowZoom,
2905 double *aMinZoom, double *aMaxZoom, uint32_t *aWidth, uint32_t *aHeight, bool *aAutoSize);
2906 nsresult SetDisplayPortForElement(float aXPx, float aYPx, float aWidthPx, float aHeightPx, nsIDOMElement *aElement);
2907 nsresult SetCriticalDisplayPortForElement(float aXPx, float aYPx, float aWidthPx, float aHeightPx, nsIDOMElement *aElement);
2908 nsresult SetResolution(float aXResolution, float aYResolution);
2909 nsresult GetResolution(float *aXResolution, float *aYResolution);
2910 nsresult GetIsFirstPaint(bool *aIsFirstPaint);
2911 nsresult SetIsFirstPaint(bool aIsFirstPaint);
2912 nsresult GetPresShellId(uint32_t *aPresShellId);
2913 nsresult SendMouseEvent(const nsAString *aType, float aX, float aY, int32_t aButton, int32_t aClickCount,
2914 int32_t aModifiers, bool aIgnoreRootScrollFrame, float aPressure, uint16_t aInputSourceArg, bool *_retval);
2915 nsresult SendTouchEvent(const nsAString *aType, uint32_t *aIdentifiers, int32_t *aXs, int32_t *aYs,
2916 uint32_t *aRxs, uint32_t *aRys, float *aRotationAngles, float *aForces, uint32_t count, int32_t aModifiers,
2917 bool aIgnoreRootScrollFrame, bool *_retval);
2918 nsresult SendMouseEventToWindow(const nsAString *aType, float aX, float aY, int32_t aButton, int32_t aClickCount,
2919 int32_t aModifiers, bool aIgnoreRootScrollFrame, float aPressure, uint16_t aInputSourceArg);
2920 nsresult SendWheelEvent(float aX, float aY, double aDeltaX, double aDeltaY, double aDeltaZ, uint32_t aDeltaMode,
2921 int32_t aModifiers, int32_t aLineOrPageDeltaX, int32_t aLineOrPageDeltaY, uint32_t aOptions);
2922 nsresult SendKeyEvent(const nsAString *aType, int32_t aKeyCode, int32_t aCharCode, int32_t aModifiers,
2923 uint32_t aAdditionalFlags, bool *_retval);
2924 nsresult SendNativeKeyEvent(int32_t aNativeKeyboardLayout, int32_t aNativeKeyCode, int32_t aModifierFlags,
2925 const nsAString *aCharacters, const nsAString *aUnmodifiedCharacters);
2926 nsresult SendNativeMouseEvent(int32_t aScreenX, int32_t aScreenY, int32_t aNativeMessage, int32_t aModifierFlags,
2927 nsIDOMElement *aElement);
2928 nsresult SendNativeMouseScrollEvent(int32_t aScreenX, int32_t aScreenY, uint32_t aNativeMessage, double aDeltaX,
2929 double aDeltaY, double aDeltaZ, uint32_t aModifierFlags, uint32_t aAdditionalFlags, nsIDOMElement *aElement);
2930 nsresult ActivateNativeMenuItemAt(const nsAString *indexString);
2931 nsresult ForceUpdateNativeMenuAt(const nsAString *indexString);
2932 nsresult Focus(nsIDOMElement *aElement);
2933 nsresult GarbageCollect(nsICycleCollectorListener *aListener, int32_t aExtraForgetSkippableCalls);
2934 nsresult CycleCollect(nsICycleCollectorListener *aListener, int32_t aExtraForgetSkippableCalls);
2935 nsresult SendSimpleGestureEvent(const nsAString *aType, float aX, float aY, uint32_t aDirection, double aDelta,
2936 int32_t aModifiers, uint32_t aClickCount);
2937 nsresult ElementFromPoint(float aX, float aY, bool aIgnoreRootScrollFrame, bool aFlushLayout, nsIDOMElement **_retval);
2938 nsresult NodesFromRect(float aX, float aY, float aTopSize, float aRightSize, float aBottomSize, float aLeftSize,
2939 bool aIgnoreRootScrollFrame, bool aFlushLayout, nsIDOMNodeList **_retval);
2940 nsresult CompareCanvases(nsIDOMHTMLCanvasElement *aCanvas1, nsIDOMHTMLCanvasElement *aCanvas2,
2941 uint32_t *aMaxDifference, uint32_t *_retval);
2942 nsresult GetIsMozAfterPaintPending(bool *aIsMozAfterPaintPending);
2943 nsresult SuppressEventHandling(bool aSuppress);
2944 nsresult ClearMozAfterPaintEvents();
2945 nsresult DisableNonTestMouseEvents(bool aDisable);
2946 nsresult GetScrollXY(bool aFlushLayout, int32_t *aScrollX, int32_t *aScrollY);
2947 nsresult GetScrollbarSize(bool aFlushLayout, int32_t *aWidth, int32_t *aHeight);
2948 nsresult GetBoundsWithoutFlushing(nsIDOMElement *aElement, nsIDOMClientRect **_retval);
2949 nsresult GetRootBounds(nsIDOMClientRect **_retval);
2950 nsresult GetIMEIsOpen(bool *aIMEIsOpen);
2951 nsresult GetIMEStatus(uint32_t *aIMEStatus);
2952 nsresult GetScreenPixelsPerCSSPixel(float *aScreenPixelsPerCSSPixel);
2953 nsresult GetFullZoom(float *aFullZoom);
2954 nsresult DispatchDOMEventViaPresShell(nsIDOMNode *aTarget, nsIDOMEvent *aEvent, bool aTrusted, bool *_retval);
2955 nsresult DispatchEventToChromeOnly(nsIDOMEventTarget *aTarget, nsIDOMEvent *aEvent, bool *_retval);
2956 nsresult GetClassName(const /*JS::Value*/ void *aObject, JSContext *cx, char **_retval);
2957 nsresult SendContentCommandEvent(const nsAString *aType, nsITransferable *aTransferable);
2958 nsresult SendCompositionEvent(const nsAString *aType, const nsAString *aData, const nsAString *aLocale);
2959 nsresult SendTextEvent(const nsAString *aCompositionString, int32_t aFirstClauseLength, uint32_t aFirstClauseAttr,
2960 int32_t aSecondClauseLength, uint32_t aSecondClauseAttr, int32_t aThirdClauseLength, uint32_t aThirdClauseAttr,
2961 int32_t aCaretStart, int32_t aCaretLength);
2962 nsresult SendQueryContentEvent(uint32_t aType, uint32_t aOffset, uint32_t aLength, int32_t aX, int32_t aY,
2963 nsIQueryContentEventResult **_retval);
2964 nsresult RemoteFrameFullscreenChanged(nsIDOMElement *aFrameElement, const nsAString *aNewOrigin);
2965 nsresult RemoteFrameFullscreenReverted();
2966 nsresult ExitFullscreen();
2967 nsresult SendSelectionSetEvent(uint32_t aOffset, uint32_t aLength, bool aReverse, bool *_retval);
2968 nsresult SelectAtPoint(float aX, float aY, uint32_t aSelectBehavior, bool *_retval);
2969 nsresult GetVisitedDependentComputedStyle(nsIDOMElement *aElement, const nsAString *aPseudoElement,
2970 const nsAString *aPropertyName, nsAString *_retval);
2971 nsresult GetParent(const /*JS::Value*/ void *obj, JSContext *cx, /*JS::Value*/ void *_retval);
2972 nsresult GetOuterWindowID(uint64_t *aOuterWindowID);
2973 nsresult GetCurrentInnerWindowID(uint64_t *aCurrentInnerWindowID);
2974 nsresult EnterModalState();
2975 nsresult LeaveModalState();
2976 nsresult EnterModalStateWithWindow(nsIDOMWindow **_retval);
2977 nsresult LeaveModalStateWithWindow(nsIDOMWindow *aWindow);
2978 nsresult IsInModalState(bool *_retval);
2979 nsresult SuspendTimeouts();
2980 nsresult ResumeTimeouts();
2981 nsresult GetLayerManagerType(nsAString *aLayerManagerType);
2982 nsresult GetLayerManagerRemote(bool *aLayerManagerRemote);
2983 nsresult StartFrameTimeRecording(uint32_t *startIndex);
2984 nsresult StopFrameTimeRecording(uint32_t startIndex, float **paintTimes, uint32_t *frameCount, float **frameIntervals);
2985 nsresult BeginTabSwitch();
2986 nsresult GetDisplayDPI(float *aDisplayDPI);
2987 nsresult GetOuterWindowWithId(uint64_t aOuterWindowID, nsIDOMWindow **_retval);
2988 nsresult RenderDocument(const void /*nsRect*/ *aRect, uint32_t aFlags, int /*nscolor*/ aBackgroundColor,
2989 void /*gfxContext*/ *aThebesContext);
2990 nsresult AdvanceTimeAndRefresh(int64_t aMilliseconds);
2991 nsresult RestoreNormalRefresh();
2992 nsresult GetIsTestControllingRefreshes(bool *aIsTestControllingRefreshes);
2993 nsresult ComputeAnimationDistance(nsIDOMElement *element, const nsAString *property, const nsAString *value1,
2994 const nsAString *value2, double *_retval);
2995 nsresult WrapDOMFile(nsIFile *aFile, nsIDOMFile **_retval);
2996 nsresult GetFocusedInputType(char **aFocusedInputType);
2997 nsresult FindElementWithViewId(long /*nsViewID*/ aId, nsIDOMElement **_retval);
2998 nsresult LeafLayersPartitionWindow(bool *_retval);
2999 nsresult GetMayHaveTouchEventListeners(bool *aMayHaveTouchEventListeners);
3000 nsresult CheckAndClearPaintedState(nsIDOMElement *aElement, bool *_retval);
3001 nsresult GetFile(const nsAString *aName, const /*JS::Value*/ void *aBlobParts, const /*JS::Value*/ void *aParameters,
3002 JSContext* cx, uint8_t _argc, nsIDOMFile **_retval);
3003 nsresult GetBlob(const /*JS::Value*/ void *aBlobParts, const /*JS::Value*/ void *aParameters, JSContext *cx,
3004 uint8_t _argc, nsIDOMBlob * _retval);
3005 nsresult GetFileId(const /*JS::Value*/ void *aFile, JSContext *cx, int64_t *_retval);
3006 nsresult GetFileReferences(const nsAString *aDatabaseName, int64_t aId, int32_t *aRefCnt, int32_t *aDBRefCnt,
3007 int32_t *aSliceRefCnt, bool *_retval);
3008 nsresult IsIncrementalGCEnabled(JSContext *cx, bool *_retval);
3009 nsresult StartPCCountProfiling(JSContext *cx);
3010 nsresult StopPCCountProfiling(JSContext *cx);
3011 nsresult PurgePCCounts(JSContext *cx);
3012 nsresult GetPCCountScriptCount(JSContext *cx, int32_t *_retval);
3013 nsresult GetPCCountScriptSummary(int32_t script, JSContext *cx, nsAString *_retval);
3014 nsresult GetPCCountScriptContents(int32_t script, JSContext *cx, nsAString *_retval);
3015 nsresult GetPaintingSuppressed(bool *aPaintingSuppressed);
3016 nsresult GetPlugins(JSContext *cx, /*JS::Value*/ void *aPlugins);
3017 nsresult SetScrollPositionClampingScrollPortSize(float aWidth, float aHeight);
3018 nsresult SetContentDocumentFixedPositionMargins(float aTop, float aRight, float aBottom, float aLeft);
3019 nsresult PreventFurtherDialogs();
3020 nsresult LoadSheet(nsIURI *sheetURI, uint32_t type);
3021 nsresult RemoveSheet(nsIURI *sheetURI, uint32_t type);
3022 nsresult GetIsHandlingUserInput(bool *aIsHandlingUserInput);
3023 nsresult AllowScriptsToClose();
3024 nsresult GetIsParentWindowMainWidgetVisible(bool *aIsParentWindowMainWidgetVisible);
3025 nsresult IsNodeDisabledForEvents(nsIDOMNode *aNode, bool *_retval);
3026 nsresult GetPaintFlashing(bool *aPaintFlashing);
3027 nsresult SetPaintFlashing(bool aPaintFlashing);
3028 nsresult RunInStableState(nsIRunnable *runnable);
3029 nsresult RunBeforeNextEvent(nsIRunnable *runnable);
3030 nsresult GetOMTAOrComputedStyle(nsIDOMNode *aNode, const nsAString *aProperty, nsAString *_retval);
3031 }
3032
3033 cpp_quote("#define CONTEXT_NONE 0x00")
3034 cpp_quote("#define CONTEXT_LINK 0x01")
3035 cpp_quote("#define CONTEXT_IMAGE 0x02")
3036 cpp_quote("#define CONTEXT_DOCUMENT 0x04")
3037 cpp_quote("#define CONTEXT_TEXT 0x08")
3038 cpp_quote("#define CONTEXT_INPUT 0x10")
3039 cpp_quote("#define CONTEXT_BACKGROUND_IMAGE 0x20")
3040
3041 [
3042 object,
3043 uuid(3478b6b0-3875-11d4-94ef-0020183bf181),
3044 local
3045 ]
3046 interface nsIContextMenuListener : nsISupports
3047 {
3048 nsresult OnShowContextMenu(uint32_t aContextFlags, nsIDOMEvent *aEvent, nsIDOMNode *aNode);
3049 }
3050
3051 [
3052 object,
3053 uuid(d73852f8-7bd6-477d-8233-117dbf83860b),
3054 local
3055 ]
3056 interface nsIDOMUIEvent : nsIDOMEvent
3057 {
3058 nsresult GetView(nsIDOMWindow **aView);
3059 nsresult GetDetail(int32_t *aDetail);
3060 nsresult InitUIEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3061 nsIDOMWindow *viewArg, int32_t detailArg);
3062 nsresult GetLayerX(int32_t *aLayerX);
3063 nsresult GetLayerY(int32_t *aLayerY);
3064 nsresult GetPageX(int32_t *aPageX);
3065 nsresult GetPageY(int32_t *aPageY);
3066 nsresult GetWhich(uint32_t *aWhich);
3067 nsresult GetRangeParent(nsIDOMNode **aRangeParent);
3068 nsresult GetRangeOffset(int32_t *aRangeOffset);
3069 nsresult GetCancelBubble(bool *aCancelBubble);
3070 nsresult SetCancelBubble(bool aCancelBubble);
3071 nsresult GetIsChar(bool *aIsChar);
3072 }
3073
3074 [
3075 object,
3076 uuid(afb2e57b-2822-4969-b2a9-0cada6859534),
3077 local
3078 ]
3079 interface nsIDOMMouseEvent : nsIDOMUIEvent
3080 {
3081 nsresult GetScreenX(int32_t *aScreenX);
3082 nsresult GetScreenY(int32_t *aScreenY);
3083 nsresult GetMozMovementX(int32_t *aMozMovementX);
3084 nsresult GetMozMovementY(int32_t *aMozMovementY);
3085 nsresult GetClientX(int32_t *aClientX);
3086 nsresult GetClientY(int32_t *aClientY);
3087 nsresult GetCtrlKey(bool *aCtrlKey);
3088 nsresult GetShiftKey(bool *aShiftKey);
3089 nsresult GetAltKey(bool *aAltKey);
3090 nsresult GetMetaKey(bool *aMetaKey);
3091 nsresult GetButton(uint16_t *aButton);
3092 nsresult GetButtons(uint16_t *aButtons);
3093 nsresult GetRelatedTarget(nsIDOMEventTarget **aRelatedTarget);
3094 nsresult InitMouseEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3095 nsIDOMWindow *viewArg, int32_t detailArg, int32_t screenXArg, int32_t screenYArg,
3096 int32_t clientXArg, int32_t clientYArg, bool ctrlKeyArg, bool altKeyArg,
3097 bool shiftKeyArg, bool metaKeyArg, uint16_t buttonArg,
3098 nsIDOMEventTarget *relatedTargetArg);
3099 nsresult GetMozPressure(float *aMozPressure);
3100 nsresult GetMozInputSource(uint16_t *aMozInputSource);
3101 nsresult InitNSMouseEvent(const nsAString *typeArg, bool canBubbleArg, bool cancelableArg,
3102 nsIDOMWindow *viewArg, int32_t detailArg, int32_t screenXArg, int32_t screenYArg,
3103 int32_t clientXArg, int32_t clientYArg, bool ctrlKeyArg, bool altKeyArg, bool shiftKeyArg,
3104 bool metaKeyArg, uint16_t buttonArg, nsIDOMEventTarget *relatedTargetArg, float pressure,
3105 uint16_t inputSourceArg);
3106 nsresult GetModifierState(const nsAString *keyArg, bool *_retval);
3107 }
3108
3109 [
3110 object,
3111 uuid(91a3d7f2-223b-4e09-a566-634e7ee0a31d),
3112 local
3113 ]
3114 interface nsIDOMKeyEvent : nsIDOMUIEvent
3115 {
3116 nsresult GetCharCode(uint32_t *aCharCode);
3117 nsresult GetKeyCode(uint32_t *aKeyCode);
3118 nsresult GetAltKey(bool *aAltKey);
3119 nsresult GetCtrlKey(bool *aCtrlKey);
3120 nsresult GetShiftKey(bool *aShiftKey);
3121 nsresult GetMetaKey(bool *aMetaKey);
3122 nsresult InitKeyEvent(const nsAString *typeArg, bool canBubbleArg,
3123 bool cancelableArg, nsIDOMWindow *viewArg, bool ctrlKeyArg,
3124 bool altKeyArg, bool shiftKeyArg, bool metaKeyArg, uint32_t keyCodeArg,
3125 uint32_t charCodeArg);
3126 nsresult GetModifierState(const nsAString *keyArg, bool *_retval);
3127 nsresult GetLocation(uint32_t *aLocation);
3128 nsresult GetKey(nsAString *aKey);
3129 }
3130
3131 [
3132 object,
3133 uuid(0b976267-4aaa-4f36-a2d4-27b5ca8d73bb),
3134 local
3135 ]
3136 interface nsIEmbeddingSiteWindow : nsISupports
3137 {
3138 nsresult SetDimensions(uint32_t flags, int32_t x, int32_t y, int32_t cx, int32_t cy);
3139 nsresult GetDimensions(uint32_t flags, int32_t *x, int32_t *y, int32_t *cx, int32_t *cy);
3140 nsresult SetFocus();
3141 nsresult GetVisibility(bool *aVisibility);
3142 nsresult SetVisibility(bool aVisibility);
3143 nsresult GetTitle(PRUnichar **aTitle);
3144 nsresult SetTitle(const PRUnichar *aTitle);
3145 nsresult GetSiteWindow(void **aSiteWindow);
3146 nsresult Blur();
3147 }
3148
3149 [
3150 object,
3151 uuid(2417cbfe-65ad-48a6-b4b6-eb84db174392),
3152 local
3153 ]
3154 interface nsIComponentRegistrar : nsISupports
3155 {
3156 nsresult AutoRegister(nsIFile *aSpec);
3157 nsresult AutoUnregister(nsIFile *aSpec);
3158 nsresult RegisterFactory(const nsCID *aClass, const char *aClassName,
3159 const char *aContractID, nsIFactory *aFactory);
3160 nsresult UnregisterFactory(const nsCID *aClass, nsIFactory *aFactory);
3161 nsresult RegisterFactoryLocation(const nsCID *aClass, const char *aClassName,
3162 const char *aContractID, nsIFile *aFile, const char *aLoaderStr,
3163 const char *aType);
3164 nsresult UnregisterFactoryLocation(const nsCID *aClass, nsIFile *aFile);
3165 nsresult IsCIDRegistered(const nsCID *aClass, bool *_retval);
3166 nsresult IsContractIDRegistered(const char *aContractID, bool *_retval);
3167 nsresult EnumerateCIDs(nsISimpleEnumerator **_retval);
3168 nsresult EnumerateContractIDs(nsISimpleEnumerator **_retval);
3169 nsresult CIDToContractID(const nsCID *aClass, char **_retval);
3170 nsresult ContractIDToCID(const char *aContractID, nsCID **_retval);
3171 }
3172
3173 [
3174 object,
3175 uuid(1630c61a-325e-49ca-8759-a31b16c47aa5),
3176 local
3177 ]
3178 interface nsIPromptService : nsISupports
3179 {
3180 nsresult Alert(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3181 const PRUnichar *aText);
3182 nsresult AlertCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3183 const PRUnichar *aText, const PRUnichar *aCheckMsg, bool *aCheckState);
3184 nsresult Confirm(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3185 const PRUnichar *aText, bool *_retval);
3186 nsresult ConfirmCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3187 const PRUnichar *aText, const PRUnichar *aCheckMsg, bool *aCheckState,
3188 bool *_retval);
3189 nsresult ConfirmEx(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3190 const PRUnichar *aText, uint32_t aButtonFlags, const PRUnichar *aButton0Title,
3191 const PRUnichar *aButton1Title, const PRUnichar *aButton2Title,
3192 const PRUnichar *aCheckMsg, bool *aCheckState, int32_t *_retval);
3193 nsresult Prompt(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3194 const PRUnichar *aText, PRUnichar **aValue, const PRUnichar *aCheckMsg,
3195 bool *aCheckState, bool *_retval);
3196 nsresult PromptUsernameAndPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3197 const PRUnichar *aText, PRUnichar **aUsername, PRUnichar **aPassword,
3198 const PRUnichar *aCheckMsg, bool *aCheckState, bool *_retval);
3199 nsresult PromptPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3200 const PRUnichar *aText, PRUnichar **aPassword, const PRUnichar *aCheckMsg,
3201 bool *aCheckState, bool *_retval);
3202 nsresult Select(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
3203 const PRUnichar *aText, uint32_t aCount, const PRUnichar **aSelectList,
3204 int32_t *aOutSelection, bool *_retval);
3205 }
3206
3207 [
3208 object,
3209 uuid(b128a1e6-44f3-4331-8fbe-5af360ff21ee),
3210 local
3211 ]
3212 interface nsITooltipTextProvider : nsISupports
3213 {
3214 nsresult GetNodeText(nsIDOMNode *aNode, PRUnichar **aText, bool *_retval);
3215 }
3216
3217 [
3218 object,
3219 uuid(24f3f4da-18a4-448d-876d-7360fefac029),
3220 local
3221 ]
3222 interface nsIEditingSession : nsISupports
3223 {
3224 nsresult GetEditorStatus(uint32_t *aEditorStatus);
3225 nsresult MakeWindowEditable(nsIDOMWindow *window, const char *aEditorType,
3226 bool doAfterUriLoad, bool aMakeWholeDocumentEditable, bool aInteractive);
3227 nsresult WindowIsEditable(nsIDOMWindow *window, bool *_retval);
3228 nsresult GetEditorForWindow(nsIDOMWindow *window, nsIEditor **_retval);
3229 nsresult SetupEditorOnWindow(nsIDOMWindow *window);
3230 nsresult TearDownEditorOnWindow(nsIDOMWindow *window);
3231 nsresult SetEditorOnControllers(nsIDOMWindow *aWindow, nsIEditor *aEditor);
3232 nsresult DisableJSAndPlugins(nsIDOMWindow *aWindow);
3233 nsresult RestoreJSAndPlugins(nsIDOMWindow *aWindow);
3234 nsresult DetachFromWindow(nsIDOMWindow *aWindow);
3235 nsresult ReattachToWindow(nsIDOMWindow *aWindow);
3236 nsresult GetJsAndPluginsDisabled(bool *aJsAndPluginsDisabled);
3237 }
3238
3239 [
3240 object,
3241 uuid(83f892cf-7ed3-490e-967a-62640f3158e1),
3242 local
3243 ]
3244 interface nsICommandParams : nsISupports
3245 {
3246 nsresult GetValueType(const char *name, int16_t *_retval);
3247 nsresult GetBooleanValue(const char *name, bool *_retval);
3248 nsresult GetLongValue(const char *name, int32_t *_retval);
3249 nsresult GetDoubleValue(const char *name, double *_retval);
3250 nsresult GetStringValue(const char *name, nsAString *_retval);
3251 nsresult GetCStringValue(const char *name, char **_retval);
3252 nsresult GetISupportsValue(const char *name, nsISupports **_retval);
3253 nsresult SetBooleanValue(const char *name, bool value);
3254 nsresult SetLongValue(const char *name, int32_t value);
3255 nsresult SetDoubleValue(const char *name, double value);
3256 nsresult SetStringValue(const char *name, const nsAString *value);
3257 nsresult SetCStringValue(const char *name, const char *value);
3258 nsresult SetISupportsValue(const char *name, nsISupports *value);
3259 nsresult RemoveValue(const char *name);
3260 nsresult HasMoreElements(bool *_retval);
3261 nsresult First();
3262 nsresult GetNext(char **_retval);
3263 }
3264
3265 [
3266 object,
3267 uuid(080d2001-f91e-11d4-a73c-f9242928207c),
3268 local
3269 ]
3270 interface nsICommandManager : nsISupports
3271 {
3272 nsresult AddCommandObserver(nsIObserver *aCommandObserver, const char *aCommandToObserve);
3273 nsresult RemoveCommandObserver(nsIObserver *aCommandObserver, const char *aCommandObserved);
3274 nsresult IsCommandSupported(const char *aCommandName, nsIDOMWindow *aTargetWindow, bool *_retval);
3275 nsresult IsCommandEnabled(const char *aCommandName, nsIDOMWindow *aTargetWindow, bool *_retval);
3276 nsresult GetCommandState(const char *aCommandName, nsIDOMWindow *aTargetWindow,
3277 nsICommandParams *aCommandParams);
3278 nsresult DoCommand(const char *aCommandName, nsICommandParams *aCommandParams,
3279 nsIDOMWindow *aTargetWindow);
3280 }
3281
3282 [
3283 object,
3284 uuid(3275b2cd-af6d-429a-80d7-f0c5120342ac),
3285 local
3286 ]
3287 interface nsICategoryManager : nsISupports
3288 {
3289 nsresult GetCategoryEntry(const char *aCategory, const char *aEntry, char **_retval);
3290 nsresult AddCategoryEntry(const char *aCategory, const char *aEntry, const char *aValue, bool aPersist,
3291 bool aReplace, char **_retval);
3292 nsresult DeleteCategoryEntry(const char *aCategory, const char *aEntry, bool aPersist);
3293 nsresult DeleteCategory(const char *aCategory);
3294 nsresult EnumerateCategory(const char *aCategory, nsISimpleEnumerator **_retval);
3295 nsresult EnumerateCategories(nsISimpleEnumerator **_retval);
3296 }
3297
3298 [
3299 object,
3300 uuid(47b82b60-a36f-4167-8072-6f421151ed50),
3301 local
3302 ]
3303 interface nsIControllerContext : nsISupports
3304 {
3305 nsresult Init(nsIControllerCommandTable *aCommandTable);
3306 nsresult SetCommandContext(nsISupports *aCommandContext);
3307 }
3308
3309 [
3310 object,
3311 uuid(d5b61b82-1da4-11d3-bf87-00105a1b0627),
3312 local
3313 ]
3314 interface nsIController : nsISupports
3315 {
3316 nsresult IsCommandEnabled(const char *command, bool *_retval);
3317 nsresult SupportsCommand(const char *command, bool *_retval);
3318 nsresult DoCommand(const char *command);
3319 nsresult OnEvent(const char *eventName);
3320 }
3321
3322 [
3323 object,
3324 uuid(8a8b4b1d-72d8-428e-9575-f918baf69ea1),
3325 local
3326 ]
3327 interface nsIContent : nsISupports
3328 {
3329 /* This is not a real interface declaration. It's too internal for us. */
3330 }
3331
3332 [
3333 object,
3334 uuid(62cca591-a030-4117-9b80-dcd366bbb509),
3335 local
3336 ]
3337 interface nsIDocument : nsISupports
3338 {
3339 /* This is not a real interface declaration. It's too internal for us. */
3340 }
3341
3342 [
3343 object,
3344 uuid(b1ee32f2-b8c4-49b9-93df-b6fab5d54688),
3345 local
3346 ]
3347 interface nsIContentSerializer : nsISupports
3348 {
3349 nsresult Init(uint32_t flags, uint32_t aWrapColumn, const char *aCharSet, bool aIsCopying,
3350 bool aIsWholeDocument);
3351 nsresult AppendText(nsIContent *aText, int32_t aStartOffset, int32_t aEndOffset, nsAString *aStr);
3352 nsresult AppendCDATASection(nsIContent *aCDATASection, int32_t aStartOffset,
3353 int32_t aEndOffset, nsAString *aStr);
3354 nsresult AppendProcessingInstruction(nsIContent *aPI, int32_t aStartOffset,
3355 int32_t aEndOffset, nsAString *aStr);
3356 nsresult AppendComment(nsIContent *aComment, int32_t aStartOffset, int32_t aEndOffset,
3357 nsAString *aStr);
3358 nsresult AppendDoctype(nsIContent *aDoctype, nsAString *aStr);
3359 nsresult AppendElementStart(nsIContent *aElement, nsIContent *aOriginalElement,
3360 nsAString *aStr);
3361 nsresult AppendElementEnd(nsIContent *aElement, nsAString *aStr);
3362 nsresult Flush(nsAString *aStr);
3363 nsresult AppendDocumentStart(nsIDocument *aDocument, nsAString *aStr);
3364 }
3365
3366 [
3367 object,
3368 uuid(753b38d1-ee03-4e58-a650-1076ccccdb7f),
3369 local
3370 ]
3371 interface nsIEditor : nsISupports
3372 {
3373 typedef void *nsIContentPtr;
3374
3375 nsresult GetSelection([out] nsISelection *_retval);
3376 nsresult Init([in] nsIDOMDocument *doc, [in] nsIContentPtr aRoot, [in] nsISelectionController *aSelCon, [in] uint32_t aFlags);
3377 nsresult SetAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] const nsAString *sourceAttrValue, [in] bool aSuppressTransaction);
3378 nsresult RemoveAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] bool aSuppressTransaction);
3379 nsresult PostCreate();
3380 nsresult PreDestroy();
3381 nsresult GetFlags([out] uint32_t *_retval);
3382 nsresult SetFlags([in] uint32_t val);
3383 nsresult GetContentsMIMEType([out] char **_retval);
3384 nsresult SetContentsMIMEType([in] const char *val);
3385 nsresult GetIsDocumentEditable([out] bool *_retval);
3386 nsresult GetIsSelectionEditable(bool *aIsSelectionEditable);
3387 nsresult GetDocument([out] nsIDOMDocument **_retval);
3388 nsresult GetRootElement([out] nsIDOMElement **_retval);
3389 nsresult GetSelectionController([out] nsISelectionController **_retval);
3390 nsresult DeleteSelection(int16_t action, int16_t aStripWrappers);
3391 nsresult GetDocumentIsEmpty([out] bool *_retval);
3392 nsresult GetDocumentModified([out] bool *_retval);
3393 nsresult GetDocumentCharacterSet([out] nsACString *_retval);
3394 nsresult SetDocumentCharacterSet([in] const nsACString *val);
3395 nsresult ResetModificationCount();
3396 nsresult GetModificationCount([out] int32_t *_retval);
3397 nsresult IncrementModificationCount([in] int32_t aModCount);
3398 nsresult GetTransactionManager([out] nsITransactionManager **_retval);
3399 nsresult SetTransactionManager(nsITransactionManager *aTransactionManager);
3400 nsresult DoTransaction([in] nsITransaction *txn);
3401 nsresult EnableUndo([in] bool enable);
3402 nsresult GetNumberOfUndoItems(int32_t *aNumberOfUndoItems);
3403 nsresult GetNumberOfRedoItems(int32_t *aNumberOfRedoItems);
3404 nsresult Undo([in] uint32_t count);
3405 nsresult CanUndo([out] bool *isEnabled, [out] bool *canUndo);
3406 nsresult Redo([in] uint32_t count);
3407 nsresult CanRedo([out] bool *isEnabled, [out] bool *canRedo);
3408 nsresult BeginTransaction();
3409 nsresult EndTransaction();
3410 nsresult BeginPlaceHolderTransaction([in] nsIAtom *name);
3411 nsresult EndPlaceHolderTransaction();
3412 nsresult ShouldTxnSetSelection([out] bool *_retval);
3413 nsresult SetShouldTxnSetSelection([in] bool should);
3414 nsresult GetInlineSpellChecker([out] nsIInlineSpellChecker **_retval);
3415 nsresult SyncRealTimeSpell();
3416 nsresult SetSpellcheckUserOverride(bool enable);
3417 nsresult Cut();
3418 nsresult CanCut([out] bool *_retval);
3419 nsresult Copy();
3420 nsresult CanCopy([out] bool *_retval);
3421 nsresult Paste([in] int32_t aSelectionType);
3422 nsresult PasteTransferable(nsITransferable *aTransferable);
3423 nsresult CanPaste([in] int32_t aSelectionType, [out] bool *_retval);
3424 nsresult CanPasteTransferable(nsITransferable *aTransferable, bool *_retval);
3425 nsresult SelectAll();
3426 nsresult BeginningOfDocument();
3427 nsresult EndOfDocument();
3428 nsresult SetAttribute([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [in] const nsAString *attvalue);
3429 nsresult GetAttributeValue([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [out] nsAString *resultValue, bool *_retval);
3430 nsresult RemoveAttribute([in] nsIDOMElement *aElement, [in] const nsAString *aAttribute);
3431 nsresult CloneAttribute([in] const nsAString *aAttribute, [in] nsIDOMNode *aDestNode, [in] nsIDOMNode *aSourceNode);
3432 nsresult CloneAttributes([in] nsIDOMNode *destNode, [in] nsIDOMNode *sourceNode);
3433 nsresult CreateNode([in] const nsAString *tag, [in] nsIDOMNode *parent, [in] int32_t position, [out] nsIDOMNode **_retval);
3434 nsresult InsertNode([in] nsIDOMNode *node, [in] nsIDOMNode *parent, [in] int32_t aPosition);
3435 nsresult SplitNode([in] nsIDOMNode *existingRightNode, [in] int32_t offset, [out] nsIDOMNode **newLeftNode);
3436 nsresult JoinNodes([in] nsIDOMNode *leftNode, [in] nsIDOMNode *rightNode, [in] nsIDOMNode *parent);
3437 nsresult DeleteNode([in] nsIDOMNode *child);
3438 bool OutputsMozDirty();
3439 nsresult MarkNodeDirty([in] nsIDOMNode *node);
3440 nsresult SwitchTextDirection();
3441 nsresult OutputToString([in] nsAString formatType, [in] uint32_t flags, [out] nsAString *_retval);
3442 nsresult OutputToStream([in] nsIOutputStream *aStream, [in] nsAString *formatType, [in] nsACString *charsetOverride, [in] uint32_t flags);
3443 nsresult SetEditorObserver(nsIEditorObserver *observer);
3444 nsresult RemoveEditorObserver(nsIEditorObserver *observer);
3445 nsresult AddEditActionListener([in] nsIEditActionListener *listener);
3446 nsresult RemoveEditActionListener([in] nsIEditActionListener *listener);
3447 nsresult AddDocumentStateListener([in] nsIDocumentStateListener *listener);
3448 nsresult RemoveDocumentStateListener([in] nsIDocumentStateListener *listener);
3449 nsresult DumpContentTree();
3450 nsresult DebugDumpContent();
3451 nsresult DebugUnitTests([out] int32_t *outNumTests, [out] int32_t *outNumTestsFailed);
3452 bool IsModifiableNode(nsIDOMNode *aNode);
3453 nsresult GetLastKeypressEventTrusted(bool *aLastKeypressEventTrusted);
3454 nsresult SetSuppressDispatchingInputEvent(bool aSuppressDispatchingInputEvent);
3455 }
3456
3457 [
3458 object,
3459 uuid(833f30de-94c7-4630-a852-2300ef329d7b),
3460 local
3461 ]
3462 interface nsIHTMLEditor : nsISupports
3463 {
3464 nsresult AddDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3465 nsresult RemoveDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3466 nsresult RemoveAllDefaultProperties();
3467 nsresult SetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
3468 nsresult GetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] bool *aFirst, [out] bool *aAny, [out] bool *aAll);
3469 nsresult GetInlinePropertyWithAttrValue([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] bool *aFirst, [out] bool *aAny, [out] bool *aAll, [out] nsAString *_retval);
3470 nsresult RemoveAllInlineProperties();
3471 nsresult RemoveInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute);
3472 nsresult IncreaseFontSize();
3473 nsresult DecreaseFontSize();
3474 nsresult NodeIsBlock([in] nsIDOMNode *node, bool *_retval);
3475 nsresult InsertHTML([in] nsAString *aInputString);
3476 nsresult PasteNoFormatting([in] int32_t aSelectionType);
3477 nsresult RebuildDocumentFromSource([in] nsAString *aSourceString);
3478 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);
3479 nsresult InsertElementAtSelection([in] nsIDOMElement *aElement, [in] bool aDeleteSelection);
3480 nsresult SetDocumentTitle([in] nsAString *aTitle);
3481 nsresult UpdateBaseURL();
3482 nsresult SelectElement([in] nsIDOMElement *aElement);
3483 nsresult SetCaretAfterElement([in] nsIDOMElement *aElement);
3484 nsresult SetParagraphFormat([in] nsAString *aParagraphFormat);
3485 nsresult GetParagraphState([out] bool *aMixed, [out] nsAString *_retval);
3486 nsresult GetFontFaceState([out] bool *aMixed, [out] nsAString *_retval);
3487 nsresult GetFontColorState([out] bool *aMixed, [out] nsAString *_retval);
3488 nsresult GetBackgroundColorState([out] bool *aMixed, [out] nsAString *_retval);
3489 nsresult GetHighlightColorState([out] bool *aMixed, [out] nsAString *_retval);
3490 nsresult GetListState([out] bool *aMixed, [out] bool *aOL, [out] bool *aUL, [out] bool *aDL);
3491 nsresult GetListItemState([out] bool *aMixed, [out] bool *aLI, [out] bool *aDT, [out] bool *aDD);
3492 nsresult GetAlignment([out] bool *aMixed, [out] int16_t *aAlign);
3493 nsresult GetIndentState([out] bool *aCanIndent, [out] bool *aCanOutdent);
3494 nsresult MakeOrChangeList([in] nsAString *aListType, [in] bool entireList, [in] nsAString *aBulletType);
3495 nsresult RemoveList([in] nsAString *aListType);
3496 nsresult Indent([in] nsAString *aIndent);
3497 nsresult Align([in] nsAString *aAlign);
3498 nsresult GetElementOrParentByTagName([in] nsAString *aTagName, [in] nsIDOMNode *aNode, [out] nsIDOMElement **_retval);
3499 nsresult GetSelectedElement([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
3500 nsresult GetHeadContentsAsHTML([out] nsAString *_retval);
3501 nsresult ReplaceHeadContentsWithHTML([in] nsAString *aSourceToInsert);
3502 nsresult CreateElementWithDefaults([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
3503 nsresult InsertLinkAroundSelection([in] nsIDOMElement *aAnchorElement);
3504 nsresult SetBackgroundColor([in] nsAString *aColor);
3505 nsresult SetBodyAttribute([in] nsAString *aAttr, [in] nsAString *aValue);
3506 nsresult GetLinkedObjects([out] nsISupportsArray **_retval);
3507 nsresult GetIsCSSEnabled([out] bool *_retval);
3508 nsresult SetIsCSSEnabled([in] bool prb);
3509 nsresult AddInsertionListener([in] nsIContentFilter *inFilter);
3510 nsresult RemoveInsertionListener([in] nsIContentFilter *inFilter);
3511 nsresult CreateAnonymousElement([in] nsAString *aTag, [in] nsIDOMNode *aParentNode, [in] nsAString *aAnonClass, [in] bool aIsCreatedHidden, [out] nsIDOMElement **_retval);
3512 nsresult GetSelectionContainer([out] nsIDOMElement **_retval);
3513 nsresult CheckSelectionStateForAnonymousButtons([in] nsISelection *aSelection);
3514 nsresult IsAnonymousElement([in] nsIDOMElement *aElement, [out] bool *_retval);
3515 nsresult GetReturnInParagraphCreatesNewParagraph([out] bool *_retval);
3516 nsresult SetReturnInParagraphCreatesNewParagraph([in] bool prb);
3517 nsresult BreakIsVisible(nsIDOMNode *aNode, bool *_retval);
3518 void /*Element*/ *GetActiveEditingHost();
3519 }
3520
3521 interface nsIDocShellTreeItem;
3522
3523 [
3524 object,
3525 uuid(37f1ab73-f224-44b1-82f0-d2834ab1cec0),
3526 local
3527 ]
3528 interface nsIDocShellTreeNode : nsISupports
3529 {
3530 nsresult GetChildCount(int32_t *aChildCount);
3531 nsresult AddChild(nsIDocShellTreeItem *child);
3532 nsresult RemoveChild(nsIDocShellTreeItem *child);
3533 nsresult GetChildAt(int32_t index, nsIDocShellTreeItem **_retval);
3534 nsresult FindChildWithName(const PRUnichar *aName, bool aRecurse, bool aSameType, nsIDocShellTreeItem *aRequestor,
3535 nsIDocShellTreeItem *aOriginalRequestor, nsIDocShellTreeItem **_retval);
3536 }
3537
3538 [
3539 object,
3540 uuid(e35bbb39-985b-4d62-81da-73c330222e5f),
3541 local
3542 ]
3543 interface nsIDocShellTreeItem : nsIDocShellTreeNode
3544 {
3545 nsresult GetName(nsAString *aName);
3546 nsresult SetName(const nsAString *aName);
3547 nsresult NameEquals(const PRUnichar *name, bool *_retval);
3548 nsresult GetItemType(int32_t *aItemType);
3549 nsresult SetItemType(int32_t aItemType);
3550 nsresult GetParent(nsIDocShellTreeItem **aParent);
3551 nsresult GetSameTypeParent(nsIDocShellTreeItem **aSameTypeParent);
3552 nsresult GetRootTreeItem(nsIDocShellTreeItem **aRootTreeItem);
3553 nsresult GetSameTypeRootTreeItem(nsIDocShellTreeItem **aSameTypeRootTreeItem);
3554 nsresult FindItemWithName(const PRUnichar *name, nsISupports *aRequestor, nsIDocShellTreeItem *aOriginalRequestor, nsIDocShellTreeItem **_retval);
3555 nsresult GetTreeOwner(nsIDocShellTreeOwner **aTreeOwner);
3556 nsresult SetTreeOwner(nsIDocShellTreeOwner *treeOwner);
3557 }
3558
3559 [
3560 object,
3561 uuid(f453d2ee-bac7-46f9-a553-df918f0cc0d0),
3562 local
3563 ]
3564 interface nsIDocShell : nsIDocShellTreeItem
3565 {
3566 nsresult LoadURI(nsIURI *uri, nsIDocShellLoadInfo *loadInfo, uint32_t aLoadFlags, bool firstParty);
3567 nsresult LoadStream(nsIInputStream *aStream, nsIURI *aURI, const nsACString *aContentType,
3568 const nsACString *aContentCharset, nsIDocShellLoadInfo *aLoadInfo);
3569 nsresult InternalLoad(nsIURI *aURI, nsIURI *aReferrer, nsISupports *aOwner, uint32_t aFlags, const PRUnichar *aWindowTarget,
3570 const char *aTypeHint, nsACString *aFileName, nsIInputStream *aPostDataStream, nsIInputStream *aHeadersStream,
3571 uint32_t aLoadFlags, nsISHEntry *aSHEntry, bool firstParty, nsIDocShell **aDocShell, nsIRequest **aRequest);
3572 nsresult AddState(nsIVariant *aData, const nsAString *aTitle, const nsAString *aURL, bool aReplace, JSContext *cx);
3573 nsresult CreateLoadInfo(nsIDocShellLoadInfo **loadInfo);
3574 nsresult PrepareForNewContentModel();
3575 nsresult SetCurrentURI(nsIURI *aURI);
3576 nsresult FirePageHideNotification(bool isUnload);
3577 nsresult GetPresContext(void /*nsPresContext*/ **aPresContext);
3578 nsIPresShell *GetPresShell();
3579 nsresult GetEldestPresShell(nsIPresShell **aEldestPresShell);
3580 nsresult GetContentViewer(nsIContentViewer **aContentViewer);
3581 nsresult GetChromeEventHandler(nsIDOMEventTarget **aChromeEventHandler);
3582 nsresult SetChromeEventHandler(nsIDOMEventTarget *aChromeEventHandler);
3583 nsresult GetAllowPlugins(bool *aAllowPlugins);
3584 nsresult SetAllowPlugins(bool aAllowPlugins);
3585 nsresult GetAllowJavascript(bool *aAllowJavascript);
3586 nsresult SetAllowJavascript(bool aAllowJavascript);
3587 nsresult GetDisableNoScript(bool *aDisableNoScript);
3588 nsresult SetDisableNoScript(bool aDisableNoScript);
3589 nsresult GetAllowMetaRedirects(bool *aAllowMetaRedirects);
3590 nsresult SetAllowMetaRedirects(bool aAllowMetaRedirects);
3591 nsresult GetAllowSubframes(bool *aAllowSubframes);
3592 nsresult SetAllowSubframes(bool aAllowSubframes);
3593 nsresult GetAllowImages(bool *aAllowImages);
3594 nsresult SetAllowImages(bool aAllowImages);
3595 nsresult GetAllowMedia(bool *aAllowMedia);
3596 nsresult SetAllowMedia(bool aAllowMedia);
3597 nsresult GetAllowDNSPrefetch(bool *aAllowDNSPrefetch);
3598 nsresult SetAllowDNSPrefetch(bool aAllowDNSPrefetch);
3599 nsresult GetAllowWindowControl(bool *aAllowWindowControl);
3600 nsresult SetAllowWindowControl(bool aAllowWindowControl);
3601 nsresult GetDocShellEnumerator(int32_t aItemType, int32_t aDirection, nsISimpleEnumerator **_retval);
3602 nsresult GetAppType(uint32_t *aAppType);
3603 nsresult SetAppType(uint32_t aAppType);
3604 nsresult GetAllowAuth(bool *aAllowAuth);
3605 nsresult SetAllowAuth(bool aAllowAuth);
3606 nsresult GetZoom(float *aZoom);
3607 nsresult SetZoom(float aZoom);
3608 nsresult GetMarginWidth(int32_t *aMarginWidth);
3609 nsresult SetMarginWidth(int32_t aMarginWidth);
3610 nsresult GetMarginHeight(int32_t *aMarginHeight);
3611 nsresult SetMarginHeight(int32_t aMarginHeight);
3612 nsresult TabToTreeOwner(bool forward, bool *tookFocus);
3613 nsresult GetBusyFlags(uint32_t *aBusyFlags);
3614 nsresult GetLoadType(uint32_t *aLoadType);
3615 nsresult SetLoadType(uint32_t aLoadType);
3616 nsresult IsBeingDestroyed(bool *_retval);
3617 nsresult GetIsExecutingOnLoadHandler(bool *aIsExecutingOnLoadHandler);
3618 nsresult GetLayoutHistoryState(nsILayoutHistoryState **aLayoutHistoryState);
3619 nsresult SetLayoutHistoryState(nsILayoutHistoryState *aLayoutHistoryState);
3620 nsresult GetShouldSaveLayoutState(bool *aShouldSaveLayoutState);
3621 nsresult GetSecurityUI(nsISecureBrowserUI **aSecurityUI);
3622 nsresult SetSecurityUI(nsISecureBrowserUI *aSecurityUI);
3623 nsresult SuspendRefreshURIs();
3624 nsresult ResumeRefreshURIs();
3625 nsresult BeginRestore(nsIContentViewer *viewer, bool top);
3626 nsresult FinishRestore();
3627 nsresult GetRestoringDocument(bool *aRestoringDocument);
3628 nsresult GetUseErrorPages(bool *aUseErrorPages);
3629 nsresult SetUseErrorPages(bool aUseErrorPages);
3630 nsresult GetPreviousTransIndex(int32_t *aPreviousTransIndex);
3631 nsresult GetLoadedTransIndex(int32_t *aLoadedTransIndex);
3632 nsresult HistoryPurged(int32_t numEntries);
3633 nsresult GetSessionStorageForPrincipal(nsIPrincipal *principal, const nsAString *documentURI,
3634 bool create, nsIDOMStorage **_retval);
3635 nsresult AddSessionStorage(nsIPrincipal *principal, nsIDOMStorage *storage);
3636 nsresult GetCurrentDocumentChannel(nsIChannel **aCurrentDocumentChannel);
3637 nsresult SetChildOffset(uint32_t offset);
3638 nsresult GetIsInUnload(bool *aIsInUnload);
3639 nsresult GetChannelIsUnsafe(bool *aChannelIsUnsafe);
3640 nsresult GetHasMixedActiveContentLoaded(bool *aHasMixedActiveContentLoaded);
3641 nsresult GetHasMixedActiveContentBlocked(bool *aHasMixedActiveContentBlocked);
3642 nsresult GetHasMixedDisplayContentLoaded(bool *aHasMixedDisplayContentLoaded);
3643 nsresult GetHasMixedDisplayContentBlocked(bool *aHasMixedDisplayContentBlocked);
3644 void DetachEditorFromWindow();
3645 nsresult GetIsOffScreenBrowser(bool *aIsOffScreenBrowser);
3646 nsresult SetIsOffScreenBrowser(bool aIsOffScreenBrowser);
3647 nsresult GetPrintPreview(nsIWebBrowserPrint **aPrintPreview);
3648 nsresult GetCanExecuteScripts(bool *aCanExecuteScripts);
3649 nsresult GetIsActive(bool *aIsActive);
3650 nsresult SetIsActive(bool aIsActive);
3651 nsresult GetHistoryID(uint64_t *aHistoryID);
3652 nsresult GetIsAppTab(bool *aIsAppTab);
3653 nsresult SetIsAppTab(bool aIsAppTab);
3654 nsresult CreateAboutBlankContentViewer(nsIPrincipal *aPrincipal);
3655 nsresult GetCharset(char **aCharset);
3656 nsresult SetCharset(const char * aCharset);
3657 nsresult GatherCharsetMenuTelemetry();
3658 nsresult GetForcedCharset(nsIAtom **aForcedCharset);
3659 nsresult SetForcedCharset(nsIAtom *aForcedCharset);
3660 nsresult GetParentCharset(nsIAtom **aParentCharset);
3661 nsresult SetParentCharset(nsIAtom *aParentCharset);
3662 nsresult GetParentCharsetSource(int32_t *aParentCharsetSource);
3663 nsresult SetParentCharsetSource(int32_t aParentCharsetSource);
3664 nsresult AddWeakPrivacyTransitionObserver(nsIPrivacyTransitionObserver *obs);
3665 nsresult AddWeakReflowObserver(nsISupports /*nsIReflowObserver*/ *obs);
3666 nsresult RemoveWeakReflowObserver(nsISupports /*nsIReflowObserver*/ *obs);
3667 nsresult NotifyReflowObservers(bool interruptible, int /*DOMHighResTimeStamp*/ start, int /*DOMHighResTimeStamp*/ end);
3668 nsresult GetIsBrowserElement(bool *aIsBrowserElement);
3669 nsresult GetIsApp(bool *aIsApp);
3670 nsresult GetIsBrowserOrApp(bool *aIsBrowserOrApp);
3671 nsresult GetIsInBrowserElement(bool *aIsInBrowserElement);
3672 nsresult GetIsInBrowserOrApp(bool *aIsInBrowserOrApp);
3673 nsresult SetIsApp(uint32_t ownAppId);
3674 nsresult SetIsBrowserInsideApp(uint32_t containingAppId);
3675 nsresult GetAppId(uint32_t *aAppId);
3676 nsresult GetSameTypeParentIgnoreBrowserAndAppBoundaries(nsIDocShell **_retval);
3677 nsresult GetAsyncPanZoomEnabled(bool *aAsyncPanZoomEnabled);
3678 nsresult GetSandboxFlags(uint32_t *aSandboxFlags);
3679 nsresult SetSandboxFlags(uint32_t aSandboxFlags);
3680 nsresult GetMixedContentChannel(nsIChannel **aMixedContentChannel);
3681 nsresult SetMixedContentChannel(nsIChannel *aMixedContentChannel);
3682 nsresult GetAllowMixedContentAndConnectionData(bool *rootHasSecureConnection, bool *allowMixedContent, bool *isRootDocShell);
3683 bool PluginsAllowedInCurrentDoc();
3684 nsresult GetFullscreenAllowed(bool *aFullscreenAllowed);
3685 nsresult SetFullscreenAllowed(bool allowed);
3686 nsresult GetAffectPrivateSessionLifetime(bool *aAffectPrivateSessionLifetime);
3687 nsresult SetAffectPrivateSessionLifetime(bool aAffectPrivateSessionLifetime);
3688 nsresult GetMayEnableCharacterEncodingMenu(bool *aMayEnableCharacterEncodingMenu);
3689 nsresult GetEditor(nsIEditor **aEditor);
3690 nsresult SetEditor(nsIEditor *aEditor);
3691 nsresult GetEditable(bool *aEditable);
3692 nsresult GetHasEditingSession(bool *aHasEditingSession);
3693 nsresult MakeEditable(bool inWaitForUriLoad);
3694 nsresult GetChildSHEntry(int32_t aChildOffset, nsISHEntry **_retval);
3695 nsresult AddChildSHEntry(nsISHEntry *aCloneReference, nsISHEntry *aHistoryEntry, int32_t aChildOffset, uint32_t aLoadType, bool aCloneChildren);
3696 nsresult GetUseGlobalHistory(bool *aUseGlobalHistory);
3697 nsresult SetUseGlobalHistory(bool aUseGlobalHistory);
3698 nsresult RemoveFromSessionHistory();
3699 nsresult GetCreatedDynamically(bool *aCreatedDynamically);
3700 nsresult SetCreatedDynamically(bool aCreatedDynamically);
3701 nsresult GetCurrentSHEntry(nsISHEntry **aEntry, bool *_retval);
3702 }
3703
3704 [
3705 object,
3706 uuid(02d37b31-e654-4b74-9bc3-14dfe0020bb3),
3707 local
3708 ]
3709 interface nsIMarkupDocumentViewer : nsISupports
3710 {
3711 nsresult ScrollToNode(nsIDOMNode *node);
3712 nsresult GetTextZoom(float *aTextZoom);
3713 nsresult SetTextZoom(float aTextZoom);
3714 nsresult GetFullZoom(float *aFullZoom);
3715 nsresult SetFullZoom(float aFullZoom);
3716 nsresult GetAuthorStyleDisabled(bool *aAuthorStyleDisabled);
3717 nsresult SetAuthorStyleDisabled(bool aAuthorStyleDisabled);
3718 nsresult GetDefaultCharacterSet(nsACString *aDefaultCharacterSet);
3719 nsresult SetDefaultCharacterSet(const nsACString *aDefaultCharacterSet);
3720 nsresult GetForceCharacterSet(nsACString *aForceCharacterSet);
3721 nsresult SetForceCharacterSet(const nsACString *aForceCharacterSet);
3722 nsresult GetHintCharacterSet(nsACString *aHintCharacterSet);
3723 nsresult SetHintCharacterSet(const nsACString *aHintCharacterSet);
3724 nsresult GetHintCharacterSetSource(int32_t *aHintCharacterSetSource);
3725 nsresult SetHintCharacterSetSource(int32_t aHintCharacterSetSource);
3726 nsresult GetPrevDocCharacterSet(nsACString *aPrevDocCharacterSet);
3727 nsresult SetPrevDocCharacterSet(const nsACString *aPrevDocCharacterSet);
3728 nsresult GetContentSize(int32_t *width, int32_t *height);
3729 nsresult GetBidiTextDirection(uint8_t *aBidiTextDirection);
3730 nsresult SetBidiTextDirection(uint8_t aBidiTextDirection);
3731 nsresult GetBidiTextType(uint8_t *aBidiTextType);
3732 nsresult SetBidiTextType(uint8_t aBidiTextType);
3733 nsresult GetBidiNumeral(uint8_t *aBidiNumeral);
3734 nsresult SetBidiNumeral(uint8_t aBidiNumeral);
3735 nsresult GetBidiSupport(uint8_t *aBidiSupport);
3736 nsresult SetBidiSupport(uint8_t aBidiSupport);
3737 nsresult GetBidiOptions(uint32_t *aBidiOptions);
3738 nsresult SetBidiOptions(uint32_t aBidiOptions);
3739 nsresult GetMinFontSize(int32_t *aMinFontSize);
3740 nsresult SetMinFontSize(int32_t aMinFontSize);
3741 nsresult AppendSubtree(void /* nsTArray<nsCOMPtr<nsIMarkupDocumentViewer>> */ *array);
3742 nsresult ChangeMaxLineBoxWidth(int32_t maxLineBoxWidth);
3743 }
3744
3745 [
3746 object,
3747 uuid(16fe5e3e-eadc-4312-9d44-b6bedd6b5474),
3748 local
3749 ]
3750 interface nsIMutationObserver : nsISupports
3751 {
3752 void CharacterDataWillChange(nsIDocument *aDocument, nsIContent *aContent,
3753 void /*CharacterDataChangeInfo*/ *aInfo);
3754 void CharacterDataChanged(nsIDocument *aDocument, nsIContent *aContent,
3755 void /*CharacterDataChangeInfo*/ *aInfo);
3756 void AttributeWillChange(nsIDocument *aDocument, nsIContent *aContent, int32_t aNameSpaceID,
3757 nsIAtom *aAttribute, int32_t aModType);
3758 void AttributeChanged(nsIDocument *aDocument, nsIContent *aContent, int32_t aNameSpaceID,
3759 nsIAtom *aAttribute, int32_t aModType);
3760 void AttributeSetToCurrentValue(nsIDocument *aDocument, /*mozilla::dom::Element*/ void *aElement,
3761 int32_t aNameSpaceID, nsIAtom *aAttribute);
3762 void ContentAppended(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aFirstNewContent,
3763 int32_t aNewIndexInContainer);
3764 void ContentInserted(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
3765 int32_t aIndexInContainer);
3766 void ContentRemoved(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
3767 int32_t aIndexInContainer, nsIContent *aPreviousSibling);
3768 void NodeWillBeDestroyed(const nsINode *aNode);
3769 void ParentChainChanged(nsIContent *aContent);
3770 }
3771
3772 [
3773 object,
3774 uuid(2c4ad90a-740e-4212-ba3f-feacda4b929e),
3775 local
3776 ]
3777 interface nsIParser : nsISupports
3778 {
3779 typedef int nsDTDMode;
3780 typedef int eParserCommands;
3781
3782 /* From nsParserBase: */
3783 bool IsParserEnabled();
3784 nsresult GetChannel(nsIChannel **aChannel);
3785
3786 void SetContentSink(nsIContentSink *aSink);
3787 nsIContentSink *GetContentSink();
3788 void GetCommand(nsACString *aCommand);
3789 void SetCommand2(const char *aCommand);
3790 void SetCommand(eParserCommands aParserCommand);
3791 void SetDocumentCharset(const nsACString *aCharset, int32_t aSource);
3792 void GetDocumentCharset(nsACString *oCharset, int32_t *oSource);
3793 nsresult GetDTD(nsIDTD **aDTD);
3794 nsIStreamListener *GetStreamListener();
3795 nsresult ContinueInterruptedParsing();
3796 void BlockParser();
3797 void UnblockParser();
3798 void ContinueInterruptedParsingAsync();
3799 bool IsComplete();
3800 nsresult Parse(nsIURI *aURL, nsIRequestObserver *aListener, void *aKey, nsDTDMode aMode);
3801 nsresult Terminate();
3802 nsresult ParseFragment(const nsAString *aSourceBuffer, void /*nsTArray<nsString>*/ *aTagStack);
3803 nsresult BuildModel();
3804 nsresult CancelParsingEvents();
3805 void Reset();
3806 bool IsInsertionPointDefined();
3807 void BeginEvaluatingParserInsertedScript();
3808 void EndEvaluatingParserInsertedScript();
3809 void MarkAsNotScriptCreated(const char *aCommand);
3810 bool IsScriptCreated();
3811 }
3812
3813 [
3814 object,
3815 uuid(900bc4bc-8b6c-4cba-82fa-568a80fffd3e),
3816 local
3817 ]
3818 interface nsIDocumentObserver : nsIMutationObserver
3819 {
3820 typedef uint32_t nsUpdateType;
3821
3822 typedef struct {
3823 uint64_t mStates;
3824 } nsEventStates;
3825
3826 void BeginUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
3827 void EndUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
3828 void BeginLoad(nsIDocument *aDocument);
3829 void EndLoad(nsIDocument *aDocument);
3830 void ContentStatesChanged(nsIDocument *aDocument, nsIContent *aContent, nsEventStates *aStateMask);
3831 void DocumentStatesChanged(nsIDocument *aDocument, nsEventStates *aStateMask);
3832 void StyleSheetAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, bool aDocumentSheet);
3833 void StyleSheetRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, bool aDocumentSheet);
3834 void StyleSheetApplicableStateChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet,
3835 bool aApplicable);
3836 void StyleRuleChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aOldStyleRule,
3837 nsIStyleRule *aNewStyleRule);
3838 void StyleRuleAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
3839 void StyleRuleRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
3840 void BindToDocument(nsIDocument *aDocument, nsIContent *aContent);
3841 void AttemptToExecuteScript(nsIContent *aContent, nsIParser *aParser, bool *aBlock);
3842 }
3843
3844 [
3845 object,
3846 uuid(3682dd99-8560-44f4-9b8f-ccce9d7b96fb),
3847 local
3848 ]
3849 interface nsIContentUtils : nsISupports
3850 {
3851 bool IsSafeToRunScript();
3852 nsresult AddDocumentObserver(nsIDocument *aDocument, nsIDocumentObserver *aObserver);
3853 nsresult RemoveDocumentObserver(nsIDocument *aDocument, nsIDocumentObserver *aObserver);
3854 nsresult AddMutationObserver(nsINode *aNode, nsIMutationObserver *aObserver);
3855 nsresult RemoveMutationObserver(nsINode *aNode, nsIMutationObserver *aObserver);
3856 nsresult AddScriptRunner(nsIRunnable *aRunnable);
3857 JSContext *GetContextFromDocument(nsIDocument *aDocument);
3858 }
3859
3860 [
3861 object,
3862 uuid(8f672000-bab9-4c60-aaaf-2673c4e2a4c6),
3863 local
3864 ]
3865 interface nsIPluginInstance : nsISupports
3866 {
3867 nsresult GetDOMElement(nsIDOMElement **aDOMElement);
3868 }
3869
3870 cpp_quote("DEFINE_GUID(IID_nsCycleCollectionISupports, 0xc61eac14,0x5f7a,0x4481,0x96,0x5e,0x7e,0xaa,0x6e,0xff,0xa8,0x5f);")