Boris Zbarsky
fb1bdaf8dd
Bug 867903. Speed up getDescriptors and some other obvious slow points in codegen. r=khuey
2013-05-09 13:06:48 -04:00
Ryan VanderMeulen
9edc2f4aa0
Backed out 6 changesets (bug 868996, bug 867903, bug 869014, bug 870219, bug 861587) for PGO bustage.
...
CLOSED TREE
2013-05-09 17:11:59 -04:00
Boris Zbarsky
f53244c6cc
Bug 867903. Speed up getDescriptors and some other obvious slow points in codegen. r=khuey
2013-05-09 13:06:48 -04:00
Andrew McCreight
18efb67705
Bug 851639 - Allow JS implemented WebIDL to be registered on window.navigator. r=bz
2013-04-30 13:30:25 -07:00
Boris Zbarsky
1ffcf1ad91
Bug 861493. When passing arguments to an Xray for a WebIDL constructor, make sure to do the argument unwrapping before entering the content compartment. r=bholley,waldo
...
There are several changes here:
1) Adds some MutableThis methods to Optional, Nullable, and dictionaries to
effectively allow doing a const_cast without knowing the actual type being
templated over. I needed this because I do not in fact know that type in
the relevant code. I'm open to suggestions for a better name for this
method.
2) Adds some operator& to RootedJSValue to make it look more like a JS::Value,
and in particular so I can JS_WrapValue the thing in it.
3) Adds a Slot() method to NonNullLazyRootedObject, just like NonNull has.
4) Adds an operator& to LazyRootedObject to make it look more like JSObject* so
I can JS_WrapObject the thing in it.
5) Implements the actual rewrapping of the arguments into the content compartment.
6) Fixes a small preexisting bug in which we didn't look at named constructors
in getTypesFromDescriptor (this was causing my tests to not compile).
7) Changes Xrays to not enter the content compartment when calling a WebIDL
constructor.
8) Adds some friend API to report things as not being functions.
2013-04-25 19:03:05 -04:00
Olli Pettay
baa392919d
Bug 862983 - HeaderFile annotation for WebIDL interfaces, r=bz
...
--HG--
extra : rebase_source : f096c032342b71aeb42999f80241697c79037b7c
2013-04-17 23:29:09 +03:00
Boris Zbarsky
48d68f9676
Bug 852219 part 6. Handle cases when the C++ class we want to actually inherit from is not the one that the WebIDL interface is mapped to. r=mccr8
2013-04-03 22:22:16 -04:00
David Zbarsky
455f0cd757
[Bug 852843] SVGZoomAndPan interface object not being instantiated r=bz
2013-03-21 01:33:56 -04:00
Andrew McCreight
b605a583db
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-18 16:05:51 -07:00
Andrew McCreight
6076fafa7a
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-18 16:04:24 -07:00
Kyle Huey
5a7ceaeb53
Back out Bug 827486 for PGO bustage. CLOSED TREE
2013-03-18 13:00:00 -07:00
Andrew McCreight
b6112c1005
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-18 10:19:42 -07:00
Andrew McCreight
8298fa76d1
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-18 10:19:41 -07:00
Phil Ringnalda
8d356d6b0e
Back out 2ea5f267af77:218356c595fc (bug 827486) for Windows builds dying with an obscure "MemoryError"
...
CLOSED TREE
2013-03-17 16:40:54 -07:00
Andrew McCreight
046b780f2e
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-17 09:56:13 -07:00
Andrew McCreight
496c9b693e
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-17 09:55:14 -07:00
Phil Ringnalda
e9aaf10590
Back out f408dd29944c:db5c280d1907 (bug 827486) for probably having needed a clobber
...
CLOSED TREE
2013-03-16 18:16:37 -07:00
Andrew McCreight
4ed2fd027f
Bug 827486, part 6 - generate headers and code for JS implemented WebIDL classes. r=bz
2013-03-16 16:22:23 -07:00
Andrew McCreight
e87852f192
Bug 827486, part 1: add JSImplementation extended attribute. r=bz
2013-03-16 16:22:22 -07:00
David Zbarsky
2eed062df0
Bug 842201 - SVGUnitTypes interface object is not being instantiated r=bz
2013-03-13 14:07:49 -04:00
Masatoshi Kimura
0b2426e59c
Bug 841289 - Remove prefable option from WebIDL codegen. r=bz
2013-03-06 07:09:38 +09:00
Boris Zbarsky
ed13d9dc98
Bug 827158 part 8. Implement legacycaller support in WebIDL. r=peterv
2013-03-04 14:08:24 -05:00
William Chen
481e5099f6
Bug 837352 - Don't generate dictionary code in WebIDL unless used in generated code. r=bz
2013-02-25 09:20:49 -08:00
Peter Van der Beken
6ac60724ce
Fix for bug 838269 (Support cross-global |... instanceof DOMInterface|). r=bz.
...
--HG--
extra : rebase_source : e5ad1d7da8029394e3ecb38909eca406a675dbe9
2013-01-08 19:05:36 +01:00
Boris Zbarsky
2c2153865c
Bug 836850. Allow a single C++ class to implement multiple WebIDL interfaces. r=peterv
...
--HG--
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_dl_attributes_reflection.html
rename : content/html/content/test/test_li_attributes_reflection.html => content/html/content/test/test_ul_attributes_reflection.html
2013-02-08 12:20:11 +00:00
Boris Zbarsky
c6638a677b
Bug 830099. Flag WebIDL dictionaries and callbacks with some information indicating whether we need main-thread and worker codegen for them and then use that information to skip unneccessary codegen. r=peterv
2013-01-28 23:30:17 -05:00
Phil Ringnalda
426c47cdf0
Back out c5238879470f and b3cabb259af7 (bug 830099) for bustage
2013-01-28 22:36:59 -08:00
Boris Zbarsky
719c7bf030
Bug 830099. Flag WebIDL dictionaries and callbacks with some information indicating whether we need main-thread and worker codegen for them and then use that information to skip unneccessary codegen. r=peterv
2013-01-28 23:30:17 -05:00
Ehsan Akhgari
728d7beaad
Backed out changeset 32786d29daf8 (bug 830099) because of build bustage
2013-01-28 23:51:03 -05:00
Boris Zbarsky
f5b233966e
Bug 830099. Flag WebIDL dictionaries and callbacks with some information indicating whether we need main-thread and worker codegen for them and then use that information to skip unneccessary codegen. r=peterv
2013-01-28 23:30:17 -05:00
Boris Zbarsky
2234eada00
Bug 822470 part 7. Use new callback codegen for conversion to and from JS. r=peterv
...
NodeFilter, EventListener, and DOMTransaction will be updated to use the new codegen once we've fixed the consumers.
2013-01-28 08:34:31 -05:00
Boris Zbarsky
90caf3e264
Bug 816376. Create vanilla objects for the interface object of callback interfaces. r=peterv
2012-12-06 15:21:18 -05:00
Boris Zbarsky
c238a8e902
Bug 779048 part 2. Rearrange how we do our includes and forward-declares to actually work with callbacks and dictionaries sanely. r=peterv
2012-11-09 07:43:57 -08:00
Boris Zbarsky
f74ea18279
Bug 804635. Make codegen deal with Document not being an external interface but not available in workers even though XMLHttpRequest (which can return or accept Document) is available there. r=peterv
2012-11-05 11:58:04 -05:00
Boris Zbarsky
2f46bbb1cd
Bug 803519. Require indexed/named getters if we have creators/deleters/setters. r=peterv
2012-11-05 11:58:03 -05:00
Boris Zbarsky
b93a1ba901
Bug 788225. Implement WebIDL deleters. r=peterv
2012-11-05 11:58:02 -05:00
Boris Zbarsky
e435c28e4e
Bug 798151. Support stringifier operations (but not yet attributes!) on non-proxy bindings, and fix Object.prototype.toString for proxy bindings. r=peterv
2012-10-22 13:08:52 -04:00
Peter Van der Beken
b981fdd138
Fix for bug 799465 (Add complete support for non-nsISupports objects in new DOM bindings) - fix CC traversal and wrapper preservation. r=bz.
...
--HG--
rename : dom/tests/mochitest/chrome/file_bug800817.xul => dom/tests/mochitest/chrome/file_bug799299.xul
rename : dom/tests/mochitest/chrome/test_bug800817.xul => dom/tests/mochitest/chrome/test_bug799299.xul
extra : rebase_source : bed68ffa15fe5933994c33fbd94ad2b597b5b1b9
2012-09-26 20:12:15 +02:00
Boris Zbarsky
e743742df1
Bug 792890. Fix JS-wrapping of callback interfaces to just return the underlying JS object. r=peterv
...
There are several changes here:
1) When wrapping a callback interface object for JS, just extract the
underlying JSObject from inside it and hand that object out.
2) Flag callback interface descriptors as "not concrete" (only matters
for cases when they have constants on the interface object) and not
wrappercached (will catch bugs if someone tries to treat them as a
Gecko object).
3) Fix a preexisting bug in sequence wrapping where we'd try to
JS_DefineElement twice if we were wrapping a null value for a
sequence of nullable interface objects.
2012-10-10 15:57:57 -04:00
Boris Zbarsky
34d8ccc06a
Bug 792980. Don't force consumers to list descriptors for interfaces that are using all teh defaults. r=peterv
...
The new setup is:
* Consequential interfaces with no explicit descriptor are still skipped.
* If no information is provided about an interface, an empty descriptor is
assumed.
* If a list is provided and the only entry is a worker descriptor, an empty
main-thread descriptor is assumed.
2012-10-01 08:56:31 -04:00
Boris Zbarsky
b055233788
Bug 793528. Worker bindings should default to looking for headers in mozilla/dom/workers/bindings/. r=khuey
2012-10-01 08:45:11 -04:00
Peter Van der Beken
96b3ddd3e3
Fix for bug 791347 (Support non-nsISupports refcounted natives and non-refcounted natives in new DOM bindings). r=bz/smaug.
...
--HG--
extra : rebase_source : cd6d98461d7fa3a07fa1361b4d840448122b6655
2012-09-19 15:02:37 +02:00
Boris Zbarsky
1bd799df56
Bug 778150 part 3. Default attributes to infallible. Allow annotation of fallible attributes in WebIDL. r=peterv
...
The valid annotations are [Throws], [GetterThrows], and [SetterThrows], which can all either take no value or
be set to MainThread or Workers if the throwing behavior is only happening on main thread or in workers
2012-09-05 09:21:33 -04:00
Boris Zbarsky
7a3efb15c4
Bug 778150 part 2. Default methods to infallible. Allow annotation of fallible methods in WebIDL using [Throws]. r=peterv
...
[Throws] can either take no value, or can take MainThread or Workers if the
throwing behavior is only happening on main thread or in workers.
2012-09-05 09:21:33 -04:00
Boris Zbarsky
bca38b3571
Bug 778150 part 1. Remove the vestigial ability to specify infallibility stuff in the conf file. r=peterv
2012-09-05 09:21:33 -04:00
Boris Zbarsky
c6e1a39316
Bug 774970. Add the ability to generate code for dealing with an XPConnect 'this' object in some cases. r=peterv
2012-08-28 13:10:09 -04:00
Boris Zbarsky
0ca95e7360
Bug 779046. Have saner defaults for the nativeType of a WebIDL bindings. r=peterv
2012-08-28 13:10:09 -04:00
Peter Van der Beken
ee9eae3141
Fix for bug 768692 (Move DOM list binding generation to the new DOM binding codegen). r=bzbarsky.
...
--HG--
extra : rebase_source : 651a0fac4c9a87ef1c0a9cd91588c6421fd050c4
2012-05-22 15:46:20 +02:00
Boris Zbarsky
2032b1ade1
Bug 764456 part 3. Clean up meaning of 'castable' and use thereof a bit. r=peterv
2012-07-19 14:48:58 -04:00
Boris Zbarsky
808e255ede
Bug 757164. Move infallibility annotations into webidl. r=peterv
...
In this new setup, there are three new extended attributes: Infallible,
GetterInfallible, SetterInfallible. The first one applies to both methods and
attributes, while the last two apply only to attributes. Each one can be
either set with no value specified (in which case it applies both on main
thread and in workers) or can be set to MainThread or Workers to limit where it
applies.
If Infallible is set on an attribute, then GetterInfallible and
SetterInfallible will be ignored. So if you want to specify, for example, an
attribute that's infallible on the main thread and has an infallible getter in
workers, the right way to do that is [GetterInfallible,
SetterInfallible=MainThread].
2012-07-13 19:29:14 -04:00