Commit Graph

50 Commits

Author SHA1 Message Date
Jon Coppeard
a07d2309af Bug 874691 - Make CC participant tracing indirect r=mccr8 r=smaug r=bz 2013-05-27 12:50:49 +01:00
Terrence Cole
b6490325af Bug 777548 - Make non-cc-participant tracing indirect; r=smaug,billm,jst 2013-03-28 13:37:22 -07:00
Boris Zbarsky
b834439797 Bug 864727 part 5. Make all the WrapObject methods take a handle for the scope object. r=ms2ger 2013-04-25 12:29:54 -04:00
Masatoshi Kimura
23ba391ec1 Bug 848339 - Remove the vestigial boolean outparam from nsWrapperCache::WrapObject. r=bz 2013-03-12 08:03:47 +09:00
Masatoshi Kimura
0b2426e59c Bug 841289 - Remove prefable option from WebIDL codegen. r=bz 2013-03-06 07:09:38 +09:00
Boris Zbarsky
9b45ffdc77 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
f17cd371b2 Back out bug 824589 (rev 22695cac3896) on suspicion of Ts regression 2013-01-29 17:18:06 -05:00
Boris Zbarsky
1d5a36a375 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
Steve Fink
9effec722d Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence 2012-12-31 12:40:21 -08:00
Steve Fink
d8da3e7b9a Backed out changeset fce4e0f8a553 (bug 828753) for breaking windows warnings-as-errors (stop adding JSObject forward decls, please!) 2013-01-18 13:20:21 -08:00
Steve Fink
0dee2fb42d Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence
--HG--
extra : rebase_source : c8806b27677594925ad0e6b54c47af5cf17e1153
2012-12-31 12:40:21 -08:00
Trevor Saunders
83bcbe0d6b bug 822289 - remove NS_IMPL_CYCLE_COLLECTION_CLASS and friends r=mccr8 2013-01-12 07:40:33 -05:00
Boris Zbarsky
3a50cb6afb Bug 830553. Make the asserts in nsWrapperCache.h fatal. r=mccr8 2013-01-15 14:04:24 -05:00
Peter Van der Beken
6f6a341ee2 Fix for bug 815149 (Add support for SOWs and XBL bindings in new DOM bindings). r=bz.
--HG--
extra : rebase_source : c24544fd3d1c99651e279e687a07a02c5b994323
2012-09-12 22:29:30 +02:00
Andrew McCreight
34a5c40864 Bug 814752 - Make NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER work for native CC classes. r=smaug,ehsan 2012-11-27 15:08:22 -08:00
Benoit Jacob
46600b2a31 Bug 806279 - CC macros refactoring: part 4: update CC helper macros - r=mccr8,smaug 2012-11-15 02:32:39 -05:00
Benoit Jacob
06bfb63973 Bug 806279 - CC macros refactoring: part 2: generic BEGIN_ macros folding in the NATIVE case - r=mccr8,smaug 2012-11-15 02:32:39 -05: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
Ms2ger
fc5a75281c Bug 793314 - Remove PtrBits; r=mounir,roc 2012-10-02 10:24:11 +02:00
Olli Pettay
6f8dfd30f6 Bug 794694 - Make sure to trace all the gray GCthings, not only wrapper, r=mccr8 2012-09-29 01:29:37 +03:00
Makoto Kato
6025716d17 Bug 785321 - Replace PRUptrdiff with uintptr_t, prtdiff_t or etc; r=ehsan,jrmuizel 2012-09-14 16:09:52 -04:00
Aryeh Gregor
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Ehsan Akhgari
091ebe183f Bug 749101 - Move window.performance to the new DOM bindings; r=bzbarsky 2012-07-16 21:42:18 -04:00
Boris Zbarsky
ed0d831772 Bug 750297 part 2. Switch WebGLUniformLocation to Paris bindings. r=peterv, bjacob 2012-06-15 16:25:51 -04:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Andrew McCreight
2ab077501f Bug 754151 - add macros for basic wrappercached cycle collected classes. r=smaug 2012-05-14 08:24:03 -07:00
Peter Van der Beken
ed510d3506 Fix for bug 740069 (Generate JS bindings in C++ with a python script for DOM objects on the main thread and in workers. Infrastructure and new bindings for XMLHttpRequest). Patch by bent/bz/bholley/jst/khuey/peterv, r=bent/bz/bholley/jlebar/khuey/peterv/sicking/smaug.
--HG--
rename : js/xpconnect/tests/mochitest/test_bug462428.html => dom/bindings/test/test_lookupGetter.html
2012-03-30 21:42:20 -07:00
Peter Van der Beken
cba2d2e2ac Bug 738593 - Rename IsProxy to IsDOMBinding; r=mrbkap 2012-03-16 16:44:09 +01:00
Peter Van der Beken
efadad15ae Fix for bug 736229 (Stop storing expando objects in the wrapper cache, store the proxy instead). r=jst. 2012-03-14 15:22:10 +01:00
Blake Kaplan
662d0db31b Bug 727884 - Make nsWrapperCache::WrapObject take a JSObject scope instead of XPCWrappedNativeScope. r=peterv 2012-03-14 16:25:40 +01:00
Olli Pettay
e29d8131b7 Bug 713462, don't traverse black content lists, r=mccr8 2011-12-29 23:21:33 +02:00
Peter Van der Beken
506577d2e0 Fix for bug 693258 (Fixes for test failures when turning off new list DOM bindings). r=bz/Waldo.
--HG--
extra : rebase_source : f0b6f8443cc29098ce75c114ff5a343597d9f38c
2011-10-13 15:36:09 +02:00
Peter Van der Beken
b851f6d3bd Bug 648801 (new DOM list bindings) - Add comments. r=bz/jst/mrbkap.
--HG--
extra : rebase_source : ff9a4b51856ab57229f39c9670f56ca36c017e83
2011-10-05 12:22:26 +02:00
Peter Van der Beken
2375b7e89a Bug 648801 (new DOM list bindings) - Add a pref (dom.new_bindings) to enable/disable new bindings. r=bz/jst/mrbkap.
--HG--
extra : rebase_source : 055a7bdac534147baa29d8735794970234c98145
2011-06-29 19:17:37 +02:00
Peter Van der Beken
b737d0c096 Bug 648801 (new DOM list bindings) - Support expandos on the new proxy-based DOM bindings. r=bz/jst/mrbkap.
--HG--
extra : rebase_source : 367af99c154271aca19f24244be7b5adeffd8a36
2011-05-26 21:58:35 +02:00
Andreas Gal
7d5b52f0f1 Bug 648801 (new DOM list bindings) - Cache prototypes and pick up function value from the proto slot instead of caching it locally. r=bz/jst/mrbkap.
--HG--
extra : rebase_source : 56a04a93973f479998d40eb22b015e940419c5e5
2011-05-24 12:45:39 +02:00
Boris Zbarsky
f4eabef745 Bug 648801 (new DOM list bindings) - Hook up the new code so we actually create the proxy wrappers. r=bz/jst/mrbkap.
--HG--
extra : rebase_source : 5e79a3cb63231502880e380740d0d935c8d0c78d
2011-05-23 17:39:52 +02:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Ben Turner
348158b35c Bug 614347 - 'XPConnect-wrapped JSObjects must clear their gray bit when they are handed out'. r=peterv+gal, a=blocking. 2011-02-16 12:47:08 -08:00
Ben Turner
5c5c52142e Backout 10ebc5ea11ac due to test failures. 2011-02-09 15:29:31 -08:00
Ben Turner
b5732806d2 Bug 614347 - 'XPConnect-wrapped JSObjects must clear their gray bit when they are handed out'. r=peterv+gal, a=blocking. 2011-02-09 12:51:16 -08:00
Ben Turner
0c32b890b9 Backout bug 614347 due to test failures 2011-02-08 22:15:48 -08:00
Ben Turner
633b25f14a Bug 614347 - 'XPConnect-wrapped JSObjects must clear their gray bit when they are handed out'. r=peterv+gal, a=blocking. 2011-02-08 18:54:14 -08:00
Blake Kaplan
234cbcb3a1 Bug 580128 - Give objects a way to inform XPConnect that they implement their own JS object in a way that does not involve wrapped natives. r=peterv 2010-09-17 14:54:40 -07:00
Peter Van der Beken
88bc7e0eed Fix for bug 482788 (Lightweight DOM wrappers). r=jst, sr=mrbkap. 2009-05-12 22:20:42 +02:00
Peter Van der Beken
6a60ce1d10 Fix for bug 480389 (Remove nsIDocument's cached JS object). r/sr=jst.
--HG--
extra : rebase_source : e01297b029bdbcde75521363ad47949dff72cf9b
2009-03-18 18:56:38 +01:00
Peter Van der Beken
855de5c02f Backing out 18b1811cd104, fix for bug 480389 (Remove nsIDocument's cached JS object), to try to fix orange. 2009-03-19 14:07:03 +01:00
Peter Van der Beken
180c611bff Fix for bug 480389 (Remove nsIDocument's cached JS object). r/sr=jst.
--HG--
extra : rebase_source : 7e971c32cc922fb866f12f3e037f8c91c09df3bf
2009-03-18 18:56:38 +01:00
Makoto Kato
668227cf52 Bug 478190 - LLP64 (Windows x64) support for /mozilla/dom. r/sr=peterv 2009-03-15 12:19:53 +09:00
Benjamin Smedberg
555ae1b325 Bug 481102 - Reorganize dom/public, dom/public/base, and dom/src/base to dom/base, r+sr=jst
--HG--
rename : dom/src/base/Makefile.in => dom/base/Makefile.in
rename : dom/src/base/crashtests/244933-1.html => dom/base/crashtests/244933-1.html
rename : dom/src/base/crashtests/275912-1.html => dom/base/crashtests/275912-1.html
rename : dom/src/base/crashtests/327571-1.html => dom/base/crashtests/327571-1.html
rename : dom/src/base/crashtests/327695-1.html => dom/base/crashtests/327695-1.html
rename : dom/src/base/crashtests/329481-1.xhtml => dom/base/crashtests/329481-1.xhtml
rename : dom/src/base/crashtests/338674-1.xhtml => dom/base/crashtests/338674-1.xhtml
rename : dom/src/base/crashtests/346381-1.html => dom/base/crashtests/346381-1.html
rename : dom/src/base/crashtests/359432-1.xhtml => dom/base/crashtests/359432-1.xhtml
rename : dom/src/base/crashtests/369413-1.html => dom/base/crashtests/369413-1.html
rename : dom/src/base/crashtests/372554-1.html => dom/base/crashtests/372554-1.html
rename : dom/src/base/crashtests/404869-1.xul => dom/base/crashtests/404869-1.xul
rename : dom/src/base/crashtests/439206-1.html => dom/base/crashtests/439206-1.html
rename : dom/src/base/crashtests/462947.html => dom/base/crashtests/462947.html
rename : dom/src/base/crashtests/473284.xul => dom/base/crashtests/473284.xul
rename : dom/src/base/crashtests/90613-1.html => dom/base/crashtests/90613-1.html
rename : dom/src/base/crashtests/crashtests.list => dom/base/crashtests/crashtests.list
rename : dom/src/base/domerr.msg => dom/base/domerr.msg
rename : dom/src/base/nsBarProps.cpp => dom/base/nsBarProps.cpp
rename : dom/src/base/nsBarProps.h => dom/base/nsBarProps.h
rename : dom/public/nsDOMCID.h => dom/base/nsDOMCID.h
rename : dom/src/base/nsDOMClassInfo.cpp => dom/base/nsDOMClassInfo.cpp
rename : dom/src/base/nsDOMClassInfo.h => dom/base/nsDOMClassInfo.h
rename : dom/public/nsDOMClassInfoID.h => dom/base/nsDOMClassInfoID.h
rename : dom/public/nsDOMError.h => dom/base/nsDOMError.h
rename : dom/src/base/nsDOMException.cpp => dom/base/nsDOMException.cpp
rename : dom/src/base/nsDOMException.h => dom/base/nsDOMException.h
rename : dom/public/nsDOMJSUtils.h => dom/base/nsDOMJSUtils.h
rename : dom/src/base/nsDOMScriptObjectFactory.cpp => dom/base/nsDOMScriptObjectFactory.cpp
rename : dom/src/base/nsDOMScriptObjectFactory.h => dom/base/nsDOMScriptObjectFactory.h
rename : dom/public/nsDOMScriptObjectHolder.h => dom/base/nsDOMScriptObjectHolder.h
rename : dom/public/nsDOMString.h => dom/base/nsDOMString.h
rename : dom/src/base/nsDOMWindowList.cpp => dom/base/nsDOMWindowList.cpp
rename : dom/src/base/nsDOMWindowList.h => dom/base/nsDOMWindowList.h
rename : dom/src/base/nsDOMWindowUtils.cpp => dom/base/nsDOMWindowUtils.cpp
rename : dom/src/base/nsDOMWindowUtils.h => dom/base/nsDOMWindowUtils.h
rename : dom/src/base/nsFocusController.cpp => dom/base/nsFocusController.cpp
rename : dom/src/base/nsFocusController.h => dom/base/nsFocusController.h
rename : dom/src/base/nsGlobalWindow.cpp => dom/base/nsGlobalWindow.cpp
rename : dom/src/base/nsGlobalWindow.h => dom/base/nsGlobalWindow.h
rename : dom/src/base/nsGlobalWindowCommands.cpp => dom/base/nsGlobalWindowCommands.cpp
rename : dom/src/base/nsGlobalWindowCommands.h => dom/base/nsGlobalWindowCommands.h
rename : dom/src/base/nsHistory.cpp => dom/base/nsHistory.cpp
rename : dom/src/base/nsHistory.h => dom/base/nsHistory.h
rename : dom/public/nsIBaseDOMException.h => dom/base/nsIBaseDOMException.h
rename : dom/public/nsIDOMClassInfo.h => dom/base/nsIDOMClassInfo.h
rename : dom/public/nsIDOMScriptObjectFactory.h => dom/base/nsIDOMScriptObjectFactory.h
rename : dom/public/nsIEntropyCollector.idl => dom/base/nsIEntropyCollector.idl
rename : dom/public/base/nsIFocusController.h => dom/base/nsIFocusController.h
rename : dom/public/nsIJSEventListener.h => dom/base/nsIJSEventListener.h
rename : dom/public/nsIJSNativeInitializer.h => dom/base/nsIJSNativeInitializer.h
rename : dom/public/nsIScriptChannel.idl => dom/base/nsIScriptChannel.idl
rename : dom/public/nsIScriptContext.h => dom/base/nsIScriptContext.h
rename : dom/public/nsIScriptExternalNameSet.h => dom/base/nsIScriptExternalNameSet.h
rename : dom/public/nsIScriptGlobalObject.h => dom/base/nsIScriptGlobalObject.h
rename : dom/public/nsIScriptGlobalObjectOwner.h => dom/base/nsIScriptGlobalObjectOwner.h
rename : dom/public/nsIScriptNameSpaceManager.h => dom/base/nsIScriptNameSpaceManager.h
rename : dom/public/nsIScriptObjectOwner.h => dom/base/nsIScriptObjectOwner.h
rename : dom/public/nsIScriptObjectPrincipal.h => dom/base/nsIScriptObjectPrincipal.h
rename : dom/public/nsIScriptRuntime.h => dom/base/nsIScriptRuntime.h
rename : dom/public/nsIScriptTimeoutHandler.h => dom/base/nsIScriptTimeoutHandler.h
rename : dom/src/base/nsJSEnvironment.cpp => dom/base/nsJSEnvironment.cpp
rename : dom/src/base/nsJSEnvironment.h => dom/base/nsJSEnvironment.h
rename : dom/src/base/nsJSTimeoutHandler.cpp => dom/base/nsJSTimeoutHandler.cpp
rename : dom/src/base/nsJSUtils.cpp => dom/base/nsJSUtils.cpp
rename : dom/src/base/nsJSUtils.h => dom/base/nsJSUtils.h
rename : dom/src/base/nsLocation.cpp => dom/base/nsLocation.cpp
rename : dom/src/base/nsMimeTypeArray.cpp => dom/base/nsMimeTypeArray.cpp
rename : dom/src/base/nsMimeTypeArray.h => dom/base/nsMimeTypeArray.h
rename : dom/public/base/nsPIDOMWindow.h => dom/base/nsPIDOMWindow.h
rename : dom/public/base/nsPIWindowRoot.h => dom/base/nsPIWindowRoot.h
rename : dom/src/base/nsPluginArray.cpp => dom/base/nsPluginArray.cpp
rename : dom/src/base/nsPluginArray.h => dom/base/nsPluginArray.h
rename : dom/src/base/nsScreen.cpp => dom/base/nsScreen.cpp
rename : dom/src/base/nsScreen.h => dom/base/nsScreen.h
rename : dom/src/base/nsScriptNameSpaceManager.cpp => dom/base/nsScriptNameSpaceManager.cpp
rename : dom/src/base/nsScriptNameSpaceManager.h => dom/base/nsScriptNameSpaceManager.h
rename : dom/src/base/nsWindowRoot.cpp => dom/base/nsWindowRoot.cpp
rename : dom/src/base/nsWindowRoot.h => dom/base/nsWindowRoot.h
rename : dom/public/nsWrapperCache.h => dom/base/nsWrapperCache.h
2009-03-11 10:10:19 -04:00