Commit Graph

224 Commits

Author SHA1 Message Date
Michael Wu
4d86b05893 servo: Merge #8273 - Minor cleanups for DOM (from michaelwu:cleanups); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: c887aaf6943c3945aed391e6fbbc23c709a4517f
2015-10-31 00:59:25 +05:00
Bobby Holley
3eb79a9936 servo: Merge #8098 - Track event state changes on Document and do the dirtying from layout (from bholley:dirty_from_layout); r=jdm
This is a first step in fixing #6942.

Source-Repo: https://github.com/servo/servo
Source-Revision: 285e29c06637f31a8b8a27c2e454468717924ebd
2015-10-28 23:54:53 +05:00
Tetsuharu OHZEKI
c5eb63ef20 servo: Merge #8183 - script: Element.webkitMatchesSelector() (from saneyuki:matches); r=nox
spec:
- 9ac9c15486
  - https://github.com/whatwg/compat/issues/3

Source-Repo: https://github.com/servo/servo
Source-Revision: 47a8256c2cdd254943aaaf71e68204f9dcd70744
2015-10-25 02:47:30 -05:00
Anthony Ramine
db09beb657 servo: Merge #8041 - Introduce trait Castable (from nox:castable); r=jdm
Removes all those messy FooCast structures in InheritTypes.rs.

Source-Repo: https://github.com/servo/servo
Source-Revision: 674589c370d978f543e71f995d58c5b28e6e9842
2015-10-21 07:57:32 -06:00
Adam Szopa
b2986ec771 servo: Merge #8099 - Remove explicit lifetimes which can be elided (from Darktori:master); r=mbrubeck
Fixes https://github.com/servo/servo/issues/8069

Source-Repo: https://github.com/servo/servo
Source-Revision: 941c06eb99533c6c1d55b4ad3b51804badf48a23
2015-10-20 17:30:57 -06:00
KALPESH KRISHNA
506f43168f servo: Merge #8068 - Implementing getAttributeNode() and similar methods (from martiansideofthemoon:my-code-fix); r=Manishearth
Implementing getAttributeNode() and similar methods

Attempting to solve #8066 Does it look good so far @Manishearth ?

Source-Repo: https://github.com/servo/servo
Source-Revision: 2e308e9eccb6c6d31906660bdfcf1a304f85dd56
2015-10-19 07:58:41 -06:00
Anthony Ramine
95d40680d6 servo: Merge #8060 - Implement Deref<Target=T> for JS<T> where T: Reflectable (from nox:deref-js); r=Ms2ger
We can only borrow `JS<T>` from rooted things, so it's safe to deref it.
The only types that provide mutable `JS<T>` things are `MutHeap<JS<T>>` and
`MutNullableHeap<JS<T>>`, which don't actually expose that they contain
`JS<T>` values.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a376aa75d5de8781b17a673850860f8afd2c28f
2015-10-19 06:32:05 -06:00
Bobby Holley
786aa62a34 servo: Merge #7935 - Move event state from Node to Element (from bholley:eventstate_element); r=nox
Just getting my feet wet with Rust here. Please feel free to nit the hell out of it stylistically and idiomatically. :-)

Source-Repo: https://github.com/servo/servo
Source-Revision: ff2151b8bbc62fa29c90a429b7a4f12520420b6e
2015-10-19 02:47:21 -06:00
Till Schneidereit
951525599f servo: Merge #7415 - Improve implementation of DOMRect and implement DOMRectReadOnly (from tschneidereit:dom-rect); r=nox
Passes most tests from test-css. The remaining ones should pass once we have https://github.com/w3c/csswg-test/pull/834.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 810d28a2574cd288ddfa5737ade417ea53a4b690
2015-10-17 15:17:27 -06:00
Anthony Ramine
39c1957849 servo: Merge #8020 - Generate all Derived implementations in codegen (from nox:codegen-derived); r=Ms2ger
Follow-up of #7873.

@Ms2ger r? :)

Source-Repo: https://github.com/servo/servo
Source-Revision: 417cf5738e4609f4b2e34e9e0c4f7ef68f087432
2015-10-15 12:53:08 -06:00
Anthony Ramine
c60f627416 servo: Merge #7873 - Generate the various TypeId enums in codegen (from nox:codegen-typeid); r=Ms2ger
This frees us forever from caring about maintaining these enums. The last commit removes their use from the initialisation of interface objects derived from Node.

Source-Repo: https://github.com/servo/servo
Source-Revision: 32daa17d5cbcad02db0713e21e52410cdc60480e
2015-10-14 12:47:48 -06:00
Corey Farwell
db77d6a8e3 servo: Merge #7841 - Implement <body>'s "text" attribute (from frewsxcv:htmlbodyelement-text); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1029feb55d004e4417dd6cfdcb864d18871ae74a
2015-10-09 06:11:46 -06:00
Anthony Urena
4de60083e9 servo: Merge #7882 - Refactor Error enum usage to consistently be qualified (from anthgur:consistent-enum-use); r=Ms2ger
Closes #7869

Source-Repo: https://github.com/servo/servo
Source-Revision: f5cd90805ec67fb52f73ec4cef9cef881a67522d
2015-10-06 04:58:17 -06:00
Ms2ger
6bcabd116a servo: Merge #7874 - Define the parsed attribute getters for HTMLTableCellElement on LayoutJS (from Ms2ger:layoutjs-tdth); r=jdm
This documents their intended usage and prevents script callers from using
them.

Source-Repo: https://github.com/servo/servo
Source-Revision: 50db64a20ec8a5dac6e98c4ab654ab0ceb5f8e82
2015-10-06 01:57:05 -06:00
Ms2ger
6d5ec453b8 servo: Merge #7867 - Move some methods from RawLayoutElementHelpers to LayoutElementHelpers (from Ms2ger:layoutjs); r=nox
This is part of a long-term plan to ensure layout never has access to
unwrapped pointers to DOM objects. The remaining methods on the
RawLayoutElementHelpers trait are harder to move, because of the lifetimes in
their signatures.

Source-Repo: https://github.com/servo/servo
Source-Revision: a350b215cc3e943985a66f1485c7eac7f4b9832e
2015-10-05 08:19:21 -06:00
Corey Farwell
230548b0d6 servo: Merge #7683 - Implement size attribute for <font> element (from frewsxcv:html-font-element-size-attr); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 7debfd1f4c30a018f46caa1e6bffa165e1ef7515
2015-10-05 02:33:02 -06:00
Glenn Watson
5c835e208c servo: Merge #7795 - Split Au type into separate crate, with minimal dependencies (from glennw:app-units-crate); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 35888e5a1d48511ec54ddf8c58f1c7b0c47c5d3c
2015-09-30 15:19:33 -06:00
Patrick Walton
0582e9c404 servo: Merge #7736 - Less ambitious optimize set property (from pcwalton:less-ambitious-optimize-set-property); r=Ms2ger
Splitting the parts that have r+ out of #6823.

Source-Repo: https://github.com/servo/servo
Source-Revision: d7b875170956f3a26b46e49d3d5c990fa4acc974
2015-09-24 19:57:40 -06:00
Ravi Shankar
62e8ea2732 servo: Merge #7698 - sorted the declarations in various files (from Wafflespeanut:sorting); r=frewsxcv
This is a direct extract from my abandoned PR for a lint (#7546), along with some rather clumsy modifications (only on `components/script/dom/mod.rs` and `components/style/lib.rs`), because I had to sort some of the files again to make peace with tidy, which hasn't been educated about sorting yet!

Source-Repo: https://github.com/servo/servo
Source-Revision: a7208869f2903e36f9b2f540b55b50283d7df466
2015-09-23 15:02:56 -06:00
Corey Farwell
3733d449a0 servo: Merge #7712 - Prefer element casting over mem::transmute (from frewsxcv:no-mem-transmute); r=saneyuki
None

Source-Repo: https://github.com/servo/servo
Source-Revision: b66dd621775f2277b2cd2424de8f4cb7d8efc9b6
2015-09-22 16:48:22 -06:00
Ali Sabil
651a741974 servo: Merge #7611 - Cache the id attribute on Element (from nox:cache-element-id); r=frewsxcv
Thanks to @asabil for the original work, I only rebased it.

Fixes #6359 and #7040.

Source-Repo: https://github.com/servo/servo
Source-Revision: d1269294e6c602c91012397c7584e3c2077e21ac
2015-09-20 09:23:20 -06:00
Brandon Fairchild
704178a0dd servo: Merge #7662 - Check for multiple import blocks separated by whitespace (from nerith:import); r=frewsxcv
Fixes #7381.

Source-Repo: https://github.com/servo/servo
Source-Revision: a0d3c9223f09757124b1520c4f17e94fa8bbe249
2015-09-19 13:34:51 -06:00
Simon Sapin
38b5ea4322 servo: Merge #7555 - Custom properties, take 2 (from SimonSapin:custom-properties++); r=mbrubeck
Support `var()` in shorthand properties, and fix various bugs.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b6d4daf85d672265824a014dba99c94c8c08814
2015-09-17 06:50:57 -06:00
Corey Farwell
3a2d745bcb servo: Merge #7619 - Implement <font> 'face' attribute (from frewsxcv:font-face); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 25abe646f860edc542169fdd1b53a4fd7fb615f6
2015-09-14 18:32:17 -06:00
Anthony Ramine
21dcce981a servo: Merge #7606 - Move the type_id fields to DOMClass (from nox:move-typeid); r=jdm
Cc @michaelwu.

Source-Repo: https://github.com/servo/servo
Source-Revision: d5ee58caf269779e86b2efc50ddf37d3e4eba9b9
2015-09-13 11:53:42 -06:00
Anthony Ramine
ed7c59f4c3 servo: Merge #7531 - Implement <template> (from nox:template); r=Ms2ger
All tests using iframes can't currently pass, same for innerHTML-related tests with <template> elements. The latter contradicts the spec, see the links below.

Apart from this, they work, AFAICT.

https://github.com/servo/html5ever/issues/164
https://www.w3.org/Bugs/Public/show_bug.cgi?id=27314

Source-Repo: https://github.com/servo/servo
Source-Revision: 5a0be12e43f92fc64b1d8f5d35f9dadaa4b53521
2015-09-08 02:29:00 -06:00
Manish Goregaokar
46699136ac servo: Merge #7536 - More clippy fixes (from Manishearth:clippyfix); r=Ms2ger
Elided almost all the lifetimes and removed needless returns. Mostly done by sed + manual fixes.

r? @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: c2c2646d37614ece5869af861993c3d619f6e003
2015-09-04 07:59:04 -06:00
Simon Sapin
3844781584 servo: Merge #7518 - Initial support for CSS Custom Properties (from servo:custom-properties); r=pcwalton
https://drafts.csswg.org/css-variables/

Missing:

* `var()` in shorthand property declarations.
* Correct handling of EOF in custom property declarations.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 05deb3dcc8be9a0a623536467628aa68ae754918
2015-09-03 16:09:02 -06:00
Prabhjyot Singh Sodhi
fc64c48d01 servo: Merge #7511 - make AttrVal tokens() and atom() return or panic (from psdh:attrtokato); r=Ms2ger
Fixes #7479

Source-Repo: https://github.com/servo/servo
Source-Revision: da02dba9793f373c6c9cdc1e0bd1c3411cfcc4ba
2015-09-02 15:03:10 -06:00
Anthony Ramine
0d2abbdbca servo: Merge #7452 - Introduce VirtualMethods::attribute_mutated() (from nox:cleanup-attributes); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: eaf90c0b1c14717fb580bb0bdb8f6c4db363ace6
2015-09-02 08:14:33 -06:00
Simon Sapin
3d8a9be409 servo: Merge #7496 - Implement CSS3 Calc (from servo:calc_); r=SimonSapin
This is #7185 with one commit added to make it build merged with master, which got support for the `ch` unit in the meantime.

Source-Repo: https://github.com/servo/servo
Source-Revision: a547ae6826cf171c42b090408a4c20d58d1829d9
2015-09-02 02:33:18 -06:00
Simon Sapin
d67af4db2f servo: Merge #7509 - Upgrade to rustc 1.4.0-dev (cb9323ec0 2015-09-01) (from servo:rustup_2015-09-01); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: f49615ca7b5d98ee603cf42f705073fbe4d414fb
2015-09-02 01:31:23 -06:00
wilmoz
b001887fd5 servo: Merge #7475 - Make test-tidy check that braces have spaces before or after them (from wilcus:checkBracesSpaces); r=jdm
https://github.com/servo/servo/issues/7413
Posible future/past bug fixed in components/script/timers.rs

Source-Repo: https://github.com/servo/servo
Source-Revision: 60c72f601c4dd7cfbc8a4a983099a4b323f1516a
2015-08-31 13:18:23 -06:00
Anthony Ramine
8a70682e28 servo: Merge #7416 - Make the traits for the IDL interfaces take &self (from nox:methods-ref); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: 71b277d5675556e61a82ae9dbf3105449c3a8275
2015-08-27 15:08:41 -06:00
Anthony Ramine
fa8c26b4c5 servo: Merge #7401 - Remove helper traits (from nox:rm-helpers); r=Manishearth
Now that `JSRef<T>` is gone, there is no need to have helper traits.

Source-Repo: https://github.com/servo/servo
Source-Revision: 909429702972d53bf02dfe9a4aa93ea0cb588cf4
2015-08-27 09:38:48 -06:00
João Oliveira
086230053e servo: Merge #7361 - make dom_struct derive HeapSizeOf (from jxs:master); r=Ms2ger
closes #7357

Source-Repo: https://github.com/servo/servo
Source-Revision: 532fd19d69fd11d06bca7539c722a46fab2c4419
2015-08-27 02:35:45 -06:00
Manish Goregaokar
3dc847d211 servo: Merge #7397 - Remove doublepointer in VirtualMethods, and from_borrowed_ref (from Manishearth:doublepointer-meet-fire); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 48945b0fc1b1f1bee77f6cb30ac10e17614ef283
2015-08-26 15:01:12 -06:00
Simon Sapin
c9466d5746 servo: Merge #7334 - Parse :active pseudo-class selector (from servo:active); r=SimonSapin
This is #7258 with a spec link added in doc-comment.

The pseudo-class is never matched, but this can still help with stylesheets like `a:hover, a:active { color: something }` where failing to parse one pseudo-class makes the entire selector list invalid.

I filed #7333 about actually making it match.

Source-Repo: https://github.com/servo/servo
Source-Revision: fa06a96f8a880a051ad4cad2489042547dd7f455
2015-08-24 04:23:13 -06:00
Johann Tuffe
25ce9ab4be servo: Merge #7265 - Add alphabetical order check for use statements (from tafia:tidy-use); r=Ms2ger
close #7112

Source-Repo: https://github.com/servo/servo
Source-Revision: a5fbb2f2a6fa79755f975feff2435abb6a5dd0e9
2015-08-20 07:43:56 -06:00
João Oliveira
5ce909571e servo: Merge #7257 - Replace uses of for foo in bar.iter(), (from jxs:master); r=Ms2ger
and `for foo in bar.iter_mut(), and for foo in bar.into_iter()
(continuation of #7197)

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d6d6a05009606dfbbfc9765d7dc2c745c18f6a5
2015-08-18 02:46:46 -06:00
Simon Sapin
ef99399e61 servo: Merge #7188 - Fix Element::set_inline_style_property_priority’s handling of priority (from servo:set_inline_style_property_priority); r=nox
Thanks to @michaelwu for pointing out a copy-paste error.

Source-Repo: https://github.com/servo/servo
Source-Revision: 31413f4313fb96f9d17e54157d404c7633e59fc2
2015-08-15 09:17:31 -06:00
Bogdan Cuza
e4347f5a6a servo: Merge #7097 - Measure heap memory usage for more types. Fixes #6951 (from boghison:memtypes); r=jdm
Also adds HeapSizeOf implementations/derive for some types. I've used "Cannot calculate Heap size" as a reason everywhere, because my imagination is rather limited. If you'd like me to change this message for specific types, please write something like this: "Trusted - Cannot calculate Heap size for Trusted" so that it would be easier for me to replace them through a script :)

Source-Repo: https://github.com/servo/servo
Source-Revision: a03616f379c255cc6c9b6e1d04dd7d98bd9926ce
2015-08-13 13:16:14 -06:00
Ms2ger
aa878ef549 servo: Merge #7046 - Implement a base_url getter and use it for style attributes (from Ms2ger:base-url); r=dzbarsky
Source-Repo: https://github.com/servo/servo
Source-Revision: 530d4547c945fbf120d546d6e9a31b8f3bacc78f
2015-08-08 06:53:32 -06:00
Patrick Walton
8c7f5b96ae servo: Merge #7043 - script: Make the legacy presentational attributes on <td> apply to <th> too (from pcwalton:th-width); r=Ms2ger
Makes the Google SERPs not so narrow.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 17263a525b316d1d02b1cc3181ec9aef3b7001e6
2015-08-07 00:40:54 -06:00
Josh Matthews
eed904f282 servo: Merge #6959 - Fix warnings (from servo:warnings_); r=jdm
Adds on top of #6949.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d8825c25c6eed4dc22b10e668b03fc79056702b
2015-08-05 03:44:22 -06:00
Josh Matthews
f99a26cba8 servo: Merge #6874 - Start reporting memory usage for Window and all nodes in all DOM tree… (from jdm:domreporting); r=njn
…s for frame treese in script tasks.

This underreports by a significant amount, since only Document, Window and CharacterData (ie. text) nodes are fully represented. That being said, every HTML element in the tree is measured, but only counted as a Node. It's easy to improve this, it just requires adding the appropriate HeapSizeOf derives and increasing the granularity of `measure_memory_for_eventtarget`. google.com shows a dom-tree value of 0.24 MB for me at the moment.

r? @nnethercote

Source-Repo: https://github.com/servo/servo
Source-Revision: 84e25befdd97cf74fb00707dbe150d59d980e977
2015-08-03 21:24:41 -06:00
Glenn Watson
902d5e4513 servo: Merge #6903 - Fix percentage height calculation, absolute containing block height calculations (from glennw:fix-height-again); r=pcwalton
It's not possible to correctly determine during the css cascade whether the container height
is explicitly specified. Additionally, the spec https://drafts.csswg.org/css2/visudet.html#the-height-property says this should affect the *used* height, rather than the computed height.

This significantly improves the layout in #6643.

Source-Repo: https://github.com/servo/servo
Source-Revision: 028707f5cd3263fd1476669207f67d5b9d5d4806
2015-08-03 10:38:21 -06:00
Patrick Walton
09c20effcf servo: Merge #6896 - script: Use Arc::make_unique instead of Arc::get_mut when updating inline styles (from pcwalton:fix-particles-crash); r=SimonSapin
Transitions make the reasoning in the comment in the relevant sections
not true.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 0c6e271cd3d5e2a7f141cae811d92b8fd6370b18
2015-08-02 10:10:39 -06:00
Simon Sapin
c302332aab servo: Merge #6741 - Fix CSSStyleDeclaration::setPropertyPriority and some refactoring (from servo:fix-setpropertypriority); r=pcwalton
r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: c6b043582b41434c59a21eed5c9258ae3c0fb437
2015-08-01 15:00:06 -06:00
Tom Schuster
e61ba08a8a servo: Merge #5851 - Implement the HTML background attribute (from evilpie:background); r=SimonSapin
Fixes #5835

Source-Repo: https://github.com/servo/servo
Source-Revision: 58fa3b69b76387958db45bc9831ac7c79caab2ea
2015-07-29 14:37:45 -06:00