Commit Graph

62 Commits

Author SHA1 Message Date
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
Oriol
e0ef4e6c7a Bug 1271135 - "window[''] warns "Empty string passed to getElementById()." r=jst 2016-05-08 11:18:00 +02:00
Boris Zbarsky
59de5a530f Bug 1270349 part 5. Use LegacyUnenumerableNamedProperties instead of passing flags to GetSupportedNames to determine whether named props on DOM proxies should be reflected in ownPropertyKeys. r=peterv 2016-05-09 22:25:40 -04: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
Boris Zbarsky
44609a92c2 Bug 1256419. Null-check our nsDOMWindowList before trying to get its length. r=smaug 2016-03-16 12:40:56 -04:00
Boris Zbarsky
7655d2a3f8 Bug 1245554. Window's named properties object should not claim to have duplicates of a given property name if it has multiple iframes with that name. r=peterv
The web platform test was pretty buggy in a few ways:

1)  It claimed that "bar" should be non-writable and enumerable.  This
explicitly contradicts the spec:
http://heycam.github.io/webidl/#named-properties-object-getownproperty step 3
substep 8 sets [[Writable]] to true, and
https://html.spec.whatwg.org/multipage/browsers.html#named-access-on-the-window-object
explicitly says these properties are unenumerable.

2)  It claimed that "constructor" should be exposed on the named properties
object.  But the named property visibility algorithm obviously returns false
for that property name, so it should not be exposed.
2016-02-09 17:40:45 -05:00
Kyle Huey
91efc5a86c Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Tom Schuster
4d6aaf2f25 Bug 1242214 - Rename JSPropertyDescriptor JS::PropertyDescriptor everywhere else. r=smaug 2016-01-28 11:28:04 +01:00
William Chen
15fa724be4 Bug 717722 - Implement WebKitCSSMatrix. r=baku
--HG--
extra : rebase_source : 225a96f30db5309d7d1032959b0ab8df437c820d
2016-01-20 14:48:01 -08:00
Boris Zbarsky
8ab5390043 Bug 1224007 part 2. Make the various ErrorResult::Report* methods private, so consumers all go through MaybeSetPendingException and rename them to more clearly indicate what they're actually doing. r=peterv 2015-11-20 16:29:41 -05:00
Jeff Walden
97f503201e Bug 1052139 - Make more objects on the global prototype chain have immutable [[Prototype]], when we enable enforcement of this requirement. r=bz
--HG--
extra : rebase_source : bf51eb7770db290b639653cdcbf3586f888e8727
2015-10-08 15:07:57 -07:00
Andrew McCreight
5171450b27 Bug 1197893 - Check the number of arguments for ThrowTypeError() and ThrowRangeError() at compile time. r=peterv 2015-10-05 09:38:14 -07:00
Phil Ringnalda
23f82e924e Back out 2 changesets (bug 1052139) for mochitest-jetpack bustage
Backed out changeset 3dc503961322 (bug 1052139)
Backed out changeset 6f278bc63614 (bug 1052139)
2015-10-02 22:10:24 -07:00
Wes Kocher
f0d829220d Backed out changeset 821791826960 (bug 1197893) for Nexus build failures CLOSED TREE 2015-10-02 16:17:05 -07:00
Andrew McCreight
35cd15b8de Bug 1197893 - Check the number of arguments for ThrowTypeError() and ThrowRangeError() at compile time. r=peterv 2015-10-02 15:09:02 -07:00
Jeff Walden
c29c28268a Bug 1052139 - Make the [[Prototype]] of all objects on the window object's [[Prototype]] chain be immutable, BUT also disable the code that actually respects immutable-prototype handling. When we want to enable this, it'll then be a one-line change. r=bz
--HG--
extra : rebase_source : e8116d4aed87f03f4e0b91b60c6ccf43f040b31a
2014-11-28 02:58:23 -05:00
Andrew McCreight
7a2c6267d4 Backed out changeset 6fa9cdf4002b for breaking the build. 2015-10-02 10:49:28 -07:00
Andrew McCreight
404740a102 Bug 1197893 - Check the number of arguments for ThrowTypeError() and ThrowRangeError() at compile time. r=peterv 2015-10-02 10:42:08 -07:00
Boris Zbarsky
3e2dae5163 Bug 959992. Go back to not treating properties that the named properties object exposes as enumerable. r=peterv 2015-07-01 14:15:22 -04:00
Andrew McCreight
9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Jason Orendorff
2e5f991fe0 Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo.
--HG--
extra : rebase_source : c40a50b3522e8306d68d8114fe576d4f43006d82
2015-02-17 11:58:43 -06:00
Phil Ringnalda
c4745d28b1 Backed out 9 changesets (bug 1142775, bug 1139683, bug 1143810, bug 1142761, bug 1142784, bug 1142794, bug 1144819) for widespread bustage
CLOSED TREE

Backed out changeset 7613fc978d36 (bug 1142794)
Backed out changeset e5f0cb31263d (bug 1142784)
Backed out changeset dcd0af73ac84 (bug 1142784)
Backed out changeset 034f9c8e79ee (bug 1142784)
Backed out changeset ce0ee37e3ca9 (bug 1142775)
Backed out changeset 1519b8f2bbba (bug 1142761)
Backed out changeset 26fd55677841 (bug 1139683)
Backed out changeset 7ebc76a450c3 (bug 1144819)
Backed out changeset 92adb459d519 (bug 1143810)
2015-03-22 09:34:25 -07:00
Jason Orendorff
db04193771 Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo.
--HG--
extra : rebase_source : 92dd18b10e100e7e2537c151a21d4f3be37e1c08
2015-02-17 11:58:43 -06:00
Jason Orendorff
cc85989b86 Bug 1113369, part 5 - [[Delete]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
--HG--
extra : rebase_source : 64b0e44bbb7673d139fab920243566db4844b517
2015-02-04 10:20:04 -06:00
Jason Orendorff
de9e3b99dc Bug 1113369, part 3 - [[DefineOwnProperty]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
Add an ObjectOpResult out-param for DefineProperty functions everywhere. We leave a few js::DefineProperty() convenience functions with no *result out-param. These have strict behavior: that is, they automatically check the result and throw if it is false. In bug 1125624 these strict signatures may end up being called DefinePropertyOrThrow, as that is what the spec calls it.

--HG--
extra : rebase_source : 36439a8fa433c453f63b02c93fceaf0d8b9e9626
2015-01-30 11:37:07 -06:00
Boris Zbarsky
f027a773ea Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. r=waldo 2015-02-26 15:58:59 -05:00
Wes Kocher
f657cd0135 Backed out 4 changesets (bug 1136925) for potentially busting m-e10s-dt on a CLOSED TREE
Backed out changeset 331761aaae22 (bug 1136925)
Backed out changeset 2faa0e91fe23 (bug 1136925)
Backed out changeset a00f2530c911 (bug 1136925)
Backed out changeset d5e658bc0792 (bug 1136925)
2015-02-26 23:17:34 -08:00
Boris Zbarsky
8552abcc45 Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. r=waldo 2015-02-26 15:58:59 -05:00
Olli Pettay
556df42aa4 Bug 1037687, load iframes in shadow DOM, r=wchen
--HG--
extra : rebase_source : 4db8f02b4e35c36100ee96b251ac6b405a70ba7d
2015-02-24 16:41:43 +02:00
Dhi Aurrahman
5b8f79fc23 Bug 1125766 - Throw proper error types for TextEncoder(), TextDecoder() and TextDecoder.decode(). r=bz 2015-02-04 18:46:26 +07:00
Jeff Walden
79c821101e Bug 603201 - Make HasPropertyOnPrototype fallible. r=peterv 2015-01-02 14:02:36 -06:00
Brian Hackett
87281e9299 Bug 1073842 - Remove slots/elements from non-native objects, use a new layout for proxies and typed objects, r=luke,billm,efaust,bz,sfink,jandem. 2014-10-17 16:57:52 -07:00
Jason Orendorff
d35e6d1e8d Bug 1026918, part 1 - Rename BaseProxyHandler::getOwnPropertyNames -> ownPropertyKeys to match the ES6 [[OwnPropertyKeys]] internal method. r=efaust, r=bz.
Also renamed in this patch:

ENUMERATE_IF_DEFINED -> ADD_KEYS_IF_DEFINED
XrayEnumerateAttributesOrMethods -> XrayAttributeOrMethodKeys
XrayEnumerateNativeProperties -> XrayOwnNativePropertyKeys
XrayEnumerateProperties -> XrayOwnPropertyKeys
WrapperOwner::getPropertyNames -> getPropertyKeys

These make sense because JSITER_* flags are involved; the functions in
question are not for finding enumerable properties only.

--HG--
extra : rebase_source : 35fb0fa3c8f3d7bc952409ea8c584e58f3c1d78f
2014-09-26 15:16:36 -05: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
5e2ef30add Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, add resolve and enumerate native property hooks for the Window named properties object. r=bholley.
--HG--
extra : rebase_source : 984777790b3239474888608eb2593516568c279a
2014-09-15 16:51:38 +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
94ec1727fe Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, create the named properties object from the binding code. r=bz.
--HG--
extra : rebase_source : 9147c989b0f6b5791d3e98041029e730036c3892
2014-09-05 22:36:36 +02:00
Peter Van der Beken
5c1754da1b Bug 787070 - Expandos on the xray of DOM prototypes should have effect on xrays of DOM nodes, give the WindowNamedPropertiesHandler a DOMIfaceAndProtoJSClass. r=bz.
--HG--
extra : rebase_source : dbe820c4bc90bf9dbdbf752d0c81bb231f6ffe60
2014-09-05 22:09:50 +02:00
Boris Zbarsky
7dd6d51191 Bug 1017424 part 7. Remove code to handle XPConnect window wrappers from WindowNamedPropertiesHandler and XPCJSRuntime. r=peterv 2014-09-05 14:28:45 -04:00
Boris Zbarsky
b1c1e22da4 Bug 1043690 part 2. Change the codegen for DOM proxies to ignore named props when looking up property descriptors on [[Set]]. r=efaust 2014-08-01 23:37:14 -04:00
Jan de Mooij
44da586636 Bug 1034191 - Make nsDependentJSString users work with Latin1 strings and nursery-allocated strings. r=bz 2014-07-05 17:30:54 +02:00
Eric Faust
04ec29520a Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz) 2014-06-27 04:44:06 -07:00
Carsten "Tomcat" Book
76beb8d59f Backed out changeset 285c853fedfa (bug 1027402) 2014-06-27 14:21:20 +02:00
Eric Faust
62d61ccf3f Bug 1027402 - Part 3: Mark all Proxy Handler methods const. (r=jorendorff, r=bz) 2014-06-27 04:44:06 -07:00
Bobby Holley
699946fc90 Bug 1022016 - Redesign nsDependentJSString API to be less of a footgun. r=gabor 2014-06-10 20:15:56 -07:00
Boris Zbarsky
3285b34804 Bug 1019417. When enumerating the window, make sure to not enumerate frame names that we wouldn't actually expose. r=bholley 2014-06-10 22:50:21 -04:00
Nick Lebedev
c49e263d0f Bug 998002 - Rename nsContentUtils::Get{Subject,Object}Principal to nsContentUtils::{Subject,Object}Principal. r=bholley 2014-05-13 11:58:00 +02:00
Jason Orendorff
6e21c723d2 Bug 547140, part 2 - Remove flags argument from JS_GetPropertyDescriptor and friends. r=Waldo. 2014-04-25 16:11:01 -05:00
Boris Zbarsky
9c3392475d Bug 843840 part 2. Add a way to ask DOM proxies for only their enumerable property names, and use that in the enumerate hook. r=peterv 2014-04-15 22:58:44 -04:00
Boris Zbarsky
e74e09a7f2 Bug 993889 part 6. Remove the "scope" argument of dom::WrapObject methods. r=bholley 2014-04-10 00:58:43 -04:00