| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | | |
[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
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | | |
r? @Ms2ger
|
| |/ / |
|
|\ \ \
| | | |
| | | |
| | | | |
#1991
|
| | |/
| |/| |
|
| | | |
|
| | | |
|
| | | |
|
| |/
|/| |
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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".
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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".
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| | |
computation
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
descendant links separately
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
pipeline. This handles fixed positioning mostly correctly.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
`line-height`, and the infrastructure needed for derived properties to
work.
Eventually I would like this to be used for text decorations, like
WebKit does with `-webkit-text-decorations-in-effect`.
|
| | |
|
| |
| |
| |
| | |
node. (#2027)
|
|\ \
| | |
| | |
| | | |
see #2019
|
| | | |
|
| | | |
|
|/ /
| |
| | |
Remove a comment that was about a macro that was removed in a7ef1cd35e9347a285f245041db4eb94047f4ab0
|
| |
| |
| |
| |
| |
| |
| | |
A HashMap allows easily looking up a timer and canceling it in
Window.ClearTimeout.
Fixes #1477.
|
| | |
|
| |
| |
| |
| | |
src/components/style/properties.rs.mako
|