Commit Graph

766 Commits

Author SHA1 Message Date
Ms2ger
dfc91abf3f servo: Merge #4682 - Move to to_owned rather than into_string (from servo:to_owned); r=jdm
into_string has been removed from Rust.

Source-Repo: https://github.com/servo/servo
Source-Revision: 94ebc7c32d5ce58ada3f9d8ffdb60cc025eb5997
2015-01-20 07:54:46 -07:00
Ms2ger
6ee1f3a2ce servo: Merge #4678 - Document structuredclone.rs (from Ms2ger:doc-clone); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 89645391bf42edd9977ed1b6f9b430ad786f209e
2015-01-20 07:21:48 -07:00
Ms2ger
fba98eebeb servo: Merge #4674 - Document js.rs (from Ms2ger:doc-js); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2629445748b047434db01bee15273576e229d802
2015-01-20 04:13:01 -07:00
Bruno de Oliveira Abinader
880062f5c3 servo: Merge #4667 - Share supported CSS properties between style and CSSStyleDeclaration (from brunoabinader:share-css-properties-style-script); r=SimonSapin
Avoids duplicated code when implementing the CSS properties accessors in
CSSStyleDeclaration WebIDL. Servo internal CSS properties are not
accessible.

CSS property "float" is unnacessible because we currently lack support
for BinaryName IDL annotation (#4435).

Fixes #4429, #4430.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e85bb67b24483d08edfdc868454fd86dee3ece8
2015-01-19 14:54:46 -07:00
Ms2ger
390fe40cc5 servo: Merge #4664 - Stop using Vec::from_elem (from Ms2ger:from_elem); r=larsbergstrom
It is obsolete on Rust master.

Source-Repo: https://github.com/servo/servo
Source-Revision: d747a33df9c167a3defbbdcfe356ee25eeb672ad
2015-01-19 09:12:46 -07:00
Ms2ger
f59ae9c05a servo: Merge #4662 - Disallow lines that span more than 160 columns (from Ms2ger:overlong); r=larsbergstrom
The Rust style guide suggests 100, but we have too many violations in the
tree already. This check can be tightened over time.

Source-Repo: https://github.com/servo/servo
Source-Revision: ee94b3e8bf659c847bda967700272f8f98fdb0cc
2015-01-19 08:33:48 -07:00
Ms2ger
d5127f19e3 servo: Merge #4654 - Document some more bindings code (from Ms2ger:bindings-docs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 58c1b121a73c80d6857bc5c6453ef95b6db7909f
2015-01-18 20:48:48 -07:00
Jim Hoskins
4a70473cc1 servo: Merge #4621 - Implement Element#closest (from jimrhoskins:closest); r=jdm
fixes #4603

- Add definition to the Element.webidl and implementation to element.rs.
- Create inclusive_ancestors helper in NodeHelpers
- Update test expectations

Source-Repo: https://github.com/servo/servo
Source-Revision: ea83ffdb980d290a910e78b96c3f056280487ac7
2015-01-18 08:09:43 -07:00
Tetsuharu OHZEKI
c5fbccf0ae servo: Merge #4540 - Make script load event asynchronous for internal scripts (from saneyuki:internal); r=jdm
Fix #4504

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a9acdcb73685f2c5c14b51f33b741690b60cb23
2015-01-16 13:51:43 -07:00
Josh Matthews
f0aadfdf1e servo: Merge #4632 - Add handling for unreported exceptions when invoking callback objects (from jdm:reporterr); r=Ms2ger
Rebased version of #4399 that addresses points 2 & 5 from https://critic.hoppipolla.co.uk/showcomment?chain=9848 . Introduction of an AutoJSAPI equivalent and setting the error reporter to null will come later, as they are much larger changes and we're currently blocking any further updates to rust-mozjs that are unrelated to error reporting.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4bb5822f9189b7c04101ba2fdfc99535ecd4bc27
2015-01-14 12:30:49 -07:00
Bruno de Oliveira Abinader
e3ab908834 servo: Merge #4618 - Check quirks mode in {Document,Element}::getElementsByClassName (from brunoabinader:getElementsByClassName-quirksMode); r=Ms2ger
Fixes #4604.

Source-Repo: https://github.com/servo/servo
Source-Revision: 151343cf3f423e3e4ac6961a0009781caa962aa6
2015-01-12 14:42:47 -07:00
Tom Schuster
37ca847c81 servo: Merge #4594 - Implement most of the important WindowProxy traps (from evilpie:window-proxy); r=jdm
After this patch somebody just needs to implement the new IndexedGetter (and probably frames/length) on window to fix #4589.

Source-Repo: https://github.com/servo/servo
Source-Revision: a227faa41610cdc826da4ec8d25839c2ec3061db
2015-01-12 09:45:47 -07:00
Ms2ger
b10ebc44e8 servo: Merge #4611 - Remove RethrowContentExceptions and related infrastructure (from Ms2ger:RethrowContentExceptions); r=jdm
We do not intend to implement the DOM in JS, so this code isn't necessary.

Source-Repo: https://github.com/servo/servo
Source-Revision: 665f0e9c77292a42aa5a939bd31886e3f371419e
2015-01-10 15:48:45 -07:00
Ms2ger
f3ffdb970d servo: Merge #4609 - Make Runnable::handler take self by value (from Ms2ger:runnable-self-by-value); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 879af966b3c18d9405b6f5837b39a28039db1eb3
2015-01-10 10:30:44 -07:00
Ms2ger
be5b838c95 servo: Merge #4608 - Rewrite ReverseChildrenIterator to return Temporary (from Ms2ger:ReverseChildrenIterator); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e17d390714c576f4a0667c2c431ab6da84c6eb4d
2015-01-10 09:51:44 -07:00
Ms2ger
9ad17a520b servo: Merge #4607 - Consolidate structured cloning code (from Ms2ger:clone); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a07c3eadb33eca1fbb2209d168c63c5ec3db23df
2015-01-10 09:18:45 -07:00
Martin Robinson
a7032c0b1a servo: Merge #4314 - More work on iframes updated via script (from mrobinson:iframes-2); r=jdm
iframes added or loaded via script are not reflected visibly in the content of a page. The next step in making this happen is to have compositor layers accurately reflect newly recreated or loaded iframes. This change allows iframes to appear, but there are still some further changes necessary to make the output correct and reliable.

Source-Repo: https://github.com/servo/servo
Source-Revision: 16c2025a4e30121baebde348e3c3f0e6ed197667
2015-01-09 17:51:44 -07:00
Jim Hoskins
5036cfd289 servo: Merge #4596 - Store HTMLIFrameElement sandbox attr as TokenList (from jimrhoskins:sandbox-tokenlist); r=jdm
Fixes #3758

Store the sandbox attribute of HTMLIFrameElement as a TokenList
internally. Use .tokens() to iterate over the tokens instead of
splitting on the string value.

The external interface for sandbox remains a DOMString, which will need
to be fixed when DOMSettableTokenList is implemented (#1717).

Source-Repo: https://github.com/servo/servo
Source-Revision: ebb702ab943a6baa971d316bf0e7a773d84b3710
2015-01-09 14:27:45 -07:00
Edit Balint
43cd366dda servo: Merge #4137 - CanvasRenderTask connected to Layout (from ebalint:canvas); r=jdm
Content of the canvas is drawn, tests/html/test_canvas.html now works.

Source-Repo: https://github.com/servo/servo
Source-Revision: da400a7a453eacf6f3089cc07e5dc61f385a0909
2015-01-09 12:06:47 -07:00
Ms2ger
4cf35a18ee servo: Merge #4585 - Remove the NavigatorInfo struct (from Ms2ger:NavigatorInfo); r=jdm
It serves no purpose.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6b3c05cdd229dd50161ab3cf957f6fc7a8dcb97e
2015-01-09 07:48:49 -07:00
Ms2ger
8dddd875d5 servo: Merge #4584 - Deny unsafe blocks in script (from Ms2ger:unsafe); r=jdm
As a first start, this allows them indiscriminately where used.

Source-Repo: https://github.com/servo/servo
Source-Revision: f74d5360ba30ec7aaa12f675eb267fd11053d8a8
2015-01-09 07:15:52 -07:00
Arpad Borsos
7999a073e6 servo: Merge #4586 - Fix assertion trying to remove a Node that has no parent (from Swatinem:noderemove); r=Ms2ger
fixes #4562

Source-Repo: https://github.com/servo/servo
Source-Revision: c338dbe947660c1647fa8c2eb4f2f57b0c4fadc3
2015-01-09 05:57:51 -07:00
Matthew Rasmus
8a04144529 servo: Merge #4575 - Post-rustup warning fixes (from mttr:warnings); r=jdm
Notes:

* This adds `#![allow(missing_copy_implementations)]` to components/*/lib.rs. I'm not sure how to approach the missing Copy warnings (are there things for which Copy should NOT be implemented, and how can I tell?) so I stuck this in to make life easier when looking through the warnings. I can easily remove this if necessary.
* This leaves the following type of warnings, which I couldn't figure out how to approach (I'll investigate it later if no one else wants to).
```
css/matching.rs:72:23: 72:35 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:72         this_as_query.equiv(other)
                                         ^~~~~~~~~~~~
css/matching.rs:95:10: 95:49 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:95 impl<'a> Equiv<ApplicableDeclarationsCacheEntry> for ApplicableDeclarationsCacheQuery<'a> {
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 0793137631cbe4ebbff8fb85639206ce8e41bbb7
2015-01-08 16:03:55 -07:00
Matt McCoy
4ee5b0a4cb servo: Merge #4566 - Fixes #4164 Make Constructor and new functions take GlobalRef by value (from mattnenterprise:globalref-by-value); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 7800d98728bfa1375ad8b6a2dac7f2f35603b6d1
2015-01-08 13:12:55 -07:00
Manish Goregaokar
acfb27cedb servo: Merge #4541 - Ban Cell<JS<T>> and Cell<JSVal<T>> (partial #4336) (from Manishearth:ban-stuff); r=jdm
Didn't do the `Vec<Temporary<T>>` banning since we might want to whitelist something there. I'll work on that next.

Source-Repo: https://github.com/servo/servo
Source-Revision: ec474ae835586c14ec4e1fb72196f2bc211f865f
2015-01-08 09:30:54 -07:00
Guillaume Bort
60c43609d0 servo: Merge #4069 - Fix #3936 – {Window,WorkerGlobalScope}.set{Timeout,Interval}(DOMString) (from guillaumebort:fix/3936); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: df6a7959df69bf98b397f088fc3cf1fad2cc0aaf
2015-01-08 08:48:54 -07:00
Ms2ger
b3c7f9d2ca servo: Merge #4554 - Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19 (from servo:rustup_20141221); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1d7148c79f9124779a910fd5291c5fa0543b2dae
2015-01-08 08:00:57 -07:00
Ms2ger
843040ab81 servo: Merge #4548 - Various cleanup (from Ms2ger:cleanup); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 65ee8166bd64e911502e29a050258b70d9f263aa
2015-01-05 01:27:48 -07:00
Ms2ger
2979891740 servo: Merge #4542 - Prepare for the rust upgrade (from servo:pre-rustup_20141221); r=saneyuki
In particular, this contains changes to qualify enums where rust will require it, and to stop using some features that will be removed.

Source-Repo: https://github.com/servo/servo
Source-Revision: ba8cf6b0e6145265f9472d4855f078d8b5943fe7
2015-01-04 12:39:47 -07:00
Megha Gupta
49ad060695 servo: Merge #4495 - Add HTMLElementTypeId enum (fixes #3625) (from MeghaGupta:typeid); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 2e17cae5d080db72d5f89733d19e0304857cfd34
2015-01-04 12:12:48 -07:00
Bharath M R
0948512050 servo: Merge #4533 - Issue 4497 Fix: Converts WorkerPostMessage into a Runnable (from catchmrbharath:4497); r=jdm
A lot of tests were failing when I ran `./mach test tests/wpt/web-platform-tests/workers --processes=4` and
`./mach test tests/wpt/web-platform-tests/XMLHttpRequest --processes=4` on master. So I could not completely test it. I verified that the tests that were failing were the same, before and after the change.

Is there any way to run it here?

Source-Repo: https://github.com/servo/servo
Source-Revision: 076e28795d90a9a8bb523774b993f841602ae9e6
2015-01-04 06:21:50 -07:00
Jim Hoskins
528d5f3f46 servo: Merge #4539 - Implement Document.defaultView - fixes #4518 (from jimrhoskins:default-view); r=jdm
Fixes: https://github.com/servo/servo/issues/4518
Source-Repo: https://github.com/servo/servo
Source-Revision: dd84ae6bfb46872dfb0f0a8dca680452dadce3f0
2015-01-03 15:51:45 -07:00
Ms2ger
03365eb590 servo: Merge #4535 - Stop using some obsolete features (from servo:pre-rustup_20141221); r=jdm
This prepares for the rust upgrade currently being conducted.

Source-Repo: https://github.com/servo/servo
Source-Revision: e8fac3681b690adb0796b2a807ac95bd9c13597a
2015-01-03 14:39:46 -07:00
Ms2ger
473efad71a servo: Merge #4526 - Move away from Root::deref (from servo:deref-1); r=Manishearth
This is a start towards fixing #3868. Not all callers have been fixed yet, so the `Deref` implementation remains for now.

Source-Repo: https://github.com/servo/servo
Source-Revision: 141b5d038fad3c0c44a6f1b309b8ca9edea54580
2015-01-02 09:22:51 -07:00
Ms2ger
987dcd9e44 servo: Merge #4528 - Stop using ptr.is_not_null() in script (from Ms2ger:is_not_null); r=larsbergstrom
This method is deprecated in rust master; removing its users in advance will
make a future rust upgrade smoother.

Source-Repo: https://github.com/servo/servo
Source-Revision: a61417e2a87004e30e2a02f2e6ae58629062e3d5
2015-01-01 14:42:44 -07:00
Shing Lyu
ff126d06a4 servo: Merge #4470 - Add "type" to Blob (from shinglyu:contentType); r=jdm
A follow-up for issue #1820, adds the optional "type" support.

Source-Repo: https://github.com/servo/servo
Source-Revision: 111a196e9d300164391d12ab292c1d4c0ef2b44a
2015-01-01 08:33:40 -07:00
yodalee
06783cabad servo: Merge #4496 - Issue4484 to js val convertible for str (from yodalee:issue4484-ToJSValConvertible-for-str); r=jdm
#4484
Add ToJSValConvertible trait to str type.

Source-Repo: https://github.com/servo/servo
Source-Revision: fda38cf673ed1fb0818e4e33c3e7b7bef1eff02a
2015-01-01 03:00:44 -07:00
Ms2ger
d3a579b56b servo: Merge #4520 - Use or_init for HTMLCanvasElement::GetContext (from Ms2ger:or_init); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 841f1b6f2559e7a33a1517fba53c12bbd67ed44f
2014-12-31 07:33:46 -07:00
Manish Goregaokar
93844b0dcd servo: Merge #4488 - Add a lint for usages of to_string() (from servo:into_string-lint); r=jdm
This is a rebase of #4366.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0da57abec6014f8a6edde9781598053deab996c7
2014-12-31 05:00:52 -07:00
Bruno de Oliveira Abinader
42b58cc1c9 servo: Merge #4515 - Codegen cleanup (from brunoabinader:codegen-cleanup); r=Ms2ger
Main changes:
- Whitespace (indent) fixes;
- CGIndent-related fixes;
- Removed consecutive empty lines;
- Removed empty lines before closing brackets;
- Codegen style fixes;

Tests:

We don't have a static code style analyzer yet, so I've checked using the following (together with manual lookup at some selected generated bindings):

1. Check for lines with wrong indentation (1 to 3 whitespaces at the beginning)
Command: ```$ pcregrep -r "^[ ]{1,3}[^ ]" components/script/dom/bindings/codegen/Bindings```
Expected: None
Actual: None

2. Check for lines with wrong indentation (5 to 7 whitespaces at the beginning)
Command: ```$ pcregrep -r "^[ ]{5,7}[^ ]" components/script/dom/bindings/codegen/Bindings```
Expected: None
Actual: None

3. Check for lonely semicolons
Command: ```$ pcregrep -r " \{0,\};" components/script/dom/bindings/codegen/Bindings```
Expected: None
Actual: None

4. Check for empty lines before closing brackets
Command: ```$ pcregrep -r -M "^$\n {0,}\}" components/script/dom/bindings/codegen/Bindings```
Expected: None
Actual: None

5. Check for consecutive empty lines
Command: ```$ pcregrep -r -M "^$\n^$\n" components/script/dom/bindings/codegen/Bindings```
Expected: None
Actual:
```components/script/dom/bindings/codegen/Bindings/ChildNodeBinding.rs
components/script/dom/bindings/codegen/Bindings/ElementCSSInlineStyleBinding.rs
components/script/dom/bindings/codegen/Bindings/ParentNodeBinding.rs
components/script/dom/bindings/codegen/Bindings/URLUtilsBinding.rs
components/script/dom/bindings/codegen/Bindings/URLUtilsReadOnlyBinding.rs
```
All of the above are ```[NoInterfaceObject]```, thus providing only imports. We shouldn’t, however, generate empty lines (investigate this later on).

Source-Repo: https://github.com/servo/servo
Source-Revision: 37a97f3273c442fa59a3f65e8300a2527b004036
2014-12-30 09:51:45 -07:00
Josh Matthews
b23f44d460 servo: Merge #4057 - Enable refcounting arbitrary DOM types (from jdm: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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2c259f477c41331e66beab8bda865971982a1ff4
2014-12-29 11:57:45 -07:00
Bruno de Oliveira Abinader
3767b96073 servo: Merge #4483 - Add support for named deleter (from brunoabinader:named-deleter); r=Ms2ger
Closes #4469.

Source-Repo: https://github.com/servo/servo
Source-Revision: f76a460c53dfddef74262eceaf4b163b551adc08
2014-12-29 10:21:51 -07:00
ProgramFOX
ab65bc022a servo: Merge #4486 - Added readonly flag for CSSStyleDeclaration (from ProgramFOX:readonly-csssd); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 366ea4fe79cd838ae66acc74d9fdc7dcb36bddae
2014-12-28 10:27:44 -07:00
Manish Goregaokar
2f9e35cd21 servo: Merge #4173 - plugins: Autogeneration of Reflectable; Inheritance lint (from Manishearth: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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 56d1b16d1b3a18d5ffa1d9c32562d3b209851711
2014-12-27 22:12:45 -07:00
Ms2ger
68127ba40c servo: Merge #4490 - Remove some transmute calls (from Ms2ger:transmutes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: dbb10747828b08f5dc9bcaea251e1f2d16f554fd
2014-12-27 12:27:46 -07:00
Manish Goregaokar
8e0ed407b9 servo: Merge #4485 - Replace most to_string calls by into_string calls (from servo:into_string); r=Ms2ger
`str::to_string()` goes through a `Formatter`, `str::into_string()` is a direct copy and is apparently 5× faster.

This is a rebase of the boring and bitrot-prone parts of #4366.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9857ea26cb9ee262654bee97322dbbf373486bff
2014-12-27 06:51:44 -07:00
Bruno de Oliveira Abinader
c0cc3d067b servo: Merge #4353 - Implement DOMTokenList.{add,remove,toggle} (from brunoabinader:domtokenlist); r=Ms2ger
Specs:
https://dom.spec.whatwg.org/#dom-domtokenlist-add
https://dom.spec.whatwg.org/#dom-domtokenlist-remove
https://dom.spec.whatwg.org/#dom-domtokenlist-toggle
https://dom.spec.whatwg.org/#concept-dtl-update
https://dom.spec.whatwg.org/#concept-ordered-set-serializer

Closes #3138.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3af73e9962fe810de0c556693ec2eb0559b06a67
2014-12-26 13:18:45 -07:00
Ms2ger
6a3e3e1407 servo: Merge #4467 - Implement HTMLElement.dataset (from servo:dataset); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 0e6304dcf7fd6712f4455151b55a361de857359d
2014-12-25 02:27:43 -07:00
Matt McCoy
ef0cd1128a servo: Merge #4479 - This fixes #4166. throw_dom_exception will take the GlobalRef by value (from mattnenterprise:globalref-by-value); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 57b6dc939734553287a02e3a42241715266995d5
2014-12-24 16:15:45 -07:00
thiagopnts
b7ee062862 servo: Merge #4477 - Use a descriptive enum instead of a bool in Element::update_inline_style (from thiagopnts:descriptive-enum); r=jdm
refs #4472

Source-Repo: https://github.com/servo/servo
Source-Revision: c35a18e81f943ae09db50afdf54a03dece153615
2014-12-24 10:45:45 -07:00