Commit graph

1237 commits

Author SHA1 Message Date
Ms2ger
95ec20bd97 Remove the 'a lifetime from Root.
It does not add any safety, as the reference is constructed from a raw pointer
without limiting the lifetime in any way.
2015-01-01 20:36:43 +01:00
bors-servo
111a196e9d auto merge of #4470 : shinglyu/servo/contentType, r=jdm
A follow-up for issue #1820, adds the optional "type" support.
2015-01-01 08:33:40 -07:00
bors-servo
fda38cf673 auto merge of #4496 : yodalee/servo/issue4484-ToJSValConvertible-for-str, r=jdm
#4484 
Add ToJSValConvertible trait to str type.
2015-01-01 03:00:44 -07:00
Shing Lyu
6df9b7fd3a Bug #1820, add the optional "type" parameter to Blob 2015-01-01 16:23:21 +08:00
yodalee
bb087c238b use str to_jsval() now
xmlhttprequest.rs, CodegenRust.py
replace into_string().to_jsval() to to_jsval()

conversions.rs
DOMString to_jsval() use as_slice().tojsval() now
2015-01-01 02:17:33 +08:00
Ms2ger
2669dac312 Use or_init for HTMLCanvasElement::GetContext. 2014-12-31 14:49:25 +01:00
yodalee
6f569dee92 add str ToJSValConvertible for str type 2014-12-31 20:20:44 +08:00
Ms2ger
b6117a57aa Replace the remaining to_string calls by into_string calls. 2014-12-31 10:34:44 +01:00
Bruno de Oliveira Abinader
bb577968e5 Codegen style fix 2014-12-30 12:40:49 -04:00
Bruno de Oliveira Abinader
7cca51b3b4 Codegen empty lines fix 2014-12-30 12:40:48 -04:00
Bruno de Oliveira Abinader
0721c624d9 Codegen indent fixes 2014-12-30 12:40:48 -04:00
Bruno de Oliveira Abinader
c950e3d61e Codegen whitespace fixes 2014-12-30 11:28:59 -04:00
bors-servo
2c259f477c auto merge of #4057 : jdm/servo/refcountdom, r=Ms2ger
This replaces the specialized TrustedXHRAddress and TrustedWorkerAddress code that was used for the same purpose. A non-zero refcount pins the given DOM object's reflector and prevents it from being GCed even when there are no other outstanding references visible to SpiderMonkey. This will enable us to implement asynchronous operations that refer to particular DOM objects (such as "queue a task to fire a simple event named load at the iframe element" from the spec) safely and conveniently, and paves the way for things like asynchronous network responses.

Some concerns about the resulting size of XHR progress messages have been expressed, but I believe optimizations to reduce that can be implemented in subsequent PRs.

r? @Ms2ger - note in particular the changes to the worker lifetime code. I couldn't figure out how to achieve an identical lifetime to the previous addref/release pairing, and I also was having trouble figuring out why the existing setup was safe. The new implementation now holds the main script task Worker object alive via the TrustedWorkerAddress field in the dedicated worker global scope, which is a significant difference.
2014-12-29 11:57:45 -07:00
Josh Matthews
9a7cd31134 Force all messages to worker tasks to send a TrustedWorkerAddress along with the ScriptMsg. This ensures that the main-thread Worker object is rooted for as long as there are events in flight or being processed. 2014-12-29 13:53:49 -05:00
Josh Matthews
2f059c15e7 Allow refcounting arbitrary DOM objects in concert with the GC to enable safe, asynchronous/cross-task references to pinned objects. 2014-12-29 13:53:48 -05:00
bors-servo
f76a460c53 auto merge of #4483 : brunoabinader/servo/named-deleter, r=Ms2ger
Closes #4469.
2014-12-29 10:21:51 -07:00
Bruno de Oliveira Abinader
ab618dd9c7 Add support for named deleter
Closes #4469.
2014-12-29 12:58:48 -04:00
bors-servo
1539051896 auto merge of #4501 : Ms2ger/servo/script_task, r=jdm 2014-12-29 09:54:45 -07:00
Ms2ger
a1d21d4c5e Simplify some code in handle_click_event. 2014-12-29 09:51:01 +01:00
ProgramFOX
18d8ee6ce0 Added readonly flag for CSSStyleDeclaration 2014-12-28 17:39:07 +01:00
bors-servo
56d1b16d1b auto merge of #4173 : Manishearth/servo/a-more-dom-struct, r=kmcallister
Now `#[dom_struct]` also generates Reflectable impls, and there's another lint to ensure that a DOM struct only contains one bare DOM field (as the first field) or a Reflector.

A lot of this was generated by sed -- each autogenerated change has its own commit for easy review; these will be squashed later.
2014-12-27 22:12:45 -07:00
Ms2ger
0031498e6b Remove some transmute calls. 2014-12-27 17:07:32 +01:00
Manish Goregaokar
e9d1740e19 script: to_string() -> into_string() 2014-12-27 14:48:36 +01:00
Manish Goregaokar
50c246bdc5 Fix warnings post-upgrade 2014-12-27 03:28:35 +05:30
Manish Goregaokar
21a888341d Ensure that Reflectors are the first field 2014-12-27 02:53:36 +05:30
Manish Goregaokar
d761877ef6 Add inheritance-checking lint 2014-12-27 02:53:35 +05:30
Manish Goregaokar
7d65673561 Remove extra spaces
Command: `find . -maxdepth 1 -type f -print0 | xargs -0 sed -z -i "s/}\\n\\n\\n/}\\n\\n/"`
2014-12-27 02:53:35 +05:30
Manish Goregaokar
552db382d6 Remove manual impls of Reflectors (autogen)
Obtained via:

 `find . -maxdepth 1 -type f -print0 | xargs -0 sed -z -i "s/\\nimpl Reflectable for[^{]*{[^}]*}[^}]*}\\n//"`
 `find . -maxdepth 1 -type f -print0 |xargs -0  grep -lZ dom_struct | xargs -0 grep -LZ  "reflector()\\|Reflector::new" |xargs -0 sed -z -i "s/use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};/use dom::bindings::utils::reflect_dom_object;/"`

followed by semi-automated removal of leftover imports
2014-12-27 02:52:33 +05:30
Bruno de Oliveira Abinader
5afcf3ef65 Implement DOMTokenList.toggle 2014-12-26 14:55:27 -04:00
Bruno de Oliveira Abinader
2cfb4648ce Implement DOMTokenList.remove 2014-12-26 14:55:27 -04:00
Bruno de Oliveira Abinader
aa29dc195d Implement DOMTokenList.add 2014-12-26 14:55:27 -04:00
Bruno de Oliveira Abinader
08e7cf24cd DOMTokenList::check_token_exceptions now returns an Atom 2014-12-26 14:55:26 -04:00
Bruno de Oliveira Abinader
51fac3d2cc Added Element::get_tokenlist_attribute 2014-12-26 14:55:26 -04:00
Bruno de Oliveira Abinader
8859286a99 Added AttrValue::from_atomic_tokens & Element::set_atomic_tokenlist_attribute 2014-12-26 14:55:26 -04:00
Bruno de Oliveira Abinader
c5f7e553e4 Avoid duplicated tokens in AttrValue::from_serialized_tokenlist 2014-12-26 13:08:20 -04:00
Bruno de Oliveira Abinader
eb3678fa28 AttrValue's s/from_tokenlist/from_serialized_tokenlist/ 2014-12-26 13:08:20 -04:00
bors-servo
0e6304dcf7 auto merge of #4467 : servo/servo/dataset, r=Ms2ger 2014-12-25 02:27:43 -07:00
Matt McCoy
bdb75c2146 This fixes #4166. throw_dom_exception will take the GlobalRef by value, and all generated code will pass it by value. 2014-12-24 17:16:48 -05:00
Ms2ger
919f2217f0 Implement dummy getOwnPropertyNames and enumerate traps. 2014-12-24 17:17:40 +01:00
thiagopnts
eacbe331c9 Replace bool attribute in Element::update_inline_style with a descriptive enum 2014-12-24 13:23:58 -02:00
bors-servo
194ce20969 auto merge of #4474 : thiagopnts/servo/generic-msgs, r=jdm
This refs #3735. As discussed in the issue, I did it cloning when I couldn't dereference an attribute. The trait method should be on `&self` for object-safety reasons.
2014-12-24 03:45:44 -07:00
bors-servo
71b9f17b6b auto merge of #4457 : jamougha/servo/master, r=jdm
Fixes #4411.

I didn't find any tests for the text control functionality so I didn't write any for this, let me know if I should.
2014-12-23 23:45:45 -07:00
bors-servo
fb59e79299 auto merge of #4453 : mattnenterprise/servo/dispatch-mousemove, r=jdm 2014-12-23 23:15:47 -07:00
thiagopnts
271aa277e9 Replace XHR events for generic ones in ScriptTask
fixup! Replace XHR events for generic ones in ScriptTask

fixup! Replace XHR events for generic ones in ScriptTask
2014-12-23 23:53:38 -02:00
James Moughan
0a6ebfa3ee Allow selection of all text in a text control using the ctrl-a/cmd-a shortcut.
Fixes #4411.
2014-12-24 00:14:17 +00:00
Matt McCoy
75be44e744 This fixes #4259. Dispatching the mousemove event for the top most node when the mouse moves while on top of it 2014-12-23 17:49:03 -05:00
Adam Sunderland
674fe910c1 Add GetPropertyPriority to CSSStyleDeclaration
Tweak getPropertyPriority to match recommendations

Adding Tests for Style Priority

Use else if

Adding Content Test for GetPropertyPriority

Revert "Adding Tests for Style Priority"

This reverts commit 8666a37f833b06c3e43f27acd8a9678e94425e55.
2014-12-23 11:41:33 -06:00
ProgramFOX
07d37af37e Implemented CSSStyleDeclaration.setPropertyPriority
Implemented CSSStyleDeclaration.setPropertyPriority, resolves #4433
2014-12-23 17:14:45 +01:00
Bruno de Oliveira Abinader
57c520d8cf Implement HTMLElement.dataset (fixes #2974). 2014-12-23 14:24:06 +01:00
Bruno de Oliveira Abinader
285a06ff59 Implement Element::set_custom_attribute. 2014-12-23 14:23:30 +01:00