Commit graph

5232 commits

Author SHA1 Message Date
Ms2ger
9a909229e3 Remove EnumEntry, as Rust already provides O(1) access to the string length. 2014-04-06 19:16:24 +02:00
Ms2ger
3e0d4a2509 Move all the generated code for enums into CGEnum. 2014-04-06 19:06:58 +02:00
Ms2ger
bb732ef4e6 Introduce a set_uint_attribute method. 2014-04-06 14:19:30 +02:00
lpy
ce363ba43a Make box_ not Option in block flows.(fixes #2012) 2014-04-06 19:24:31 +08:00
Manish Goregaokar
c397c5233d fix visibility warnings in script crate (#2044) 2014-04-06 02:53:55 +05:30
Manish Goregaokar
57f63b350e fix visibility warnings in main crate (#2044) 2014-04-06 02:53:33 +05:30
bors-servo
4386bae576 auto merge of #2034 : saneyuki/servo/timer, r=jdm
Now, our rust compiler has `std::io::timer`!
2014-04-05 06:46:27 -04:00
bors-servo
44e7e365c9 auto merge of #2043 : Manishearth/servo/case-insen, r=Ms2ger
(See https://github.com/mozilla/servo/pull/1968)
2014-04-05 05:01:30 -04:00
Manish Goregaokar
05e793f4fb make attr getters/setters case insensitive (#1962) 2014-04-05 14:11:33 +05:30
bors-servo
2a5f82a764 auto merge of #2032 : brunoabinader/servo/html-whitespace, r=Ms2ger
Specs:
http://dom.spec.whatwg.org/#concept-ordered-set-parser
http://encoding.spec.whatwg.org/#ascii-whitespace

This PR implements the HTMLSpaceCharSplits iterator, used to split a string in a subset of strings separated by valid HTML space characters. Its first usage is upon splitting ```class``` attribute values.

Closes #1840.
2014-04-05 04:04:34 -04:00
bors-servo
0f0b0b33bf auto merge of #2038 : SimonSapin/servo/min-height-collapse, r=pcwalton
[Relevant spec](http://dev.w3.org/csswg/css2/box.html#collapsing-margins):

> top and bottom margins of a box that does not establish a new block formatting context and that has zero computed 'min-height', zero or 'auto' computed 'height', and no in-flow children
2014-04-04 23:04:37 -04:00
Tetsuharu OHZEKI
7019ba1bc8 Use std::io::timer instead of servo_util::time::Timer. 2014-04-05 10:50:27 +09:00
bors-servo
e3cc46a782 auto merge of #2042 : SimonSapin/servo/silence-ua-stylesheet, r=jdm
r? @Ms2ger
2014-04-04 21:01:43 -04:00
bors-servo
ef5567b585 auto merge of #1994 : hyunjunekim/servo/try, r=jdm
#1991
2014-04-04 20:01:47 -04:00
bors-servo
83aabe327d auto merge of #2041 : mozilla/servo/rustup_20140321b, r=larsbergstrom 2014-04-04 18:52:50 -04:00
Josh Matthews
4b8254f32b Fix tests. 2014-04-04 18:45:43 -04:00
Ms2ger
ebc51c268a Update to merged commits in submodules. 2014-04-04 22:11:14 +02:00
Ms2ger
fb09979502 Address review comments. 2014-04-04 21:30:33 +02:00
Simon Sapin
ac2b7c6700 Fix the silencing of CSS errors in the UA stylesheet. 2014-04-04 19:53:14 +01:00
Ms2ger
31eee791dd Upgrade rust. 2014-04-04 20:10:32 +02:00
Simon Sapin
a24e52ae99 Update fontconfig submodule for https://github.com/mozilla-servo/fontconfig/pull/1
This of course depends on https://github.com/mozilla-servo/fontconfig/pull/1 being merged.
2014-04-04 18:45:21 +01:00
Simon Sapin
3a829d084d 'min-height' can prevent margin collapsing through an element, like 'height' 2014-04-04 18:24:37 +01:00
bors-servo
7ece5f92db auto merge of #1971 : Constellation/servo/quick-fail-selector-matching, r=SimonSapin
Restart selector matching from an appropriate selector

Introducing 3 matching failure statuses,

+ NotMatchedGlobally
+ NotMatchedAndRestartFromClosestDescendant
+ NotMatchedAndRestartFromClosestLaterSibling

When NotMatchedGlobally appears, stop selector matching completely since
the succeeding selector never matches.
It is raised when
+ Child selector cannot find the candidate element
+ Descendant selector cannot find the candidate element

When NotMatchedAndRestartFromClosestDescendant appears, the selector
matching does backtracking and restarts from the closest Descendant
selector.
It is raised when
+ NextSibling selector cannot find the candidate element.
+ LaterSibling selector cannot find the candidate element.
+ Child selector doesn't match on the found element.

When NotMatchedAndRestartFromClosestLaterSibling appears, the selector
matching does backtracking and restarts from the closest LaterSibling
selector.
It is raised when
+ NextSibling selector doesn't match on the found element.

For example, when the selector "d1 d2 a" is provided and we cannot *find*
an appropriate ancestor node for "d1", this selector matching raises
NotMatchedGlobally since even if "d2" is moved to more upper node, the
candidates for "d1" becomes less than before and d1 .

The next example is siblings. When the selector "b1 + b2 ~ d1 a" is
providied and we cannot *find* an appropriate brother node for b1,
the selector matching raises NotMatchedAndRestartFromClosestDescendant.
The selectors ("b1 + b2 ~") doesn't match and matching restart from "d1".

The additional example is child and sibling. When the selector
"b1 + c1 > b2 ~ d1 a" is provided and the selector "b1" doesn't match on
the element, this "b1" raises NotMatchedAndRestartFromClosestLaterSibling.
However since the selector "c1" raises
NotMatchedAndRestartFromClosestDescendant. So the selector
"b1 + c1 > b2 ~ " doesn't match and restart matching from "d1".
2014-04-04 11:19:36 -04:00
Yusuke Suzuki
55cc9ccf22 Restart selector matching from an appropriate compound selector
Introducing 3 matching failure statuses,

    NotMatchedAndRestartFromClosestLaterSibling
    NotMatchedAndRestartFromClosestDescendant
    NotMatchedGlobally

When NotMatchedGlobally appears, stop selector matching completely since
the succeeding selector never matches.
It is raised when
    Child combinator cannot find the candidate element
    Descendant combinator cannot find the candidate element

When NotMatchedAndRestartFromClosestDescendant appears, the selector
matching does backtracking and restarts from the closest Descendant
combinator.
It is raised when
    NextSibling combinator cannot find the candidate element.
    LaterSibling combinator cannot find the candidate element.
    Child combinator doesn't match on the found element.

When NotMatchedAndRestartFromClosestLaterSibling appears, the selector
matching does backtracking and restarts from the closest LaterSibling
combinator.
It is raised when
    NextSibling combinator doesn't match on the found element.

For example, when the selector "d1 d2 a" is provided and we cannot *find*
an appropriate ancestor node for "d1", this selector matching raises
NotMatchedGlobally since even if "d2" is moved to more upper node, the
candidates for "d1" becomes less than before and d1 .

The next example is siblings. When the selector "b1 + b2 ~ d1 a" is
providied and we cannot *find* an appropriate brother node for b1,
the selector matching raises NotMatchedAndRestartFromClosestDescendant.
The selectors ("b1 + b2 ~") doesn't match and matching restart from "d1".

The additional example is child and sibling. When the selector
"b1 + c1 > b2 ~ d1 a" is provided and the selector "b1" doesn't match on
the element, this "b1" raises NotMatchedAndRestartFromClosestLaterSibling.
However since the selector "c1" raises
NotMatchedAndRestartFromClosestDescendant. So the selector
"b1 + c1 > b2 ~ " doesn't match and restart matching from "d1".
2014-04-05 00:07:33 +09:00
Bruno de Oliveira Abinader
c451b1c9dc Adding .DS_Store to list of ignored files 2014-04-04 09:08:36 -04:00
Bruno de Oliveira Abinader
0b24ef4cf8 Added HTML space characters check content test 2014-04-04 09:08:36 -04:00
Bruno de Oliveira Abinader
943743195f Split class names using split_html_space_chars helper function 2014-04-04 09:08:36 -04:00
Bruno de Oliveira Abinader
594df4d696 Implement split_html_space_chars helper function 2014-04-04 09:08:36 -04:00
hyunjunekim
a344d465e8 documnet location 2014-04-04 21:18:30 +09:00
bors-servo
fe1615bc3d auto merge of #2033 : larsbergstrom/servo/disable_parallel_layout, r=metajack
Until we land a fix for #1926, set the default number of threads for parallel layout to 1 to avoid races, a double-borrow, and task failure resulting in all cores spinning indefinitely.

r? @metajack
2014-04-03 23:46:47 -04:00
Lars Bergstrom
ccc7c8b497 Disable parallel layout 2014-04-03 20:40:48 -05:00
bors-servo
3ec22157ca auto merge of #1988 : pcwalton/servo/acid2-2, r=SimonSapin
r? @metajack @SimonSapin @larsbergstrom @june0cho @hyunjunekim
2014-04-03 21:01:48 -04:00
Simon Sapin
9e3f7a005d Computed value of 'height: <percentage>' is 'auto' in some cases.
See http://dev.w3.org/csswg/css2/visudet.html#propdef-height

This is necessary but not sufficient for #2029.

A bug fix in the previous commit "broke" Acid 2 because that bug was hiding
this one. This makes Acid 2 pass again.
2014-04-03 14:51:19 -07:00
Simon Sapin
8e14579797 Adress more #1988 (Acid 2) review comments. 2014-04-03 14:51:19 -07:00
Patrick Walton
9712e6d124 layout: Address review comments for min-height and max-height
computation
2014-04-03 14:51:19 -07:00
Patrick Walton
56096503b0 layout: Address some more review comments 2014-04-03 14:51:19 -07:00
Patrick Walton
aabda89a90 layout: Fix percentages in relatively positioned elements 2014-04-03 14:51:19 -07:00
Patrick Walton
2e5b210c95 test: Fix some reftests. 2014-04-03 14:51:18 -07:00
Patrick Walton
c49f23ffb2 layout: Address review feedback. 2014-04-03 14:51:18 -07:00
Patrick Walton
30b7f5d0ad support: Update submodules. 2014-04-03 14:50:57 -07:00
Patrick Walton
42170c7585 test: Add many reftests for parts of Acid2. 2014-04-03 14:50:57 -07:00
Hyun June Kim
4c53a21aa3 layout: Implement pseudo-elements. 2014-04-03 14:50:57 -07:00
Junyoung Cho
901c4483b2 layout: Implement enough of automatic table layout to pass Acid2. 2014-04-03 14:50:57 -07:00
Patrick Walton
10aed5bc1f layout: Rewrite the margin collapse code to work with negative margins. 2014-04-03 14:50:57 -07:00
Patrick Walton
392afdb014 layout: Implement -servo-minimum-line-height 2014-04-03 14:50:57 -07:00
Patrick Walton
98bf325e76 layout: Support multiple boxes per node; don't store fixed/absolute
descendant links separately
2014-04-03 14:50:56 -07:00
Patrick Walton
4fd950eae0 layout: Update parallel.rs to use OpaqueNodeMethods 2014-04-03 14:50:56 -07:00
Patrick Walton
e6665a2f14 layout: Take padding into account for inline boxes 2014-04-03 14:50:56 -07:00
Patrick Walton
9874d0f9d3 layout: Take min-height and max-height into account 2014-04-03 14:50:56 -07:00
Patrick Walton
cd9d824c21 servo: Implement stacking contexts and allow multiple layers per
pipeline. This handles fixed positioning mostly correctly.
2014-04-03 14:50:56 -07:00