servo/components/script/dom
bors-servo 8998edb912 auto merge of #5282 : gfxmonk/servo/finalize_global, r=Ms2ger
Fixes #1871

I thought I'd take a look at this for a first contribution to servo. A couple of things I'm not 100% sure on are:

1) `get_proto_or_iface_array` returns a `*mut *mut JSObj`, which I'm assuming is really an array of pointers to `JSObj`s. So dropping its return value will drop the memory for the array of pointers. Do we also need to drop each element, or is that handled by GC?

2) Are there any tests I need to add for this? I don't know if there are existing leak tests, or if leaks are mostly discovered by profiling.
2015-03-20 07:54:48 -06:00
..
bindings Free the interface prototype array when Window is finalized 2015-03-20 22:14:14 +11:00
webidls auto merge of #5251 : mmatyas/servo/canvas_quadratic, r=jdm 2015-03-20 04:27:47 -06:00
activation.rs make MouseEvent::new() and UIEvent::new() take enums for the bubbles and cancelable arguments 2015-03-15 10:05:36 +05:30
attr.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
blob.rs Fix some warnings in script. 2015-02-12 20:05:14 +01:00
browsercontext.rs Fix #2108 by renaming unwrap functions to native_from_reflector 2015-03-12 19:15:12 +13:00
canvasgradient.rs Implement gradient fill styles for canvas. 2015-03-19 15:59:08 +01:00
canvaspattern.rs script: Implement enough 2D canvas support to render basic SVGs such as the tiger. 2015-02-22 22:29:58 -05:00
canvasrenderingcontext2d.rs auto merge of #5251 : mmatyas/servo/canvas_quadratic, r=jdm 2015-03-20 04:27:47 -06:00
characterdata.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
comment.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
console.rs Fix ConsoleMsg in ConsoleAPICall for log messages in the Developer Tools web console. 2015-03-19 16:08:27 -04:00
create.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
cssstyledeclaration.rs Documentation and cleanup. 2015-03-03 16:25:40 -05:00
customevent.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
dedicatedworkerglobalscope.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
document.rs Added document.activeElement attribute. 2015-03-19 23:00:13 +01:00
documentfragment.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
documenttype.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
domexception.rs Inline DOMException::new_from_error. 2015-02-28 18:20:42 +01:00
domimplementation.rs Refactored optional argument "last_modified" for Document 2015-03-16 17:53:19 +01:00
domparser.rs Implement Element.innerHTML setter 2015-03-18 11:20:47 -10:00
domrect.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
domrectlist.rs Replace uint/int by usize/isize in various places. 2015-02-20 14:45:47 +01:00
domstringmap.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
domtokenlist.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
element.rs Added document.activeElement attribute. 2015-03-19 23:00:13 +01:00
errorevent.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
event.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
eventdispatcher.rs Add handling for unreported exceptions when invoking callback objects. 2015-01-14 12:54:46 -05:00
eventtarget.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
file.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
formdata.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
htmlanchorelement.rs Implementation of step 1 activation behavior of htmlanchorelement (fixes #4871) 2015-03-02 12:54:50 +08:00
htmlappletelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlareaelement.rs Mark HTMLAreaElement and KeyboardEvent as DOM structs. 2015-02-02 10:03:12 +01:00
htmlaudioelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlbaseelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlbodyelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlbrelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlbuttonelement.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
htmlcanvaselement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlcollection.rs Replace uint/int by usize/isize in various places. 2015-02-20 14:45:47 +01:00
htmldataelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmldatalistelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmldirectoryelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmldivelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmldlistelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlelement.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
htmlembedelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlfieldsetelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlfontelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlformelement.rs First part of refactoring constellation to support iframe navigation. 2015-03-17 09:35:41 +10:00
htmlframeelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlframesetelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlheadelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlheadingelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlhrelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlhtmlelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmliframeelement.rs First part of refactoring constellation to support iframe navigation. 2015-03-17 09:35:41 +10:00
htmlimageelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlinputelement.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
htmllabelelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmllegendelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmllielement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmllinkelement.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
htmlmapelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlmediaelement.rs Upgrade to rustc ba2f13ef0 2015-02-04 2015-02-11 14:48:34 -08:00
htmlmetaelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlmeterelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlmodelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlobjectelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlolistelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmloptgroupelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmloptionelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmloutputelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlparagraphelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlparamelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlpreelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlprogresselement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlquoteelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlscriptelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlselectelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmlsourceelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlspanelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlstyleelement.rs Consider media attribute on link and style tags 2015-03-16 17:19:26 +02:00
htmltablecaptionelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmltablecellelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmltablecolelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmltabledatacellelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmltableelement.rs layout: Implement border-spacing per CSS 2.1 § 17.6.1 and the legacy 2015-03-12 12:00:40 -07:00
htmltableheadercellelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmltablerowelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmltablesectionelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmltemplateelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmltextareaelement.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
htmltimeelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmltitleelement.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
htmltrackelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlulistelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlunknownelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
htmlvideoelement.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
imagedata.rs Implement Canvas pixel manipulation 2015-02-22 13:41:58 -05:00
keyboardevent.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
location.rs Use USVString for URLUtils and URLUtilsReadOnly. 2015-03-13 21:27:58 +01:00
macros.rs Move everything unrelated to the frame tree out of Page and into Document or Window. Reduce the API surface of Page to a bare minimum to allow for easier future removal. 2015-03-03 16:25:40 -05:00
messageevent.rs Initialize trusted-ness of DOM events properly 2015-02-03 21:40:07 -05:00
mod.rs Serialize using html5ever 2015-03-18 12:17:56 -10:00
mouseevent.rs make MouseEvent::new() and UIEvent::new() take enums for the bubbles and cancelable arguments 2015-03-15 10:05:36 +05:30
namednodemap.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
navigator.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
navigatorinfo.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
node.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
nodeiterator.rs Don't define empty FooMethods traits. 2015-03-13 14:54:45 +01:00
nodelist.rs Replace uint/int by usize/isize in various places. 2015-02-20 14:45:47 +01:00
performance.rs Replace Root::deref() calls by Root::r() calls where possible. 2015-01-01 20:36:43 +01:00
performancetiming.rs Remove manual impls of Reflectors (autogen) 2014-12-27 02:52:33 +05:30
processinginstruction.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
progressevent.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
range.rs Fixes #4164 Make Constructor and new functions take GlobalRef by value 2015-01-07 18:52:41 -05:00
screen.rs Remove manual impls of Reflectors (autogen) 2014-12-27 02:52:33 +05:30
servohtmlparser.rs Implement Element.innerHTML setter 2015-03-18 11:20:47 -10:00
storage.rs localStorage shim, fixes #5195 2015-03-16 13:33:55 -07:00
testbinding.rs Implement USVString. 2015-03-13 21:27:58 +01:00
text.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
treewalker.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
uievent.rs make MouseEvent::new() and UIEvent::new() take enums for the bubbles and cancelable arguments 2015-03-15 10:05:36 +05:30
urlhelper.rs Use USVString for URLUtils and URLUtilsReadOnly. 2015-03-13 21:27:58 +01:00
urlsearchparams.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
validitystate.rs Remove manual impls of Reflectors (autogen) 2014-12-27 02:52:33 +05:30
virtualmethods.rs Use new if let syntax wherever possible. Fixes #4153. 2015-03-10 09:18:55 -04:00
websocket.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
window.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
worker.rs Subsume ScriptMsg::WorkerDispatchErrorEvent into ScriptMsg::RunnableMsg via introduction of Worker::WorkerErrorHandler (Closes #5171). 2015-03-09 09:24:40 -04:00
workerglobalscope.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
workerlocation.rs Use USVString for URLUtils and URLUtilsReadOnly. 2015-03-13 21:27:58 +01:00
workernavigator.rs Import the util crate as util rather than servo_util. 2015-01-29 12:16:41 +01:00
xmlhttprequest.rs Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev. 2015-03-18 13:18:31 -04:00
xmlhttprequesteventtarget.rs Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev. 2015-01-28 10:16:49 +10:00
xmlhttprequestupload.rs Remove manual impls of Reflectors (autogen) 2014-12-27 02:52:33 +05:30