Simon Sapin
69d398f29a
Update to rust-cssparser 0.4.0
2015-11-05 08:57:01 +01:00
Bobby Holley
7dba4447f1
Store pristine element state rather than a set of changes.
...
This is the strategy we'll need to take for attributes, and so this change
puts us in a position to handle attributes and state the same way.
This does mean that we stop taking care to track the situations where our
state has reverted to the original state, with no net change. I think that's
probably of negligible value though.
2015-11-04 19:09:58 -08:00
Bobby Holley
d89816bb5f
Consider all the pseudo-classes in a given compound selector when computing restyle hints, not just the rightmost one.
...
For some reason when I wrote this code I mixed up the rules for pseudo-elements
(rightmost, maximum of one) with those of pseudo-classes (which have no such
restriction). This caused a correctness issue which can be demonstrated with the
associated reftest modification.
2015-11-04 19:01:50 -08:00
Simon Sapin
80dbd29528
counter-reset defaults to 0, not 1.
2015-11-04 10:55:16 +01:00
Simon Sapin
75bc88b3d4
Counter names serialize as identifiers, not strings.
2015-11-04 10:29:25 +01:00
bors-servo
5070c873d0
Auto merge of #8111 - gilles-leblanc:issue-8002, r=SimonSapin
...
Compute value of float according to position value
According to CSS2 Section 9.7, if 'position' has a value of 'absolute'
or 'fixed' the computed value of 'float' should be 'none'.
This changes the float to a single_keyword_computed which checks the
positioned value of the element to compute the float value.
Fixes #8002
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8111 )
<!-- Reviewable:end -->
2015-11-03 21:39:32 +05:30
David Zbarsky
00980ea595
Implement calc expressions for more value types
2015-11-01 23:16:14 -08:00
Bobby Holley
45fc7f2930
Implement restyle hints for state changes.
2015-10-31 14:28:52 -07:00
Manish Goregaokar
184b2bacf3
Fix serde_macros
2015-10-28 21:53:15 +05:30
Manish Goregaokar
ce5586f74a
Update euclid to 0.3
2015-10-28 21:34:23 +05:30
Gilles Leblanc
725484d619
Compute value of float according to position value
...
According to CSS2 Section 9.7, if 'position' has a value of 'absolute'
or 'fixed' the computed value of 'float' should be 'none'.
This changes the float to a single_keyword_computed which checks the
positioned value of the element to compute the float value.
Fixes #8002
2015-10-23 20:56:52 -04:00
Adam Szopa
88991013ab
Remove explicit lifetimes which can be elided.
2015-10-21 01:27:48 +02:00
Eli Friedman
3a451ff845
Add support for pre-wrap
and pre-line
values for white-space
.
...
This is mostly straightforward. I had to modify a couple of places
which were accidentally discarding whitespace.
Fixes #1513 .
2015-10-20 10:44:51 -07:00
Corey Farwell
20beaf5af3
Fix issues found by rust-clippy
2015-10-12 20:21:49 -04:00
bors-servo
0f8493a566
Auto merge of #7918 - nox:partialeq-font, r=mbrubeck
...
Derive PartialEq on the style Font structure
We check the hash first.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7918 )
<!-- Reviewable:end -->
2015-10-10 12:26:07 -06:00
bors-servo
ab42ca4296
Auto merge of #7825 - eefriedman:div-align, r=mbrubeck
...
Fully implement the "align descendants" rule for div.
This adds -servo-left and -servo-right to complement -servo-center.
~~This intentionally doesn't try to address issue #7301.~~ Commit added to address #7301 .
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7825 )
<!-- Reviewable:end -->
2015-10-08 12:20:55 -06:00
Anthony Ramine
6d6dbf0129
Derive PartialEq on the style Font structure
...
We check the hash first.
2015-10-08 00:32:58 +02:00
bors-servo
7debfd1f4c
Auto merge of #7683 - frewsxcv:html-font-element-size-attr, r=nox
...
Implement `size` attribute for <font> element
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7683 )
<!-- Reviewable:end -->
2015-10-05 02:33:02 -06:00
Eli Friedman
69ca066802
Fully implement the "align descendants" rule for div.
...
This adds -servo-left and -servo-right to complement -servo-center.
This intentionally doesn't try to address issue #7301 .
2015-10-02 12:53:20 -07:00
bors-servo
a7743052ca
Auto merge of #6185 - luniv:viewport-meta, r=mbrubeck
...
Implement <meta name=viewport> handling
Translate <meta name=viewport> as according to [CSS Device Adaption § 9](http://dev.w3.org/csswg/css-device-adapt/#viewport-meta )
Note: as the PR currently stands, handling `<meta name=viewport>` elements always occurs. This is probably not desired for some contexts (e.g. desktop), but I'm unsure of how to conditionally handle elements based on that.
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6185 )
<!-- Reviewable:end -->
2015-09-30 22:49:41 -06:00
James Gilbertson
61f7a0a1ee
Implement CSS Device Adaption § 9 (Viewport <META> element)
...
Spec: http://dev.w3.org/csswg/css-device-adapt/#viewport-meta
2015-09-30 20:11:39 -07:00
Corey Farwell
74e4c4fdc7
Implement size
attribute for <font> element
2015-09-30 22:51:30 -04:00
Glenn Watson
1999ea5e43
Update servo to use published app units crate
2015-10-01 11:45:35 +10:00
Glenn Watson
339a3f869b
Split Au type into separate crate, with minimal dependencies.
2015-10-01 07:16:11 +10:00
bors-servo
45a0c48efd
Auto merge of #7711 - aopicier:root_layout, r=pcwalton
...
Use computed `display` property for hypothetical box of root element
Closes #7558 .
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7711 )
<!-- Reviewable:end -->
2015-09-27 17:03:58 -06:00
Jaydeep
2a99915188
Check for Extra pointer dereferencing. Issue #7640 .
2015-09-26 19:33:29 -07:00
James Graham
79e548905e
Enable resetable and String prefs.
...
This allows both boolean and string-type preferences. It
also implements a system where prefs that are read from a
configuration file can be reset back to their initial value,
which is useful in a number of cases e.g. when running tests
to ensure that each test starts with the same values for
the prefs.
2015-09-25 00:58:48 +01:00
Ravi Shankar
889eec364b
sorted the extern crate, mod & use declarations
2015-09-24 02:12:45 +05:30
Manish Goregaokar
3c969b346a
Upgrade rust to f93ab64d4a1a7ee91759a1594ab2a426b6cc657e/rustc-1.5.0-dev.
2015-09-23 14:44:59 +02:00
Corey Farwell
4898f34d95
Remove unnecessary allow(dead_code)
function attributes
2015-09-21 18:53:04 -04:00
Michael Howell
554a4cf9f2
Add transitions for CSS calc()
.
...
Closes #7284
2015-09-19 19:39:55 -07:00
Brandon Fairchild
de3547e401
Fix reported test-tidy errors for unmerged import blocks
...
This merges import blocks that were reported by tidy as unmerged.
2015-09-19 12:50:14 -04:00
Philipp Hartwig
c2db10217c
Use computed display
property for hypothetical box of root element
...
The root element should never be treated as an inline element by the
flow construction.
Closes #7558 .
2015-09-18 23:08:10 +02:00
Hugo Thiessard
6565e7b02f
Issue #7390 correct the order of mod declaration
2015-09-18 22:02:04 +02:00
Simon Sapin
feaf6f4c3f
Initial support for custom properties in CSSStyleDeclaration
2015-09-17 14:48:56 +02:00
Simon Sapin
d56ea10770
var() substitution: insert /**/ between tokens that would be parse as one token.
2015-09-17 14:48:20 +02:00
Simon Sapin
81dd1ab363
Record first and last token type of custom property values.
2015-09-17 14:48:19 +02:00
Simon Sapin
389d537451
Look for var() in a non-custom property declaration after a parse error.
2015-09-17 14:48:17 +02:00
Simon Sapin
70ea5f61a2
Don’t ignore input at the end of a declaration with var().
2015-09-17 14:48:16 +02:00
Simon Sapin
54ef8055ec
The function name var() is case-insensitive.
2015-09-17 14:48:15 +02:00
Simon Sapin
ab9e1af206
Allow whitespace-only custom property values.
2015-09-17 14:48:14 +02:00
Simon Sapin
c7622bf22f
Fix !important in custom properties.
...
Test changes are also in https://github.com/w3c/csswg-test/pull/847/files
2015-09-17 14:48:13 +02:00
Simon Sapin
4abe7cdf97
Support var() in shorthands.
2015-09-17 14:48:12 +02:00
bors-servo
8f0b702018
Auto merge of #7642 - bjwbell:shorthand-parse-elliptical-border-radius, r=jdm
...
gfx: Add elliptical border-radius shorthand parsing
Adds support for parsing shorthand border-radius values such as:
/* The syntax of the second radius allows one to four values */
/* (first radius values) / radius */
border-radius: 10px 5% / 20px;
/* (first radius values) / top-left-and-bottom-right | top-right-and-bottom-left */
border-radius: 10px 5% / 20px 30px;
/* (first radius values) / top-left | top-right-and-bottom-left | bottom-right */
border-radius: 10px 5px 2em / 20px 25px 30%;
/* (first radius values) / top-left | top-right | bottom-right | bottom-left */
border-radius: 10px 5% / 20px 25em 30px 35em;
r? @pcwalton
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7642 )
<!-- Reviewable:end -->
2015-09-16 10:13:52 -06:00
bors-servo
6a12f00d6d
Auto merge of #7605 - nox:skew, r=mbrubeck
...
Implement "transform: skew()"
Thanks to @Jinwoo-Song for the original commit, which I just rebased and cleaned up. Fixes #6237 .
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7605 )
<!-- Reviewable:end -->
2015-09-16 06:31:48 -06:00
Bryan Bell
48f1159845
gfx: Add elliptical border-radius shorthand parsing
...
Adds elliptical border-radius shorthand parsing, e.g.:
/* The syntax of the second radius allows one to four values */
/* (first radius values) / radius */
border-radius: 10px 5% / 20px;
/* (first radius values) / top-left-and-bottom-right | top-right-and-bottom-left */
border-radius: 10px 5% / 20px 30px;
/* (first radius values) / top-left | top-right-and-bottom-left | bottom-right */
border-radius: 10px 5px 2em / 20px 25px 30%;
/* (first radius values) / top-left | top-right | bottom-right | bottom-left */
border-radius: 10px 5% / 20px 25em 30px 35em;
2015-09-15 16:51:17 -07:00
Ms2ger
9faa2de0fc
Use static atoms in some places.
2015-09-14 10:33:16 +02:00
Jinwoo Song
d524601cf5
CSS 'transformation: skew()' should take <angle> type as parameters
...
Current implementation is taking <number> type as parameter so skew()
does not work properly. Let the skew() to get <angle> as specification
described.
Fixes #6237 .
2015-09-12 01:06:35 +02:00
Anthony Ramine
f11fcebd9c
Bump euclid to 0.2
2015-09-12 01:06:26 +02:00
bors-servo
5bad6b1b6e
Auto merge of #7502 - bjwbell:elliptical-borders, r=pcwalton
...
gfx: Add elliptical border radius support
TODO: Add code for parsing shorthand border-radius e.g. "border-radius: 10px 5% / 20px".
r? @pcwalton
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7502 )
<!-- Reviewable:end -->
2015-09-04 18:46:24 -06:00