Jeff Walden
ffd93ba761
Bug 1033916 - Move JSAutoByteString out of jsapi.h into js/public/AutoByteString.h, incidentally breaking the jsfriendapi.h -> jsapi.h dependency. r=jandem
...
--HG--
extra : rebase_source : d85baf9b28e632db5669aa3d056cc9744686f5c8
2018-08-20 07:46:08 -07:00
Jan de Mooij
81ec9d746f
Bug 1472973 part 4 - Use JS::GetNonCCWObjectGlobal in PrefableDisablers::isEnabled. r=bz
2018-07-06 18:16:23 +02:00
Arnaud Bienner
bd000427cf
Bug 1466182 - Add AudioWorkletProcessor definitions. r=baku,karlt
...
MozReview-Commit-ID: 1KKrUqRY2qf
--HG--
extra : rebase_source : c287e1c4952f0f9a28dd39879d35bf37d6ce50d2
2018-06-24 20:02:47 +02:00
Margareta Eliza Balazs
6ff6f954a0
Backed out changeset cfbcac62d08e (bug 1466182) for causing bustage builds/worker/workspace/build/src/dom/media/webaudio/AudioWorkletProcessor.cpp on a CLOSED TREE
2018-06-29 14:45:37 +03:00
Arnaud Bienner
a2c3715849
Bug 1466182 - Add AudioWorkletProcessor definitions. r=baku,karlt
...
MozReview-Commit-ID: 7BLS2iDpFf4
--HG--
extra : rebase_source : 8382347002ad28218ee82b596f3fddc6769e4e9e
2018-06-24 20:02:47 +02:00
Jan de Mooij
bcadbf2ad9
Bug 1464772 part 5 - Use GetIsSecureContext instead of RealmCreationOptionsRef in IsSecureContextOrObjectIsFromSecureContext. r=bz
...
Also changes RealmCreationOptionsRef to take a realm instead of compartment (this function is now unused but still potentially useful).
2018-06-06 11:44:17 +02:00
Boris Zbarsky
a0ebf6e398
Bug 1465602 part 2. Fix the interaction of default toJSON with Func-controlled exposure that examines the object's global. r=qdot
2018-06-01 12:17:10 -04:00
Jan de Mooij
7148cd7d35
Bug 1464036 - Remove PropertyInfo constructor to keep MSVC from generating static initializers. r=bz
...
--HG--
extra : rebase_source : c59d1878615029c7c8b075f4ec288daef77414c6
2018-05-26 14:14:10 +02:00
Jan de Mooij
17f3983d0f
Bug 1461605 part 1 - Rename CompartmentOptions to RealmOptions. r=luke,bz
2018-05-17 10:59:45 +02:00
Jan de Mooij
d660ad143b
Bug 1460341 - Give jsid a constructor that initializes it to a void id. r=jonco,bz
2018-05-11 12:01:32 +02:00
Ting-Yu Chou
2a8c9b7ffd
Bug 1348099 part 1 - Binary search property id when resolve DOM Xrays own property. r=bz
...
Currently we resolve a property by iterating every prefable and check whether it
is enabled. If it is, we linear search the ids that it manages. This patch
changes that to binary searching to find whether the id being resolved is
present first, and checking whether its prefable is enabled only when we find
it. This improves the performance of property resolution, especially when the
property is not present.
The patch stores all the property ids a NativePropertiesN owns in a single array
of PropertyInfo structs. Each struct contains an id and the information needed
to find the corresponding Prefable for the enabled check, as well as the
information needed to find the correct property descriptor in the Prefable. We
also store an array of indices into the PropertyInfo array, sorted by bits of
the corresponding jsid. Given a jsid, this allows us to binary search for the
index of the corresponding PropertyInfo, if any. The index array requires 2
bytes for each property, which is ~20k across all our bindings. The extra
information stored in each PropertyInfo requires 4 bytes for each property,
which is about 40k across all our bindings in 32-bit builds, or 80k in 64-bit
builds due to alignment requirements on PropertyInfo. However we save a bit of
memory from changing NativePropertiesN's trios to duos.
The array of unsorted ids is kept because XrayOwnPropertyKeys() includes only
properties that are enabled. Without it, we will need to check every single
property to know whether its prefable is enabled or not, which is inefficient.
With this patch, initializing property ids takes longer because of the sorting.
I measured also insertion sort because I thought the ids should be nearly sorted
as they are generated sequentially at run time, but that's not the case and
NS_QuickSort() runs faster.
MozReview-Commit-ID: Lc4Z1ui3t0o
--HG--
extra : rebase_source : 314efe467a14428c57f90af2ecc0ec5c47a31993
2017-06-12 12:13:38 +08:00
Andrea Marchesini
8524257019
Bug 1290021 - Implement a prototype version of Houdini "Worklets Level 1" spec - part 2 - WorkletGlobalScope, r=smaug
2016-11-06 09:54:29 +01:00
Boris Zbarsky
598f3f4180
Bug 1021289 part 4. Implement support for WebIDL deleters over Xrays. r=peterv
2016-11-04 12:41:26 -04:00
Boris Zbarsky
bb0814b5d3
Bug 946906 part 4. Codegen Xray expando JSClasses for DOM objects with [Cached] or [StoreInSlot] members. r=bholley
2016-10-10 18:16:26 -04:00
Boris Zbarsky
d7821950f4
Bug 1278583 part 5. Switch DOM code from using hasInstance class hooks to using Symbol.hasInstance. r=peterv
2016-08-03 18:32:07 -07:00
Boris Zbarsky
8e34004cf1
Bug 1288791 part 1. Rename the GetParentObject template bits to make it clearer what they're really doing: finding the associated global for an object's native. r=bkelly
2016-07-27 11:05:36 -04:00
Alexandre Lissy
6798f02654
Bug 1286530 - Clean AvailableIn, CheckAnyPermissions and CheckAllPermissions from WebIDL r=bz,fabrice
...
MozReview-Commit-ID: 6EQfBM09xUE
--HG--
rename : dom/contacts/tests/test_contacts_cache.xul => dom/contacts/tests/test_contacts_a_cache.xul
rename : dom/contacts/tests/test_contacts_shutdown.xul => dom/contacts/tests/test_contacts_a_shutdown.xul
rename : dom/contacts/tests/test_contacts_upgrade.xul => dom/contacts/tests/test_contacts_a_upgrade.xul
rename : dom/mobilemessage/tests/mochitest/mochitest.ini => dom/mobilemessage/tests/mochitest/chrome.ini
extra : rebase_source : 5f708f2a927fafff66626367ef07080785ba9f55
2016-04-21 15:48:59 +02:00
Boris Zbarsky
efc4dcf284
Bug 1275315 part 2. Use the new Realm getters in binding code. r=peterv
2016-07-09 00:19:52 -04:00
Chris Peterson
43c2748f66
Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj
2016-07-08 14:39:53 -07:00
Jonathan Watt
1f58b22c60
Bug 177957, part 3 - Make the WebIDL code generator support the [SecureContext] extended attribute. r=bz
...
MozReview-Commit-ID: 3O3V4MTgLuR
2016-05-16 10:04:38 +01:00
Boris Zbarsky
3c3e4fad9c
Bug 1272160. Fix XPCWrappedNativeScope::AddSizeOfIncludingThis to not blindly poke at non-DOM globals as if they were DOM globals. r=khuey
...
I did audit the XPConnect callers of TraceProtoAndIfaceCache and DestroyProtoAndIfaceCache, and they all check JSCLASS_DOM_GLOBAL.
2016-05-13 20:21:40 -04:00
Nicholas Nethercote
8d77da691d
Bug 1260653 (follow-up) - Use |MOZ_CONSTEXPR| instead of |constexpr| to unbreak builds with VS 2013. r=birtles.
2016-04-01 13:51:18 +11:00
Nicholas Nethercote
358a6071d9
Bug 1260653 - Shrink NativeProperties. r=bz.
...
This patch makes NativeProperties variable-length and reduces static data by
110,336 bytes on 64-bit, and half that on 32-bit.
MozReview-Commit-ID: 2etZ5AnEhgO
--HG--
extra : rebase_source : 6a167b64df7da3c6940114782fe08337f04a694d
2016-03-31 09:57:20 +11:00
Nicholas Nethercote
f80479d54a
Bug 1011826 - Split Prefable into two pieces. r=bz.
...
The fields in Prefable relating to disabling are usually all zero. This patch
moves them into a new struct PrefableDisablers. This reduces static data size
by 92 KB, which applies to every process. It might also make isEnabled() faster
because the common case only involves one test instead of two.
--HG--
extra : rebase_source : 004eb8221e23b741c4837dd95af93e437edb4587
2016-03-24 06:09:24 +11:00
Nicholas Nethercote
a299ce6d78
Bug 1258924 - Reorder DOMIfaceAndProtoJSClass fields to reduce padding. r=bz.
...
On 64-bit this reduces sizeof(DOMIfaceAndProtoJSClass) from 336 to 328, saving
20 KiB. On 32-bit it should save half that.
2016-03-24 05:54:38 +11:00
Tom Schuster
4d6aaf2f25
Bug 1242214 - Rename JSPropertyDescriptor JS::PropertyDescriptor everywhere else. r=smaug
2016-01-28 11:28:04 +01:00
Boris Zbarsky
e4fd35820f
Bug 1048695 part 2. Make interface members not be exposed based on their nonExposedGlobals. r=peterv
2015-12-01 12:02:36 -05:00
Boris Zbarsky
09e35c652a
Bug 1048695 part 1. Pass the set of globals where a member should NOT be exposed to MemberCondition. r=peterv
2015-12-01 12:02:33 -05:00
Ms2ger
a48fdcad15
Bug 1204501 - Update the documentation for DOMJSClass::mParticipant; r=peterv
...
Workers have cycle collection now, so they're no longer special.
2015-09-14 16:08:02 +02:00
Kan-Ru Chen
5c2f3fc74e
Bug 1179718 - Rename CheckPermissions to CheckAnyPermissions. r=bz
2015-07-17 11:07:53 +08:00
Kan-Ru Chen
a5886f19c7
Bug 1179718 - Add a CheckAllPermissions extended attribute to WebIDL. r=bz
2015-07-17 11:06:23 +08:00
Andrew McCreight
8b724f91b4
Bug 1174861 - Remove unnecessary Rooted from Prefable::isEnabled(). r=bholley
...
--HG--
extra : rebase_source : d4c6d8d9a1faabbc690377397e2b1ab3efa1768b
2015-06-15 17:22:00 -04:00
Andrew McCreight
9e8f4b219e
Bug 1152551, part 2 - Fix mode lines in dom/. r=jst
2015-05-03 15:32:37 -04:00
Cameron McCormack
03ca266d1b
Bug 1146235 - Part 2: Expose @@iterator aliases on XrayWrappers. r=peterv
2015-03-28 11:44:44 +11:00
Peter Van der Beken
ebc693bfd7
Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, make Xrays walk the prototype chain when resolving DOM properties. r=bholley.
...
* * *
Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, remove obsolete code. r=bholley.
--HG--
extra : rebase_source : 7a9aa81d3e9d74ed958374942020474147aa4f86
2014-09-15 16:51:40 +02:00
Peter Van der Beken
16b3a0fe7d
Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, add a named properties object type to DOMObjectType and how to get the parent prototype object in DOMIfaceAndProtoJSClass. r=bz, r=bholley.
...
--HG--
extra : rebase_source : fdd72f5027b365554ab0b986de685204c8030c58
2014-09-09 15:19:10 +02:00
Peter Van der Beken
cbd064cb38
Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, make CreateInterfaceObjects take a js::Class instead of a JSClass. r=bz.
...
--HG--
extra : rebase_source : 8b37d59b5f43215c5acef9f8219e631024ece207
2014-08-05 12:46:42 +02:00
Bobby Holley
3ee88775ff
Bug 1041626 - Make NativeProperties naming more consistent. r=bz
2014-07-23 12:36:21 -07:00
Ms2ger
3b4a60ee80
Bug 1034204
- Implement unforgeable methods; r=bz
2014-07-04 15:02:10 +02:00
Eric Faust
f9d65507e2
Bug 1011660 - Remove separate DOMClass struct. (r=bz)
2014-06-18 13:19:19 -07:00
Reuben Morais
978af66e3d
Bug 952486 - Add a CheckPermissions extended attribute to WebIDL. r=bz
2014-05-25 15:31:07 -03:00
Fabrice Desré
2deb233e1d
Bug 952486 - backout for breaking all device and emulator builds (keeping dom reviewer to land the backout...) r=bz
2014-05-26 12:11:52 -07:00
Reuben Morais
1d0db64ab8
Bug 952486 - Add a CheckPermissions extended attribute to WebIDL. r=bz
2014-05-25 15:31:07 -03:00
Jason Orendorff
4740c9dea6
Bug 547140, part 4 - Remove flags argument from resolve hooks. r=Waldo.
2014-04-25 16:11:02 -05:00
Nathan Froyd
9d5430fc7b
Bug 987457 - rename ProtoAndIfaceArray to ProtoAndIfaceCache; r=bz
2014-03-22 13:04:09 -04:00
Boris Zbarsky
5f98263d40
Bug 958667 part 5. Hook up AvailableIn for interface members. r=peterv
2014-02-05 13:38:17 -05:00
Eric Faust
5bd518d6ef
Bug 947487 - Part 1: Convert DOMJSClass::mBase from JSClass to js::Class. (r=bz)
2014-02-01 00:29:50 -08:00
Nathan Froyd
7b9a9d912c
Bug 940573 - make the global's ProtoAndIfaceArray an actual object; r=bz
2013-11-19 14:28:09 -05:00
Dan Gohman
a50084b38d
Bug 910823 - Constify static js::Class/JSClass instances. r=waldo
2013-09-11 05:49:05 -07:00
Boris Zbarsky
5962434202
Bug 908351. Stop over-including DOMJSClass.h, so we don't rebuild as much when PrototypeList.h changes. We do this by factoring out the slot macros into a separate header and including that. r=khuey
2013-08-23 22:42:39 -04:00