Boris Zbarsky
0086cc6b41
Bug 968665. Get rid of MainThreadDictionaryBase and the dictionary bits in DummyBinding, since we now codegen a single version of dictionaries for both mainthread and workers. r=khuey
2014-02-06 21:08:28 -05:00
Boris Zbarsky
8367dee14d
Bug 965094. Reconcile the behavior of the JSObject* argument for Func on interfaces and on interface members. r=bholley
2014-02-05 13:38:18 -05:00
Boris Zbarsky
879fbfa3c5
Bug 958667 part 3. Add helper methods for testing whether things should be exposed in privilegd or certified apps. r=peterv
2014-02-05 13:38:17 -05:00
Bill McCloskey
9fdb4bef1f
Bug 962604 - Add ActorDestroy handling to CPOWs (r=mrbkap)
2014-02-05 08:39:59 -08:00
Eric Faust
0c400f38e9
Bug 924720 - Followup: Remove js::IsProxyClass(clasp), and use clasp->isProxy() instead. (r=jwalden)
2014-02-01 00:30:44 -08:00
Eric Faust
9a5e3c40b9
Bug 947487 - Part 2: Generate and use js::Class structs for DOM proxies. (r=bz)
2014-02-01 00:29:52 -08:00
Boris Zbarsky
1532d7d50b
Bug 945416 part 6. Fix the resolve/enumerate hooks in WebIDL bindings in the [Global] case to handle standard classes. r=peterv
2014-01-29 22:33:33 -08:00
Terrence Cole
c919e2577e
Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 5; r=jonco
...
--HG--
extra : rebase_source : 13c96b6118408cfb001a3191871cbf7ce4d8a2c3
2014-01-17 10:09:38 -08:00
Terrence Cole
10295353cd
Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 4; r=sfink,r=bz
...
--HG--
extra : rebase_source : 8e1ff566f47795cd82e3f4c0a6fa37b88e7847b4
2014-01-17 10:08:51 -08:00
Terrence Cole
f017da90d9
Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 3; r=sfink
...
--HG--
extra : rebase_source : ace7b0fa6ba93acbf0ec8ecaeb68ffa287a33665
2014-01-16 09:48:58 -08:00
Tom Schuster
e64b35e141
Bug 939294 - Change xpidl jsval to handles. r=gabor,bz,khuey,bsmedberg,terrence
2014-01-09 18:39:36 +01:00
Nathan Froyd
865a3925a0
Bug 958262 - reduce space required by JSPropertySpec; r=till,bz,Waldo
2014-01-10 12:11:31 -05:00
Ryan VanderMeulen
edf7ab216b
Backed out changesets d8a6bde76293 and 0b28eaf5bde9 (bug 956806) for suspicion of making OSX 10.6 debug mochitest-bc even more orange prone than usual.
2014-01-08 15:34:24 -05:00
Boris Zbarsky
fd0679ca3f
Bug 956806 part 2. Share generic getters/setters/methods across all bindings. r=peterv
2014-01-08 10:29:15 -05:00
Wes Kocher
a8ec671341
Backed out changeset ef0eeaec74a8 (bug 949183) on the theory that it somehow broke every single b2g test on a CLOSED TREE
2013-12-16 18:27:43 -08:00
Sean Stangl
0a79faf943
Bug 949183 - Fix jsid static constructor explosion. r=Waldo
2013-12-16 14:40:05 -08:00
Bobby Holley
a7395d2ec6
Bug 937317 - Replace all instance of null cx pushing with AutoSystemCaller. r=bz
...
This is an easy bonus chunk of the work to phase out cx pushing in the browser.
2013-12-11 17:51:58 -08:00
Phil Ringnalda
e2e1627d17
Back out 35371620801a:bf2019278b77 (bug 937317) for gaia-ui-test bustage and frequent timeouts in its own test
2013-12-07 11:08:56 -08:00
Bobby Holley
4d56f0a83d
Bug 937317 - Replace all instance of null cx pushing with AutoSystemCaller. r=bz
...
This is an easy bonus chunk of the work to phase out cx pushing in the browser.
2013-12-06 12:01:42 -08:00
Carsten "Tomcat" Book
f0d2b953c5
Backed out changeset 374e44c835a8 (bug 937317) WinXP Build Bustage on a CLOSED TREE
2013-12-06 08:41:42 +01:00
Bobby Holley
c8308277c1
Bug 937317 - Replace all instance of null cx pushing with AutoSystemCaller. r=bz
...
This is an easy bonus chunk of the work to phase out cx pushing in the browser.
2013-12-05 21:34:17 -08:00
Nikhil Marathe
ccf49f860d
Bug 942256 - ThreadSafeCheckIsChrome() checks UsesSystemPrincipal() for Workers. r=bz
...
--HG--
extra : rebase_source : 756edcea9860c22b06820ef505f51e7741cd5442
2013-11-22 14:08:38 -08:00
Boris Zbarsky
4c293cf8e4
Bug 941437 part 2. Remove the unused cx argument from UNWRAP_OBJECT and UNWRAP_WORKER_OBJECT. r=smaug
2013-11-21 07:51:16 -05:00
Boris Zbarsky
62cf6930a1
Bug 941437 part 1. Remove the unused cx argument from dom::UnwrapObject. r=smaug
2013-11-21 07:51:15 -05:00
Peter Van der Beken
fe4b3c69aa
Bug 938131 - Simplify dom::ErrorResult::ReportJSExceptionFromJSImplementation. r=bz.
...
--HG--
extra : rebase_source : db7b8edd1aec3aff7240b1323c00546d2e332112
2013-10-18 13:22:09 +02:00
Nathan Froyd
bf56be08aa
Bug 940573 - make the global's ProtoAndIfaceArray an actual object; r=bz
2013-11-19 14:28:09 -05:00
Kyle Huey
7b4374f293
Bug 940071: Free the proto and iface cache for generated globals. r=bz
2013-11-19 14:05:42 +08:00
Tom Schuster
f311064c6e
Bug 933834 - Rename and handlify JS_ValueToString. r=terrence,bz
2013-11-16 13:31:36 +01:00
Ms2ger
6b38d3ca3d
Backout changesets ded0d64f6786:03f041d03f24 and 30cbd1abde1a (bug 935696, bug 933834 and bug 939194) for build bustage.
2013-11-17 16:39:25 +01:00
Tom Schuster
dd485f9336
Bug 933834 - Rename and handlify JS_ValueToString. r=terrence,bz
2013-11-16 13:31:36 +01:00
Kyle Huey
2789485d96
Bug 928312: Convert the worker global object and all remaining EventTargets to new DOM bindings. r=bent,peterv,smaug
2013-11-05 22:16:26 +08:00
Peter Van der Beken
255e6fe560
Bug 932322 - Make Window's WebIDL properties be own properties of window. r=bz.
...
--HG--
extra : rebase_source : 5595267a420f81f20e5e227712886c9329bec473
2013-10-08 18:18:40 +02:00
Ryan VanderMeulen
78649cfa0f
Backed out 3 changesets (bug 932309, bug 932322) for Linux mochitest-bc timeouts on a CLOSED TREE.
...
Backed out changeset aea34e69d171 (bug 932322)
Backed out changeset 2b99a0f6ff1b (bug 932309)
Backed out changeset 0e3bcb78784e (bug 932309)
2013-11-04 14:31:21 -05:00
Peter Van der Beken
96bb7d1a68
Bug 932322 - Make Window's WebIDL properties be own properties of window. r=bz.
...
--HG--
extra : rebase_source : b8ce4fedf7fc46b14a1d01663945d1b0e22bdcdd
2013-10-08 18:18:40 +02:00
Brian Hackett
fb4e1bc872
Bug 930048 - Remove need to read objects directly when optimizing singleton accesses, r=jandem.
2013-10-29 16:10:59 -06:00
Birunthan Mohanathas
7a599eb1ae
Bug 784739 - Switch from NULL to nullptr in dom/ (1/2); r=ehsan
2013-10-28 10:04:12 -04:00
Tom Schuster
306cb13efc
Bug 930782 - Handlify JS_WrapValue. r=terrence
2013-10-26 18:19:05 +02:00
Bobby Holley
5ea4684195
Bug 928476 - Add telemetry to measure cross-global adopts. r=mrbkap,nfroyd
2013-10-23 14:02:42 +02:00
Steve Fink
5a483a53e6
Bug 925916 - Revert computThis() to thisv(). r=bz
...
--HG--
extra : rebase_source : 9de03d5a7c8867f92984eee80a185ca3f3c0f764
2013-10-21 10:52:22 -07:00
Steve Fink
123565e1c6
Bug 925916 - Random minor code cleanups, r=smaug
2013-10-15 15:34:13 -07:00
Steve Fink
76e5f386d2
Bug 925916 - Add some handles to dom/bindings, r=bz
...
--HG--
extra : rebase_source : 2443d2b988dea432c4961e8b042b0288e1dc7016
2013-10-11 22:02:39 -07:00
Bobby Holley
77b2db9b9b
Bug 922009 - MOZ_CRASH when trying to transplant objects with SCSWs. r=mrbkap
2013-10-17 10:00:02 +02:00
Tom Schuster
a513788fdb
Bug 8844105 - Handlify JS_WrapObject. r=terrence
2013-10-15 20:02:23 -04:00
Boris Zbarsky
00e9ca7625
Bug 923010. When rethrowing exceptions from JS-implemented components to content script, make sure to give them a useful filename and line number, pointing to the content script location that triggered the exception. r=peterv
2013-10-03 08:34:47 -04:00
Andrew McCreight
e6a955ab27
Bug 920840 - Crash when JS-implemented WebIDL's init method returns a value other than undefined. r=bz
2013-09-26 16:46:42 -07:00
Boris Zbarsky
51daf6d4ad
Bug 921553. Fix some binding rooting hazards that have popped up. r=peterv
2013-09-30 10:29:10 -04:00
Ryan VanderMeulen
66d481fff9
Backed out changeset 6d0b41d53c32 (bug 920840) for B2G mochitest-3 timeouts.
...
CLOSED TREE
2013-09-27 18:00:59 -04:00
Andrew McCreight
232783c6e4
Bug 920840 - Crash when JS-implemented WebIDL's init method returns a value other than undefined. r=bz
2013-09-26 16:46:42 -07:00
Andy Wingo
22c73af975
Bug 920433 - Improve API support for self-hosted functions. r=till, r=bz
2013-09-26 10:11:38 -04:00
Boris Zbarsky
191073b8c9
Bug 919603 part 2. Change this-handling in codegen to only do the special global object stuff on interfaces where it might matter. r=peterv
2013-09-25 14:38:30 -04:00
Boris Zbarsky
1f4ea61007
Bug 920125. getOwnPropertyDescriptor on Xrays for DOM interface and prototype objects should actually work. r=peterv
2013-09-25 14:38:30 -04:00
Boris Zbarsky
a041761e19
Bug 905493. Fix setting document.location via an Xray to not enter the content compartment. r=peterv
2013-09-25 14:38:29 -04:00
Ryan VanderMeulen
72c8f599cd
Backed out 5 changesets (bug 905493, bug 920125, bug 919603) for mochitest orange on a CLOSED TREE.
...
Backed out changeset ccef656b2973 (bug 919603)
Backed out changeset 4b29ce0b2fff (bug 919603)
Backed out changeset b0a051ec55b7 (bug 919603)
Backed out changeset baa9a774aad1 (bug 920125)
Backed out changeset e03276bf4eaa (bug 905493)
2013-09-25 18:22:33 -04:00
Boris Zbarsky
6201a817fb
Bug 919603 part 2. Change this-handling in codegen to only do the special global object stuff on interfaces where it might matter. r=peterv
2013-09-25 14:38:30 -04:00
Boris Zbarsky
9aecf1e30c
Bug 920125. getOwnPropertyDescriptor on Xrays for DOM interface and prototype objects should actually work. r=peterv
2013-09-25 14:38:30 -04:00
Boris Zbarsky
9ed67107a4
Bug 905493. Fix setting document.location via an Xray to not enter the content compartment. r=peterv
2013-09-25 14:38:29 -04:00
Jon Coppeard
38b602931b
Bug 917798 - Handlify JS exception APIs r=terrence r=bz
2013-09-19 08:54:01 +01:00
Terrence Cole
b25c74c014
Bug 916993 - Handlify the public JSString APIs; r=bz,jonco
...
--HG--
extra : rebase_source : 35c5d7832d794ce37be622db3140309d2605c212
2013-09-16 18:33:40 -07:00
Dan Gohman
8b7074b6dc
Bug 910823 - Constify static js::Class/JSClass instances. r=waldo
2013-09-11 05:49:05 -07:00
Olli Pettay
f805ec81b0
Bug 910910 - Enable Event ctors in workers, r=khuey
...
--HG--
extra : rebase_source : 983d01d13aa66a8499350a4960b5913b22c9783a
2013-09-10 21:27:32 +03:00
Nikhil Marathe
f10d854d1c
Bug 901291 - Get WebIDL callbacks working on Workers. r=khuey
2013-09-09 14:58:29 -07:00
Kyle Huey
27e346e22d
Bug 911258: Part 5 - Use the unified exception handling mechanism on workers. r=bz
2013-09-08 20:29:21 -07:00
Peter Van der Beken
dcf5712030
Bug 905392 - Need way to throw web-console-visible exception-message from JS-implemented webidl object. r=bz.
2013-09-03 14:01:53 +02:00
Boris Zbarsky
a912d1fc13
Bug 908576 part 3. Get rid of PrototypeIDMap structs. r=smaug
2013-08-23 22:42:41 -04:00
Kyle Huey
de0ee30e74
Bug 903772: Part 3 - Refactor GlobalObject. r=peterv
2013-08-22 22:17:08 -07:00
Ms2ger
8bfa279bb1
Merge m-c to inbound
2013-08-22 10:38:48 +02:00
Ms2ger
ce99c00e31
Bug 903778 - Move dom::Date into its own files; r=khuey
2013-08-22 08:30:38 +02:00
Nicholas Nethercote
42ccf38dcd
Bug 905017 (part 1) - Minimize inclusions of JS engine headers in .h and .idl files. r=billm.
...
--HG--
extra : rebase_source : 984c61ab12f46be0509b1ce0d458d9a6e5841c64
2013-08-17 15:50:18 -07:00
Ms2ger
df8525f77d
Bug 901323 - Don't include nsContentUtils.h unnecessarily; r=jlebar
2013-08-14 08:56:21 +02:00
Jon Coppeard
11678aa48c
Bug 903352 - Handlify remaining PropertyDescriptor APIs r=terrence r=bholley r=smaug
2013-08-12 12:09:14 +01:00
Peter Van der Beken
3256529063
Bug 895758. Make the global scope polluter a proxy. r=bzbarsky
2013-07-09 10:45:13 -04:00
Terrence Cole
61b15c2fbb
Bug 862115 - Use Rooted<JSPropertyDescriptor> in favor of JSPropertyDescriptor::AutoRooter r=terrence r=smaug r=bholley
2013-04-30 10:29:40 -07:00
Nicholas Nethercote
b756f6b258
Bug 898914 (part 1) - Remove JSBool.
...
--HG--
extra : rebase_source : 2d202e0e5005a7f54724b1540481c15cde3ad52e
2013-08-08 15:53:04 -07:00
Boris Zbarsky
3c09e9975f
Bug 897913 part 2. Allow touching interface objects via an Xray even if the page they're in can't touch them. r=bholley,smaug
2013-08-07 17:40:00 -04:00
Nicholas Nethercote
ba723f1034
Bug 901750 - Change return type of |JSNative| from |JSBool| to |bool|. code=nnethercote,jandem. r=luke,bz.
...
--HG--
extra : rebase_source : 5b3d7cc339af6d93bde078322e25c6e740d1b617
2013-08-02 00:41:57 -07:00
Bill McCloskey
4c6e8822a8
Bug 899804 - Make CPOWs handle instanceof with WebIDL interfaces (r=bz,dvander)
2013-08-01 16:45:17 -07:00
Tom Schuster
0b021a6fa2
Bug 884410 - Handlify JS_GetPrototype. r=terrence
2013-07-31 12:20:33 -04:00
Ehsan Akhgari
5ee21d6d3f
Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
...
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:
# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.cc" \
-o -iname "*.mm" \) | \
xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
modules/libmar/src/mar_private.h \
modules/libmar/src/mar.h
# assert_replacer.py
#!/usr/bin/python
import sys
import re
pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")
def replaceInPlace(fname):
print fname
f = open(fname, "rw+")
lines = f.readlines()
for i in range(0, len(lines)):
while True:
index = re.search(pattern, lines[i])
if index != None:
index = index.start()
lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
for j in range(i + 1, len(lines)):
if lines[j].find(" ", index) == index:
lines[j] = lines[j][0:index] + lines[j][index+4:]
else:
break
else:
break
f.seek(0, 0)
f.truncate()
f.write("".join(lines))
f.close()
argc = len(sys.argv)
for i in range(1, argc):
replaceInPlace(sys.argv[i])
--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Jon Coppeard
8278efd42a
Bug 897484 - GC: Convert JS_GetProperty APIs to take MutableHandleValue r=terrence r=bholley r=smaug
2013-07-26 10:00:38 +01:00
Carsten "Tomcat" Book
8c89deb65b
Backed out changeset ae8d72538dee (bug 897484) for b2g bustage
2013-07-26 12:34:25 +02:00
Jon Coppeard
fc9b509d4f
Bug 897484 - GC: Convert JS_GetProperty APIs to take MutableHandleValue r=terrence r=bholley r=smaug
2013-07-26 10:00:38 +01:00
Jon Coppeard
c561caee58
Bug 888338 - 6 - more browser post barriers r=mccr8
2013-07-23 10:58:27 +01:00
Nicholas Nethercote
40833186f3
Bug 887558 (part 1) - Introduce ProxyObject and some sub-classes. r=jorendorff.
...
--HG--
extra : rebase_source : 33ed2aff35acbe4de8891a9fb34c60e7a314d9c8
2013-06-20 21:27:28 -07:00
Kyle Huey
49b422d01c
Bug 885866: Separate deferred finalization from XPConnect so we can use it off the main thread. r=mccr8, peterv, bsmedberg, jorendorff
2013-07-09 07:28:15 -07:00
Ehsan Akhgari
8b46075683
Bug 889016 - Part 1: Add an API to report a not-enough-arguments error in Web IDL bindings; r=bzbarsky
2013-07-04 09:24:49 -04:00
Ms2ger
2dcf517a55
Bug 888579 - Remove some code that handled WN Nodes; r=bholley
2013-07-01 09:14:36 +02:00
Ms2ger
ff63d2149b
Bug 884268 - Part b: Move nsContentUtils::PreserveWrapper to nsWrapperCache; r=smaug
2013-06-23 09:15:42 +02:00
Jon Coppeard
4b40ce1453
Bug 885310 - 1 Rename JSHandleFoo in the browser r=bz
2013-06-21 14:12:46 +01:00
Terrence Cole
0ae404a1ee
Bug 884410 - Handlify the JS_TransplantObject interfaces; r=jonco
...
--HG--
extra : rebase_source : f1c2adc7380e5806ce6b4fce5bb41f9400b9e1b1
2013-06-13 17:09:55 -07:00
Jon Coppeard
c56ed4c7b6
Bug 884371 - Remove JSMutableHandleXXX from the browser r=bz
2013-06-19 11:32:27 +01:00
Boris Zbarsky
8a5f1751d4
Bug 883358 part 2. Use the new information in bindings error reporting. r=smaug
2013-06-17 16:31:13 -04:00
Ryan VanderMeulen
abc39cc023
Backed out 3 changesets (bug 883358) for Android mochitest-3 failures on a CLOSED TREE.
...
Backed out changeset 84b35dd1879d (bug 883358)
Backed out changeset b5e6522257cb (bug 883358)
Backed out changeset 757a3f2e5de6 (bug 883358)
2013-06-17 19:51:12 -04:00
Boris Zbarsky
0e37bdf3dc
Fix test fallout from bug 883358 so we can stop having a CLOSED TREE. No review.
2013-06-17 18:24:04 -04:00
Boris Zbarsky
2e6611eca0
Bug 883358 part 2. Use the new information in bindings error reporting. r=smaug
2013-06-17 16:31:13 -04:00
Boris Zbarsky
fc06188f5d
Bug 882653 part 2. Make the "not an object" error reporting better in WebIDL bindings. r=smaug
...
This also adds infrastructure to generally indicate to the
js-to-native conversion exactly what is being converted.
2013-06-17 13:07:03 -04:00
Boris Zbarsky
c6981c480d
Bug 882653 part 1. Improve error reporting for bogus this objects in WebIDL bindings. r=smaug
2013-06-17 13:07:03 -04:00
James Kitchener
411a37e6e9
Bug 796850 - Implement Code Generation for Bytestring in WebIDL bindings r=bz
2013-06-13 01:18:35 -04:00
Andrea Marchesini
66dc1ae9ec
Bug 856410 - Implement futures - Part 0: ErrorResult::StealJSException. r=bz
2013-06-11 21:41:21 -04:00
Boris Zbarsky
6a7b47964f
Bug 877281 part 6. Replace ${jsvalPtr} with a MutableHandle ${jsvalHandle}. r=peterv
...
It's a little unfortunate that we need both ${jsvalHandle} and
${jsvalRef}, but the only other option is to consistently have a
MutableHandle in this code. If the thing we have to work with is a
Rooted, that means doing JS::MutableHandle<JS::Value>(&myRooted) as
the thing to substitute for ${jsvalHandle}. Just using "&myRooted"
doesn't work, because things like "&myRooted.set()" or
"&myRooted.address()" fail, even if parenthesized as
"(&myRooted).set()", because &myRooted is actually a Rooted*, not a
MutableHandle.
We could go the JS::MutableHandle<JS::Value>(&myRooted) route if
desired; it would primarily uglify dictionary and sequence to-js
conversions. With the setup in this patch, ideally it looks pretty
idiomatic except for the use of .set() instead of operator= on Rooted.
2013-06-07 22:45:46 -04:00
Bobby Holley
868b75c7e1
Bug 877261 - Stop using XPCCallContext for XPCConvert. r=Ms2ger
2013-06-04 21:11:19 -07:00
Ms2ger
1e339d398b
Bug 876602 - Move JS-implemented webidl construction code into C++; r=bz
2013-06-01 08:56:23 +02:00
Ms2ger
c1c1a92c3b
Bug 876604 - Outparamdel UnwrapDOMObjectToISupports; r=bz
2013-06-01 08:56:02 +02:00
Peter Van der Beken
44c790a6fb
Bug 874321 - Fix setting of expandos on Xrays for DOM bindings with named properties. r=bz.
...
--HG--
extra : rebase_source : 697545417d27696de05c0f22987e4cb187d226cd
2013-05-29 11:38:57 +02:00
Kyle Huey
3cc4ccd2f5
Bug 876555: Avoid including xpcprivate.h in most generated dom binding code. r=bz
2013-05-30 11:15:31 +08:00
Boris Zbarsky
e1d7ebf663
Bug 876805. Fix unsafe reference gc hazards in dom/ code. r=smaug
2013-05-29 16:16:04 -04:00
Jon Coppeard
6fec5f0632
Bug 876639 - Address unsafe references from JS_ParseJSON() - Fix browser r=smaug
2013-05-29 09:29:39 +01:00
Ed Morley
ebb42781a7
Backed out changeset 7acdb79e4d71 (bug 876639)
2013-05-29 12:09:10 +01:00
Jon Coppeard
a5f7aee9a5
Bug 876639 - Address unsafe references from JS_ParseJSON() - Fix browser r=smaug
2013-05-29 09:29:39 +01:00
Boris Zbarsky
0307d91885
Bug 865951. If the return value of a JS-implemented method or attribute is a JS-implemented interface and the returned object is not a DOM object, automatically wrap it up in an instance of that interface. r=mccr8
...
This does not invoke __init on the chrome object, since there are no
arguments to do it with anyway. It also doesn't invoke init(), so
don't do this in cases in which the chrome-side object will need to
know its window.
2013-05-20 13:47:08 -04:00
Nathan Froyd
eba34f22d7
Bug 858131 - rewrite FloatingPoint.h to be C++-only instead of C-compatible C++; r+original-author=Waldo
2013-05-01 16:55:13 -04:00
Boris Zbarsky
299d72713e
Bug 867863. Be a little more careful in GlobalObject initialization. r=peterv
2013-05-08 15:50:58 -04:00
Boris Zbarsky
4f17ea0254
Bug 869311. More rooting in dom/bindings and content/base. r=smaug
2013-05-07 22:34:56 -04:00
Bobby Holley
609401db48
Bug 868637 - Simplify DOM Bindings JSON parsing. r=bz
...
At this point we could really just hoist the JSAPI call, but it's just
cumbersome enough with all the casts that I don't really want to stick
it in the codegen.
2013-05-07 14:18:03 -07:00
Sankha Narayan Guria
7f0c4baace
Bug 867414 - Rename SafeAutoJSContext to AutoSafeJSContext. r=bholley
2013-05-06 09:04:17 -04:00
Ms2ger
634a0652fb
Bug 868411 - Handlify js::GetObjectProto; r=bz
2013-05-05 09:03:14 +02:00
Boris Zbarsky
fba1502aa7
Bug 865969 part 6. Fix rooting hazards in BindingUtils.cpp. r=smaug
2013-05-03 19:29:08 -04:00
Boris Zbarsky
0c03ae1518
Bug 742206 part 1. Introduce a simple mozilla::dom::Date for use in WebIDL bindings. r=smaug
2013-05-02 14:38:19 -04:00
Boris Zbarsky
d0cb8316ab
Bug 860841. Hook up the proto chain of a WebIDL interface object to the interface object of its nearest ancestor interface that has one, as if these were ES6 classes. r=peterv
2013-05-02 14:38:19 -04:00
Boris Zbarsky
583e53379d
Bug 861022 part 2. Root the global object in WebIDL prototype and interface object setup. r=peterv,terrence
2013-05-01 23:44:12 -04:00
Boris Zbarsky
e418358f16
Bug 861022 part 1. Root the non-globals in WebIDL prototype and interface object setup. r=peterv,terrence
2013-05-01 23:44:11 -04:00
Jim Blandy
7b5a4624a3
Bug 862531: Replace BaseProxyHandler::obj_toString with className. r=jorendorff
2013-04-30 14:44:50 -07:00
Boris Zbarsky
15316b1400
Bug 865961. Root the scope argument of wrap-the-xpconnect-object helpers in WebIDL bindings. r=ms2ger
2013-04-29 17:33:42 -04:00
Boris Zbarsky
e9fca1d653
Bug 865964. Remove dead WrapCallbackInterface code. r=smaug
2013-04-26 13:41:21 -04:00
Peter Van der Beken
7c90dee12e
Bug 862092 - "Assertion failure: target->isNative() == obj->isNative()" adopting a <select>. r=bz.
...
--HG--
extra : rebase_source : 3eef5382c32927ac321db47003a974768cbdaf6e
2013-04-16 19:02:57 +02:00
Bobby Holley
629d0d4121
Bug 860438 - Straightforward cases. r=gabor
2013-04-18 11:36:03 -04:00
Ryan VanderMeulen
3b5b1e9f13
Backed out changeset 409285b3f69c (bug 862092) for mochitest-2 failures on a CLOSED TREE.
2013-04-17 11:48:34 -04:00
Peter Van der Beken
d80727e491
Bug 862092 - "Assertion failure: target->isNative() == obj->isNative()" adopting a <select>. r=bz.
...
--HG--
extra : rebase_source : 1905aa3aa956a599e9ce1de8866f7dc58feb73be
2013-04-16 19:02:57 +02:00
Jon Coppeard
1f1c0e6af9
Bug 861281 - GC: Root the wrap object API r=terrence r=bholley
...
--HG--
extra : rebase_source : 1d3ed88299ad8e9ad6812fb41aa48f03cc7aabae
2013-04-15 18:32:55 +01:00
Joshua Cranmer
45e3447406
Bug 856108 - Port static analyses to clang, part 2b: use MOZ_STACK_CLASS in dom. r=Ms2ger
2013-04-11 22:20:18 -05:00
Jacek Szpot
514f40e52a
Bug 854503 - Rename JS unwrapping functions. r=bholley
2013-04-11 11:50:18 -07:00
Boris Zbarsky
d5740592e1
Bug 860473 part 3. Root ErrorResult::ThrowJSException. r=evilpie,smaug
2013-04-11 14:31:06 -04:00
Boris Zbarsky
4cf80a8cde
Bug 860473 part 1. Root WebIDL dictionary ParseJSON. r=evilpie, smaug
2013-04-11 14:31:05 -04:00
Boris Zbarsky
081e372b68
Bug 856428. Don't try to root an uninitialized value. r=peterv
2013-04-08 17:05:22 -04:00
Boris Zbarsky
ecc404d587
Bug 688691. Warn when LenientThis actually causes us to not throw. r=ms2ger
2013-04-08 17:04:21 -04:00
Ryan VanderMeulen
24a4c17eff
Backed out changeset a85d21e394c0 (bug 854503) for bustage.
2013-04-06 14:37:33 -04:00
Jacek Szpot
8ce12e971c
Bug 854503 - Rename JS unwrapping functions. r=bholley
2013-04-04 12:14:32 +02:00
Boris Zbarsky
0d9204981d
Bug 855700. Make returning an nsIVariant from a WebIDL interface work. r=smaug
2013-04-03 22:22:16 -04:00
Jose Cortes
21f2e0d958
Bug 842186 - Replace use of jsval with JS::Value in h and cpp files in the dom/bindings/ dom/plugins/ dom/src/ dom/activities/ directories. r=jwalden
...
--HG--
extra : rebase_source : 2757a7ab265153fa4c769a69a4947b9258e4413e
2013-04-02 16:05:37 -07:00
Boris Zbarsky
b105f502e9
Bug 855582 part 2. Make the bindings' various spec arrays const, and make the jitinfo structs static. r=khuey
2013-04-02 20:20:38 -04:00
Bobby Holley
e231772ba1
Bug 854480 - Remove old-style unwrapping from dom/bindings bindings. r=bz
2013-04-01 15:17:50 -07:00
Tom Schuster
045cb0fba7
Bug 828462 - Root Proxy/Wrapper in the browser. r=terrence,bz
2013-03-21 23:23:48 +01:00
Boris Zbarsky
d6b06cd620
Bug 843627 part 3. Enable WebIDL bindings for <embed> and <applet>. r=peterv
2013-03-17 10:42:05 -04:00
Boris Zbarsky
75f321cec4
Bug 827158 part 11. Move HTMLObjectElement to Web IDL bindings. r=peterv
2013-01-06 18:55:14 -05:00
Peter Van der Beken
74a5cb5265
Fix for bug 842799 (|Document.prototype instanceof Node| inside <script> returns false). r=bz.
2013-02-22 10:25:24 +01:00
Peter Van der Beken
c485f6afee
Fix for bug 825628 (Implement NamedConstructor) - add codegen support for NamedConstructor. r=bz.
...
--HG--
extra : rebase_source : 8393995dca6f65cb49512874c1916ee745436638
2013-01-22 11:51:15 +01:00
Boris Zbarsky
5cee1946fc
Bug 838691 part 1. Add support in Prefable for calling a function to determine whether a property should be exposed in a WebIDL binding. r=peterv
2013-02-19 11:54:40 -05:00
Boris Zbarsky
25deb6d78c
Bug 839088 part 1. Add a way to throw a JS::Value on an ErrorResult. r=peterv
2013-02-19 11:54:40 -05:00
Masatoshi Kimura
1224fb0c27
Bug 841802 - Part 1: Add ErrorResult::ClearMessage(). r=bz
2013-02-19 22:30:28 +09:00
Peter Van der Beken
d07b3d8eef
Fix for bug 838269 (Support cross-global |... instanceof DOMInterface|). r=bz.
...
--HG--
extra : rebase_source : e5ad1d7da8029394e3ecb38909eca406a675dbe9
2013-01-08 19:05:36 +01:00
Peter Van der Beken
e07d1dcdb8
Fix for bug 838228 (toString on an Xray for an interface object should stringify like Function.prototype.toString). r=bz.
...
--HG--
rename : content/html/content/test/test_map_attributes_reflection.html => content/html/content/test/test_ol_attributes_reflection.html
extra : rebase_source : 9bd7efb927e4eac96569ed629ee230dbf555fb63
2013-02-01 15:33:58 +01:00
Boris Zbarsky
27b20c21af
Bug 824589. Convert XULElement to WebIDL. r=peterv
...
The assertions in nsINode and nsWrapperCache are to eagerly catch
failures to override those methods.
The classinfo change for XULTreeBuilder is needed because one of those
is returned via an nsIXULTemplateBuilder attribute on XULElement.
Alternately, I could mark it notflattened in Bindings.conf, but Enn
said he prefers this anyway.
The change to the QI impl in BindingUtils is needed because when
XPConnect converts an IID from C++ to JS it makes is an nsJSID, not an
nsJSIID. We've run into this before, sadly.
I removed "id" from nsIDOMXULElement because it's already on Element.
I suppose I could have left it there, but this seems cleaner.
The nsJSIID::HasInstance changes are needed to support XBL-implemented
interfaces. Sadly, this does mean that if the underlying object QIs
to something but we didn't put those props on the WebIDL we'll end up
testing true for instanceof but not exposing the props. I don't see
an obviously better way. We should work on killing off uses of
"instanceof someinterface".
The browser.js change is needed to avoid throwing exceptions during
browser-chrome tests that are now getting reported because our
swapFrameLoaders is no longer an XPConnect method.
2013-01-29 12:51:55 -05:00
Boris Zbarsky
66e49b02aa
Back out bug 824589 (rev 22695cac3896) on suspicion of Ts regression
2013-01-29 17:18:06 -05:00
Boris Zbarsky
8231be64a0
Bug 824589. Convert XULElement to WebIDL. r=peterv
...
The assertions in nsINode and nsWrapperCache are to eagerly catch
failures to override those methods.
The classinfo change for XULTreeBuilder is needed because one of those
is returned via an nsIXULTemplateBuilder attribute on XULElement.
Alternately, I could mark it notflattened in Bindings.conf, but Enn
said he prefers this anyway.
The change to the QI impl in BindingUtils is needed because when
XPConnect converts an IID from C++ to JS it makes is an nsJSID, not an
nsJSIID. We've run into this before, sadly.
I removed "id" from nsIDOMXULElement because it's already on Element.
I suppose I could have left it there, but this seems cleaner.
The nsJSIID::HasInstance changes are needed to support XBL-implemented
interfaces. Sadly, this does mean that if the underlying object QIs
to something but we didn't put those props on the WebIDL we'll end up
testing true for instanceof but not exposing the props. I don't see
an obviously better way. We should work on killing off uses of
"instanceof someinterface".
The browser.js change is needed to avoid throwing exceptions during
browser-chrome tests that are now getting reported because our
swapFrameLoaders is no longer an XPConnect method.
2013-01-29 12:51:55 -05:00
Peter Van der Beken
b9d2ae906f
Fix for bug 816088 (webIDL bindings try to extract nsISupports from the global object in static properties in workers). r=bz.
...
--HG--
extra : rebase_source : 5668d9e01bff0fe7831d98018428856e5940a620
2012-12-03 17:07:49 +01:00
Ed Morley
bc0702d0d7
Backout f3c145bd1dd2 & 5075690572a9 for OS X startup failures
2013-01-28 11:08:21 +00:00
Peter Van der Beken
b46afdef94
Fix for bug 816088 (webIDL bindings try to extract nsISupports from the global object in static properties in workers). r=bz.
...
--HG--
extra : rebase_source : 68e5630591f6209e2af9c5cd2321fed8edd3de24
2012-12-03 17:07:49 +01:00
Peter Van der Beken
f2a13d3e89
Fix for bug 827546 (|non editable element|.QueryInterface(Components.interfaces.nsIDOMNSEditableElement) does not throw anymore) - throw on QI failure. r=bz.
2013-01-14 11:29:49 +01:00
Andrew McCreight
6f2b4df7a3
Bug 777385 - Support (some) Paris bindings objects as weak map keys. r=peterv
...
This adds support for many kinds of Paris bindings objects as weak map keys.
This patch supports nsISupports objects as well as non-cycle-collected
non-nsISupports objects. What is needed for support is to preserve any wrapper,
if the object is wrapper cached. In other cases, we don't need to do anything.
2012-11-09 10:59:02 -08:00
Jeff Walden
d9889b3184
Bug 826447 - Change all the proxy API signatures to take unsigned flags, rather than bool set, so that it's easier to find all tests of JSRESOLVE_ASSIGNING. r=bz
...
--HG--
extra : rebase_source : 3b88b411965087984d7973a90f8fa1b06457a6ce
2013-01-03 15:31:36 -06:00
Nicholas Nethercote
bd7d66d93a
Bug 824883 - Fix three warnings in dom/ code. r=bz.
...
--HG--
extra : rebase_source : 3763606a23b66493596787ca33cec32618efa2f1
2012-12-26 20:24:59 -08:00
Peter Van der Beken
2e848596ed
Fix for bug 820577 (Support reparenting for new DOM binding objects). r=bholley/bz.
...
--HG--
extra : rebase_source : 66dad56b8f543790ffa7e595ccd684c4673403df
2012-09-26 16:17:46 +02:00
Jeff Walden
7146c23e80
Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger
2012-12-14 18:58:45 -05:00
Boris Zbarsky
15e523cee0
Bug 818379. Make sure interface objects have a 'length' property even if they're not real function objects. r=peterv
2012-12-14 14:10:49 -05:00
Boris Zbarsky
d1c8d3b88e
Bug 815803. Now that JSSLOT_PROXY_PRIVATE == 0, simplify binding code that had to deal with different slot indices on proxy and non-proxy objects. r=peterv
2012-12-06 15:21:19 -05:00
Boris Zbarsky
b3142f98f8
Bug 816376. Create vanilla objects for the interface object of callback interfaces. r=peterv
2012-12-06 15:21:18 -05:00
Peter Van der Beken
1830a6a0b7
Fix for bug 814821 (Dromaeo dom-traverse regression from bug 812333) - part 1: use qsObjectHelper instead of xpcObjectHelper in HandleNewBindingWrappingFailure. r=bz.
...
--HG--
extra : rebase_source : 32e20aec9cf2ea8a6e8d878ce758f792e6b8a67f
2012-11-27 10:20:04 +01:00
Ehsan Akhgari
7d0b7e0454
Backed out 6 changesets (bug 814821, bug 815158, bug 814195) for test failures
...
Backed out changeset 0c2011091748 (bug 815158)
Backed out changeset 9d70b4460508 (bug 814195)
Backed out changeset bf8746658a72 (bug 814821)
Backed out changeset e73366b088d7 (bug 814821)
Backed out changeset 49fc6d535c41 (bug 814821)
Backed out changeset 987aea26a43a (bug 814821)
2012-11-27 16:30:39 -05:00
Peter Van der Beken
9b1c163cdc
Fix for bug 814821 (Dromaeo dom-traverse regression from bug 812333) - part 1: use qsObjectHelper instead of xpcObjectHelper in HandleNewBindingWrappingFailure. r=bz.
...
--HG--
extra : rebase_source : 748e0343d37e2b9a25b5b6644bebff428474310c
2012-11-27 10:20:04 +01:00
Peter Van der Beken
a428926b2d
Fix for bug 812333 (Replace Node quickstubs with new binding methods) - part 2: install Node's binding methods on the XPConnect proto. r=bz.
2012-11-22 12:09:41 +01:00
Bobby Holley
46b9d205df
Bug 800915 - Remove the cx parameter and simplify various APIs. r=sfink,bz
...
If callers want to throw, it's now their responsibility.
2012-11-14 09:56:26 -08:00
Masatoshi Kimura
32a0cfd0f7
Bug 801487 - Implement ErrorResult::ThrowTypeError. r=bz
2012-11-06 18:23:14 -05:00
Boris Zbarsky
e0cb69bbd9
Bug 807548. Enumerating an Xray should not see the 'constructor' property on DOM prototypes unless we're told to include non-enumerable properties. r=peterv
2012-11-05 11:58:03 -05:00
Peter Van der Beken
9e18022b7d
Fix for bug 763643 (Implement static operations and attributes for WebIDL). r=bz.
...
--HG--
extra : rebase_source : d9dd5450af5d2b1f3e7e3a738ec2efdc7f7053da
2012-10-19 09:34:28 +02:00
Peter Van der Beken
704bdbee45
Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript) - followup to fix problem pointed out by reviewer. r=bz.
...
--HG--
extra : rebase_source : 13271029cb0c7cd18b98fa2ed409e43f1df13e47
2012-10-29 21:55:13 +01:00
Peter Van der Beken
1ef60a85a4
Fix for bug 778152 (Content window does not have an XMLHttpRequest property when accessed via an Xray wrapper in a subscript). r=bz.
...
Switch from using the interface objects from the Xrays compartment to wrapping
interface objects and interface prototype objects in Xrays. Make dom binding
Xrays deal with both instance objects and interface and interface prototype
objects.
2012-10-09 20:50:27 +02:00
Boris Zbarsky
f2b84a3ae9
Bug 793267. Add support for [Unforgeable] in WebIDL. r=peterv
...
Unforgeable attributes are defined directly on the object, not on the
prototype. So we keep them in a separate spec array and define them
during object creation as needed.
This means that we have to pass that separate spec array to the Xray
helpers, unfortunately, which somewhat complicates those.
2012-10-24 16:10:49 -04:00
Olli Pettay
94fafd006f
Bug 797806 - Helper method to handle stringified JSON in C++, part2, r=khuey
2012-10-16 18:37:44 +03:00
Olli Pettay
725f23d5ee
Bug 797806 - Helper method to handle stringified JSON in C++, r=khuey
2012-10-16 17:52:10 +03:00
Peter Van der Beken
de52d9ea80
Fix for bug 798264 (Split property tables). r=bz.
...
--HG--
extra : rebase_source : 71456ae48d3d3e6014e8095837f7942cfe733a37
2012-10-09 20:50:05 +02:00
Boris Zbarsky
3e1f7e4e46
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
Bobby Holley
02fbd34534
Bug 761695 - Implement expando traps for ProxyXrayTraits DOMXrayTraits. r=peterv
...
For new DOM proxies, we could probably use the Xray expando machinery for the
regular expando object as well, and free up one of the reserved slots. That's
more than I want to bite off for the moment, though.
I also decided not to block on bug 760095 and just kick the problem of globals
with new binding down the road a little bit.
2012-10-05 18:59:23 +02:00
Bill McCloskey
88913893e5
Bug 787856 - Convert js::GetObjectProto to support lazy protos (r=bhackett)
2012-09-03 16:42:10 -07:00
Luke Wagner
94264a0bc8
Bug 625199 - s/JSAutoEnterCompartment/JSAutoCompartment/ and make it infallible (r=bholley)
...
--HG--
extra : rebase_source : 12acf2288285f5caefd7fecea8207de3a47eab5b
2012-08-21 18:42:53 -07:00
Peter Van der Beken
13f425b97c
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
Eric Faust
6b5acbfcaf
Bug 747287 - Followup: Add cast to fix build. (r=me)
2012-08-07 22:57:07 -07:00
Eric Faust
3e8a5ebf81
Bug 781040 - Fault in methods and accessors with JSJitinfos on ResolveProperty. (r=bz,benjamin)
2012-08-07 22:26:19 -07:00
Eric Faust
17695b5079
Bug 775788 - Modify JSFunctionSpec to accept JSJitInfos. (r=luke)
2012-08-07 22:26:19 -07:00
Boris Zbarsky
a00c8cb2bd
Bug 747287 - Part 3: Add callback interface to allow JIT to interrogate DOM. (r=peterv)
2012-08-07 22:26:18 -07:00
Eric Faust
b451a97a53
Bug 747287 - Part 1: Generate JSJitInfos and specialized accessors for Paris bindings. (r=peterv)
2012-08-07 22:26:18 -07:00
Ms2ger
e1e44bb6f1
Bug 774705 - Part b: Throw a TypeError when trying to construct an interface without a constructor; r=bz
2012-08-04 09:44:00 +02:00
Ed Morley
bba173e66e
Revert inbound to 3d5d1daa2505 to stop OS X M5 failures (backout not clean/could have been a bad merge) on a CLOSED TREE
2012-08-04 18:05:15 +01:00
Ms2ger
5363dc0480
Bug 774705 - Part b: Throw a TypeError when trying to construct an interface without a constructor; r=bz
2012-08-04 09:44:00 +02:00
Aryeh Gregor
e806eeab4f
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Benjamin Peterson
d1064385b3
Bug 761723 - Save script sources to implement Function.prototype.toString. r=jorendorff,njn,jimb,jst,Ms2ger
...
--HG--
extra : rebase_source : de1b55647780a30f98fe84d29ee3cb4a437a3ece
2012-07-20 20:17:38 +02:00
Peter Van der Beken
d5f4fcc033
Fix for bug 774775 (XRayWrapper does not handle new bindings constants) - refactor code. r=bz.
...
--HG--
extra : rebase_source : 317d5942dde4427384320cb334f794f7fef37a2e
2012-07-18 13:52:07 +02:00
Ms2ger
2be7de56d2
Bug 765464 - Part c: Throw some TypeErrors; r=khuey
2012-07-18 12:36:08 +02:00
Bobby Holley
50c7e8bc6b
Bug 763341 - Handle wrappers in new dom binding QI. r=bz
...
The |ok| parent check goes away because it's ill-conceived. All it's really checking is that proxies are parented to the global, and it's impossible to port to SpecialPowers, because SpecialPowers will think that the proxy is parented to the SpecialPowers global. I don't think this check is very important, so I removed it.
2012-06-12 15:44:21 +02:00
Boris Zbarsky
b4e6056558
Bug 761707 part 2. Drop the vestigial jsclass argument to UnwrapDOMObject. r=bholley
2012-06-06 15:59:46 -04:00
Boris Zbarsky
1e84000e3b
Bug 753522. Add support for controlling the existence of methods, properties, interface constants, etc with a pref. r=peterv
2012-05-23 12:44:48 -04:00
Ms2ger
5623a92079
Bug 754968 - Part c: Make BindingUtils.h not require private xpconnect headers; r=bholley
2012-05-18 10:29:40 +02:00
David Rajchenbach-Teller
50cef29c5b
Bug 739740 - Export libc constants to JS. r=khuey
2012-05-09 12:00:48 +02:00
Ryan VanderMeulen
270738f819
Back out b5fd22efe23d (bug 739740) due to bustage. r=TryFTW
2012-05-03 18:51:14 -04:00
David Rajchenbach-Teller
256ca5f4b1
Bug 739740 - Export libc constants to JS. r=khuey,glandium
2012-04-30 12:14:38 +02:00
Peter Van der Beken
ed885d50a9
Fix for bug 741367 (Creating second XMLHttpRequest via Components.Constructor throws NS_ERROR_FAILURE): don't overwrite content-defined properties. r=bz.
...
--HG--
extra : rebase_source : f9c7fe34d4cde28cafea0536e305704e2dc04ff7
2012-04-27 09:57:09 +02:00
Peter Van der Beken
7eb62e9704
Fix for bug 742156 (Stringifying EventTarget throws): implement a toString method for interface objects. r=bz.
...
--HG--
extra : rebase_source : cd692b5231e4d183e0bbd368965e704ede54661f
2012-05-02 15:28:17 +02:00
Boris Zbarsky
577419e736
Bug 748983. Fix the instanceof behavior for new bindings in situations where we don't need a custom hasInstance hook. r=peterv
2012-05-03 00:35:38 -04:00
Boris Zbarsky
32c7f6e634
Bug 742217. Reduce the use of nested namespaces in our binding code. r=peterv,bent
...
In the new setup, all per-interface DOM binding files are exported into
mozilla/dom. General files not specific to an interface are also exported into
mozilla/dom.
In terms of namespaces, most things now live in mozilla::dom. Each interface
Foo that has generated code has a mozilla::dom::FooBinding namespace for said
generated code (and possibly a mozilla::bindings::FooBinding_workers if there's
separate codegen for workers).
IDL enums are a bit weird: since the name of the enum and the names of its
entries all end up in the same namespace, we still generate a C++ namespace
with the name of the IDL enum type with "Values" appended to it, with a
::valuelist inside for the actual C++ enum. We then typedef
EnumFooValues::valuelist to EnumFoo. That makes it a bit more difficult to
refer to the values, but means that values from different enums don't collide
with each other.
The enums with the proto and constructor IDs in them now live under the
mozilla::dom::prototypes and mozilla::dom::constructors namespaces respectively.
Again, this lets us deal sanely with the whole "enum value names are flattened
into the namespace the enum is in" deal.
The main benefit of this setup (and the reason "Binding" got appended to the
per-interface namespaces) is that this way "using mozilla::dom" should Just
Work for consumers and still allow C++ code to sanely use the IDL interface
names for concrete classes, which is fairly desirable.
--HG--
rename : dom/bindings/Utils.cpp => dom/bindings/BindingUtils.cpp
rename : dom/bindings/Utils.h => dom/bindings/BindingUtils.h
2012-05-03 00:35:38 -04:00