servo/components/script/dom
bors-servo 7d02c2055d Auto merge of #11341 - nox:raf, r=pcwalton
Use a simple Vec for the animation frame list

Adding an animation frame list is now just pushing a new pair onto the vector,
while canceling one is setting its callback to None.

This means we can't send NoAnimationCallbacksPresent anymore to the constellation
when all entries were cancelled, but I'm not sure that's very important anyway.

The good downside of this change is that when running the callbacks, if no
new one was queued during their execution, we can just swap back the original Vec
into the Document in run_the_animation_frame_callbacks, thus reusing the
original allocation.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11341)
<!-- Reviewable:end -->
2016-05-23 10:50:37 -07:00
..
bindings Auto merge of #11225 - izgzhen:patch-input-element-file, r=Manishearth 2016-05-23 01:10:46 -07:00
webidls Auto merge of #11255 - s-baldrick:11158, r=ConnorGBrewster 2016-05-20 21:26:41 -07:00
activation.rs Call synthetic_click_activation for all clicks 2016-03-10 14:43:33 -05:00
attr.rs Implement nodeName on Attr 2016-04-03 10:27:41 -07:00
beforeunloadevent.rs dom: Add missing event handlers 2016-05-20 18:25:13 +01:00
blob.rs Removed unused imports 2016-05-15 22:24:26 +03:00
bluetooth.rs Remove BluetoothDevice members 2016-05-05 12:47:52 +02:00
bluetoothadvertisingdata.rs Fix value types 2016-05-03 10:17:38 +02:00
bluetoothcharacteristicproperties.rs WebBluetooth API classes 2016-03-16 10:34:48 +01:00
bluetoothdevice.rs Remove BluetoothDevice members 2016-05-05 12:47:52 +02:00
bluetoothremotegattcharacteristic.rs Refactor IPC-message sending 2016-05-03 11:35:34 +02:00
bluetoothremotegattdescriptor.rs Refactor IPC-message sending 2016-05-03 11:35:34 +02:00
bluetoothremotegattserver.rs Refactor IPC-message sending 2016-05-03 11:35:34 +02:00
bluetoothremotegattservice.rs Refactor IPC-message sending 2016-05-03 11:35:34 +02:00
bluetoothuuid.rs Replace the union types with the correct typedefs in the webidl files and the API classes. 2016-05-03 11:35:30 +02:00
browsingcontext.rs Stop using JSAutoRequest. 2016-05-13 15:34:38 +02:00
canvasgradient.rs
canvaspattern.rs Add origin-clean flag tracking for canvas 2015-12-17 11:40:38 -08:00
canvasrenderingcontext2d.rs Remove ConstellationChan. 2016-05-19 17:13:44 +02:00
characterdata.rs Inlined content_changed 2016-04-04 11:33:37 +02:00
closeevent.rs Removed unused imports 2016-05-15 22:24:26 +03:00
comment.rs
console.rs Implement console#time and console#timeEnd methods 2016-01-25 14:21:32 -05:00
create.rs Implement HTMLDetailsElement. Fixes #9216 2016-01-20 16:15:37 +01:00
crypto.rs Say farewell to in-tree HeapSizeOf 2016-02-04 22:03:32 +01:00
css.rs Update cssparser to fix CSS.escape test failures 2016-05-06 13:54:26 +02:00
cssstyledeclaration.rs Removed unused imports 2016-05-15 22:24:26 +03:00
customevent.rs Implement From<DOMString> for Atom 2016-02-24 17:52:17 +01:00
dedicatedworkerglobalscope.rs adding interface for custom responses 2016-05-20 12:11:56 +05:30
document.rs Use a simple Vec for the animation frame list 2016-05-23 12:11:58 +02:00
documentfragment.rs Implement From<DOMString> for Atom 2016-02-24 17:52:17 +01:00
documenttype.rs
domexception.rs
domimplementation.rs [10743] Add content type to XmlDocument constructor based on namespace 2016-04-28 20:26:54 -06:00
domparser.rs Store a pointer to the browsing context in the Document. 2016-02-11 13:08:11 +01:00
dompoint.rs Add DOMQuad element 2015-12-18 17:37:10 +01:00
dompointreadonly.rs
domquad.rs Removed unused imports 2016-05-15 22:24:26 +03:00
domrect.rs
domrectlist.rs
domrectreadonly.rs
domstringmap.rs Reduce 'match' body, remove unnecessary clone 2016-01-05 16:55:37 -08:00
domtokenlist.rs Implement and test DOMTokenList.replace (fixes #8511) 2016-03-24 10:37:42 +01:00
element.rs Add string_cache override for geckolib based on gecko atoms. 2016-05-18 11:33:38 -07:00
errorevent.rs Removed unused imports 2016-05-15 22:24:26 +03:00
event.rs implement and use From<bool> for enum and back 2016-03-17 22:50:22 +01:00
eventdispatcher.rs Refactor dispatch_event according to the spec (fixes #9178) 2016-02-29 10:42:09 +01:00
eventsource.rs Upgrade to rust-url 1.0 and hyper 0.9 2016-04-23 20:27:58 +02:00
eventtarget.rs dom: Add missing event handlers 2016-05-20 18:25:13 +01:00
file.rs Implement file-type functionalities in htmlinputelement and related 2016-05-23 15:35:46 +08:00
filelist.rs Implement file-type functionalities in htmlinputelement and related 2016-05-23 15:35:46 +08:00
filereader.rs Remove extraneous script_chan parameter from Trusted::new 2016-04-28 10:52:44 +02:00
focusevent.rs Implement the focusevent argument to Document::createEvent 2016-04-27 01:51:48 +03:00
forcetouchevent.rs forcetouch events support 2016-04-05 18:42:28 +08:00
formdata.rs Removed unused imports 2016-05-15 22:24:26 +03:00
hashchangeevent.rs add popstateevent, hashchangeevent, pagetransitionevent 2016-05-11 22:11:46 -06:00
htmlanchorelement.rs Fix panic from update_href in HTMLAnchorElement 2016-05-19 04:46:51 -04:00
htmlappletelement.rs
htmlareaelement.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlaudioelement.rs
htmlbaseelement.rs Upgrade to rust-url 1.0 and hyper 0.9 2016-04-23 20:27:58 +02:00
htmlbodyelement.rs Auto merge of #11255 - s-baldrick:11158, r=ConnorGBrewster 2016-05-20 21:26:41 -07:00
htmlbrelement.rs
htmlbuttonelement.rs Include <button type=submit> data whilst constructing the form dataset 2016-05-23 15:12:19 +05:30
htmlcanvaselement.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlcollection.rs Move '&&' to the end of the previous line. 2016-04-22 14:28:18 +02:00
htmldataelement.rs
htmldatalistelement.rs
htmldetailselement.rs Rename ToggleEventRunnable to DetailsNotificationRunnable 2016-05-04 21:01:26 -04:00
htmldialogelement.rs
htmldirectoryelement.rs
htmldivelement.rs
htmldlistelement.rs
htmlelement.rs dom: Add missing event handlers 2016-05-20 18:25:13 +01:00
htmlembedelement.rs
htmlfieldsetelement.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlfontelement.rs Add parsing of double values in style attributes 2016-04-25 01:09:30 -04:00
htmlformcontrolscollection.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlformelement.rs Auto merge of #11333 - Manishearth:submit-submit-button, r=nox 2016-05-23 04:18:09 -07:00
htmlframeelement.rs
htmlframesetelement.rs dom: Add missing event handlers 2016-05-20 18:25:13 +01:00
htmlheadelement.rs
htmlheadingelement.rs
htmlhrelement.rs Implement 'align' IDL attribute on '<hr>'. 2016-04-11 19:46:57 -04:00
htmlhtmlelement.rs
htmliframeelement.rs Remove ConstellationChan. 2016-05-19 17:13:44 +02:00
htmlimageelement.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlinputelement.rs Auto merge of #11333 - Manishearth:submit-submit-button, r=nox 2016-05-23 04:18:09 -07:00
htmllabelelement.rs Fix HtmlLabelElement activation to run on correct element 2016-03-29 18:48:07 -04:00
htmllegendelement.rs Issue #10456 Remove unused import warnings in HTMLLegendElement 2016-04-07 21:24:20 +02:00
htmllielement.rs
htmllinkelement.rs Remove ConstellationChan. 2016-05-19 17:13:44 +02:00
htmlmapelement.rs
htmlmediaelement.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlmetaelement.rs Overrode parse_plain_attribute of VirtualMethods for HTMLMetaElement to pass as an Atom 2016-05-18 19:40:04 -05:00
htmlmeterelement.rs
htmlmodelement.rs
htmlobjectelement.rs Implement initial pieces of form validation. 2016-03-24 09:07:38 -04:00
htmlolistelement.rs
htmloptgroupelement.rs Update rust-selectors 2016-02-03 02:11:31 +01:00
htmloptionelement.rs Update rust-selectors 2016-02-03 02:11:31 +01:00
htmloutputelement.rs Implement initial pieces of form validation. 2016-03-24 09:07:38 -04:00
htmlparagraphelement.rs
htmlparamelement.rs
htmlpreelement.rs
htmlprogresselement.rs
htmlquoteelement.rs
htmlscriptelement.rs Removed unused imports 2016-05-15 22:24:26 +03:00
htmlselectelement.rs Support form submission of multipart/form-data 2016-04-30 21:42:50 -04:00
htmlsourceelement.rs
htmlspanelement.rs
htmlstyleelement.rs Reduce channel cloning. 2016-04-29 14:55:52 +02:00
htmltablecaptionelement.rs
htmltablecellelement.rs Fix a bunch of clippy lints 2016-01-02 23:27:15 +01:00
htmltablecolelement.rs
htmltabledatacellelement.rs
htmltableelement.rs Add parsing of double values in style attributes 2016-04-25 01:09:30 -04:00
htmltableheadercellelement.rs
htmltablerowelement.rs Move '&&' to the end of the previous line. 2016-04-22 14:28:18 +02:00
htmltablesectionelement.rs Move '&&' to the end of the previous line. 2016-04-22 14:28:18 +02:00
htmltemplateelement.rs
htmltextareaelement.rs Remove ConstellationChan. 2016-05-19 17:13:44 +02:00
htmltimeelement.rs
htmltitleelement.rs
htmltrackelement.rs
htmlulistelement.rs
htmlunknownelement.rs
htmlvideoelement.rs
imagedata.rs Update SpiderMonkey 2016-05-03 18:36:11 +02:00
keyboardevent.rs Removed unused imports 2016-05-15 22:24:26 +03:00
location.rs add origin to location and url api 2016-01-21 11:06:41 -08:00
macros.rs dom: Add missing event handlers 2016-05-20 18:25:13 +01:00
mediaerror.rs Tidy fixes. 2016-05-03 18:05:27 -04:00
messageevent.rs Implement From<DOMString> for Atom 2016-02-24 17:52:17 +01:00
mimetype.rs Implemented stub for NavigatorPlugins 2016-04-11 09:14:46 -06:00
mimetypearray.rs Implemented stub for NavigatorPlugins 2016-04-11 09:14:46 -06:00
mod.rs Fix the doc on inheritance and casting 2016-05-21 16:08:47 +02:00
mouseevent.rs implement and use From<bool> for enum and back 2016-03-17 22:50:22 +01:00
namednodemap.rs Updated SupportedPropertyNames in NamedNodeMap to match spec 2016-03-05 17:21:01 +05:30
navigator.rs Implemented stub for NavigatorPlugins 2016-04-11 09:14:46 -06:00
navigatorinfo.rs implements NavigatorLanguage 2016-03-17 16:13:37 +05:30
node.rs Removed unused imports 2016-05-15 22:24:26 +03:00
nodeiterator.rs
nodelist.rs Implement NamedItem and NamedGetter on HTMLFormControlsCollection 2016-01-28 18:33:51 -05:00
pagetransitionevent.rs add popstateevent, hashchangeevent, pagetransitionevent 2016-05-11 22:11:46 -06:00
performance.rs
performancetiming.rs fix performance timing precision and navigation_start unit; add LoadEventStart and LoadEventEnd timing 2016-04-13 01:30:02 +08:00
plugin.rs Implemented stub for NavigatorPlugins 2016-04-11 09:14:46 -06:00
pluginarray.rs Implemented stub for NavigatorPlugins 2016-04-11 09:14:46 -06:00
popstateevent.rs add popstateevent, hashchangeevent, pagetransitionevent 2016-05-11 22:11:46 -06:00
processinginstruction.rs
progressevent.rs Implement the "progressevent" argument to Document::createEvent 2016-04-26 00:32:50 -04:00
radionodelist.rs Implement NamedItem and NamedGetter on HTMLFormControlsCollection 2016-01-28 18:33:51 -05:00
range.rs Implement Stringifier for Range 2016-03-09 15:27:37 -05:00
screen.rs
servohtmlparser.rs Add timeline markers for HTTP requests, JS evaluation, and HTML parsing. 2016-05-18 08:02:42 -05:00
servoxmlparser.rs Auto merge of #10647 - ConnorGBrewster:parse_xml, r=jdm 2016-04-27 07:50:54 -07:00
storage.rs Remove the pointless StorageThread alias. 2016-05-20 13:11:36 +02:00
storageevent.rs "storageevent" argument for Document::createEvent 2016-04-25 12:02:05 +02:00
stylesheet.rs Initial steps for CSSOM API 2016-03-31 18:17:30 -04:00
stylesheetlist.rs servo: Clean up unused variables and imports 2016-04-02 16:30:18 +02:00
testbinding.rs codegen: add tests for non-nullable non-required values 2016-05-13 09:42:59 +02:00
testbindingproxy.rs
text.rs Properly propagate changes when range or trees are mutated 2015-12-25 23:35:57 +01:00
textdecoder.rs Removed unused imports 2016-05-15 22:24:26 +03:00
textencoder.rs Removed unused imports 2016-05-15 22:24:26 +03:00
touch.rs
touchevent.rs implement and use From<bool> for enum and back 2016-03-17 22:50:22 +01:00
touchlist.rs
treewalker.rs
uievent.rs implement and use From<bool> for enum and back 2016-03-17 22:50:22 +01:00
url.rs Reset searchParam in URL.href setter 2016-04-23 20:28:00 +02:00
urlhelper.rs Upgrade to rust-url 1.0 and hyper 0.9 2016-04-23 20:27:58 +02:00
urlsearchparams.rs Correctly initialize URL.searchParams 2016-04-23 20:27:59 +02:00
userscripts.rs Fix a bunch of clippy lints 2016-01-02 23:27:15 +01:00
validation.rs Implement initial pieces of form validation. 2016-03-24 09:07:38 -04:00
validitystate.rs Implement initial pieces of form validation. 2016-03-24 09:07:38 -04:00
values.rs
virtualmethods.rs Add stubs for src and currentSrc for HTMLMediaElement. 2016-05-03 16:25:21 -04:00
webglactiveinfo.rs
webglbuffer.rs #10211: Stop re-exporting webrender_traits WebGL types from canvas_traits 2016-03-30 20:05:16 +02:00
webglcontextevent.rs implement webglcontextevent 2016-04-22 19:54:13 -07:00
webglframebuffer.rs #10211: Stop re-exporting webrender_traits WebGL types from canvas_traits 2016-03-30 20:05:16 +02:00
webglobject.rs
webglprogram.rs Implement IsShader fn and IsTexture fn for WebGLRenderingContext 2016-05-09 20:54:57 -04:00
webglrenderbuffer.rs #10211: Stop re-exporting webrender_traits WebGL types from canvas_traits 2016-03-30 20:05:16 +02:00
webglrenderingcontext.rs Remove ConstellationChan. 2016-05-19 17:13:44 +02:00
webglshader.rs Implement IsShader fn and IsTexture fn for WebGLRenderingContext 2016-05-09 20:54:57 -04:00
webglshaderprecisionformat.rs
webgltexture.rs Implement IsShader fn and IsTexture fn for WebGLRenderingContext 2016-05-09 20:54:57 -04:00
webgluniformlocation.rs webgl: Rename UniformType to UniformSetterType and hoist to the bottom 2016-04-19 20:25:30 +02:00
websocket.rs Implement trait-based ResourceThreads and clean up related naming issues 2016-05-20 08:00:16 +08:00
window.rs Auto merge of #11225 - izgzhen:patch-input-element-file, r=Manishearth 2016-05-23 01:10:46 -07:00
worker.rs adding interface for custom responses 2016-05-20 12:11:56 +05:30
workerglobalscope.rs adding interface for custom responses 2016-05-20 12:11:56 +05:30
workerlocation.rs
workernavigator.rs implements NavigatorLanguage 2016-03-17 16:13:37 +05:30
xmldocument.rs Removed unused imports 2016-05-15 22:24:26 +03:00
xmlhttprequest.rs adding interface for custom responses 2016-05-20 12:11:56 +05:30
xmlhttprequesteventtarget.rs
xmlhttprequestupload.rs