Commit Graph

130 Commits

Author SHA1 Message Date
Patrick Walton
c9e2901806 servo: Merge #5400 - layout: Implement CSS transitions per CSS-TRANSITIONS § 2 (from pcwalton:transitions-redux); r=glennw
Transition events are not yet supported, and the only animatable
properties are `top`, `right`, `bottom`, and `left`. However, all other
features of transitions are supported. There are no automated tests at
present because I'm not sure how best to test it, but three manual tests
are included.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: ebdf1d494b6c986e6dfcb7d8fd3f0ffa126523ed
2015-03-31 10:39:56 -06:00
Ms2ger
d5ae5a73b2 servo: Merge #5324 - Remove allow(missing_copy_implementations) attributes (from Ms2ger:missing_copy_implementations); r=jdm
This is now the default.

Source-Repo: https://github.com/servo/servo
Source-Revision: b1a35f549baad871a3691ae485af2efecd2d73f7
2015-03-23 08:45:50 -06:00
Ms2ger
ed37ff9cb6 servo: Merge #5303 - Update some code that's feature-gated under core (from Ms2ger:core); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 43f3f6c897916aea75773f74060ec84a338834d0
2015-03-21 12:57:46 -06:00
Simon Sapin
79a6daaf67 servo: Merge #5262 - Fix some post-rustup warnings (from servo:fix-warnings); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: 124a78fb2e4d324a7d0ed54da1cca17839d406b7
2015-03-18 15:21:49 -06:00
Ms2ger
66cb126a50 servo: Merge #5256 - Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-de (from servo:rustup_20150311); r=jdm
...v.

Relies on:
* https://github.com/servo/rust-geom/pull/72
* https://github.com/servo/rust-glx/pull/10
* https://github.com/servo/gleam/pull/15
* https://github.com/servo/rust-mozjs/pull/137
* https://github.com/servo/rust-core-text/pull/35
* https://github.com/servo/rust-io-surface/pull/28

Source-Repo: https://github.com/servo/servo
Source-Revision: 99cf9dbfc107bacb84dfe5afa9539a0ede3beac2
2015-03-18 11:25:00 -06:00
Patrick Walton
7758f76d8a servo: Merge #5134 - layout: Implement 2D CSS transforms per CSS-TRANSFORMS § 5, 6, 7, and 8 (from pcwalton:transforms); r=SimonSapin
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 203240c1d82b780ce49261d8b47e6cbe6af50950
2015-03-17 13:39:51 -06:00
Patrick Walton
c12b663e80 servo: Merge #4417 - layout: Implement border-spacing per CSS 2.1 § 17.6.1 and the legacy cellspacing attribute per HTML5 § 14.3.9 (from pcwalton:border-spacing); r=larsbergstrom
Table layout code has been refactored to push the spacing down to
rowgroups and rows; this will aid the implementation of
`border-collapse` as well.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 8e811229bae6b338fabcd7df602079730c942889
2015-03-12 13:03:49 -06:00
Patrick Walton
c4615436ae servo: Merge #5160 - layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1 § 12.3-12.5 (from pcwalton:counters-redux); r=SimonSapin
Only simple alphabetic and numeric counter styles are supported. (This
is most of them though.)

Although this PR adds a sequential pass to layout, I verified that on
pages that contain a reasonable number of ordered lists (Reddit
`/r/rust`), the time spent in generated content resolution is dwarfed by
the time spent in the parallelizable parts of layout. So I don't expect
this to negatively affect our parallelism expect perhaps in pathological
cases.

Reconstructed from #5138 via raw diffing.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: fd1bb49a65dd998c8ef9890a1576aaf62ddfdba1
2015-03-09 23:24:47 -06:00
James Gilbertson
9b5d597d38 servo: Merge #5154 - Implement 'vw', 'vw', 'vmin', 'vmax' CSS length units (from luniv:viewpoint-percent-lengths); r=SimonSapin
Spec: http://dev.w3.org/csswg/css-values-3/#viewport-relative-lengths
Source-Repo: https://github.com/servo/servo
Source-Revision: a557b51c28aaba398fd85f86af909ec623e2350f
2015-03-05 18:55:02 -07:00
Ms2ger
418b86f02b servo: Merge #5155 - Remove an unused import from properties.rs (from Ms2ger:unused-import); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: caf5663e0981f36a621dde1dd51be2bd0a15dd24
2015-03-05 08:27:50 -07:00
Simon Sapin
9d0586a22d servo: Revert "layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1"
This reverts commit 30fd28d1077fbb3f47140f6ab1252c0d24f44d23.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4c1d778ced267eeef790d4166e361d9348b933d3
2015-03-03 21:16:24 +01:00
Simon Sapin
3df1ad88b2 servo: Revert "Refactor content property parsing."
This reverts commit 50800940dc5c8cf424d5786c447f7ff1d0432a97.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a218b3f08c95b5c1a14ef1bbf09658d61b8d342
2015-03-03 21:16:03 +01:00
Simon Sapin
f2437f06b8 servo: Revert "Tidy."
This reverts commit e209f5e0da5a3dd3b188d11e884b2859daf053d3.

Source-Repo: https://github.com/servo/servo
Source-Revision: e590f9b7f4167ed9a2b46d97b282b99a0fa47d5f
2015-03-03 21:16:01 +01:00
Simon Sapin
4578a773a4 servo: Merge #5133 - layout: Implement image-rendering per CSS-IMAGES-3 § 5.3 and (from servo:background-size); r=SimonSapin
`background-size` per CSS-BACKGROUNDS § 3.9.

Nearest neighbor interpolation is used for `crisp-edges`, like Firefox.
A note has been added that we could do better if we wanted to.

Multiple backgrounds are not yet supported.

Rebase of #4368. Fixes #4368.

Source-Repo: https://github.com/servo/servo
Source-Revision: e1a50c771973fe3223cf98feea5d570375d68fa9
2015-03-03 11:48:54 -07:00
Simon Sapin
73082d1626 servo: Merge #5067 - layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1 § 12.3-12.5 (from servo:counters); r=SimonSapin
Only simple alphabetic and numeric counter styles are supported. (This
is most of them though.)

Although this PR adds a sequential pass to layout, I verified that on
pages that contain a reasonable number of ordered lists (Reddit
`/r/rust`), the time spent in generated content resolution is dwarfed by
the time spent in the parallelizable parts of layout. So I don't expect
this to negatively affect our parallelism expect perhaps in pathological
cases.

Moved from #4544, because Critic.

Fixes #4544.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5cd6316addc1acf145ed3220719387ef6ef08d2f
2015-03-03 10:42:52 -07:00
Patrick Walton
dfd3000b94 servo: Merge #5132 - layout: Implement overflow-x and overflow-y per CSS-OVERFLOW § 3 (from servo:overflow-xy); r=SimonSapin
Rebase of #4567. Fix #4567.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6fcc02e92f4c519239a834dc37a2965a4993322a
2015-03-03 09:06:55 -07:00
Patrick Walton
8d21fbc4f5 servo: Merge #4475 - layout: Implement text-shadow per CSS-TEXT-DECORATION-3 § 4 (from pcwalton:text-shadow); r=mbrubeck
r? @mbrubeck

Depends on servo/rust-geom#64.

Source-Repo: https://github.com/servo/servo
Source-Revision: 93d1f40a96df69eb9d38890df96c621e180d78cc
2015-03-02 14:54:52 -07:00
Bryan Bell
195b198cde servo: Merge #4952 - Dont draw interior borders for text run fragments (from bjwbell:borders-txt-nodes); r=pcwalton
Inline fragments that are part of a text run don't have interior borders.
So don't draw interior borders or include them when calculating positioning.

Fixes https://github.com/servo/servo/issues/4658, where multiple text nodes that are adjacent have distinct borders.

r? @Ms2ger, @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: b2f099026a8c649daf063dc7e119a514c2680697
2015-02-27 16:57:53 -07:00
Patrick Walton
cbb589d36c servo: Merge #5061 - style: Fix parsing of text decorations (from pcwalton:fix-text-decoration); r=mbrubeck
Adds a reftest so it doesn't break again.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: cbc4b9520e8fb609fa068bb53193a95202f3a0a7
2015-02-24 19:12:50 -07:00
Simon Sapin
40036d9f8a servo: Merge #5010 - Move selector matching to an external library, for use outside Servo (from SimonSapin:external-selectors); r=larsberg
The new library is https://github.com/servo/rust-selectors. It’s not quite ready for other users (the API needs work), but this is a first step.

https://github.com/servo/rust-selectors/pull/2 should also be reviewed.

Fixes #3669.

Source-Repo: https://github.com/servo/servo
Source-Revision: 91abf5557b1a324d6568ce08cfb92cdffca10e41
2015-02-23 08:39:47 -07:00
Simon Sapin
07b7b78232 servo: Merge #4988 - Do "computed value" calculation with a trait with an associated type (from SimonSapin:to_computed_value_associated_type); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: ab0cbbe3f398c89baa5d53f79b607d32fd9ee2ce
2015-02-20 17:42:52 -07:00
Ms2ger
057d7cb476 servo: Merge #4947 - Use rustc-serialize rather than the built-in deprecated serialize (from Ms2ger:serialize); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: afb152a8569953f730df564be2745c5a6302bf6f
2015-02-17 07:30:50 -07:00
Simon Sapin
b9b04d79b1 servo: Merge #4919 - Cleanup libstyle (from SimonSapin:cleanup-libstyle); r=gw
Source-Repo: https://github.com/servo/servo
Source-Revision: 11b627704d539122bdf9755644fb5bc0c6a03bb6
2015-02-13 03:06:49 -07:00
Simon Sapin
da87abc762 servo: Merge #4893 - Upgrade to rustc ba2f13ef0 2015-02-04 (from servo:rustup_2015-01-31); r=Ms2ger,glennw
Ready for review.

Final link step on android fails, but we know how to fix it and will add it to this branch soon.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2cc08f289ab909de44fa09a07b2c43b70ce379b9

--HG--
rename : servo/ports/gonk/build.rs => servo/support/rust-task_info/build.rs
2015-02-11 17:24:45 -07:00
Josh Matthews
7b3305eafe servo: Merge #4881 - Allow unused variables, imports, and mutable (from jdm:allowunused); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 7048291dc0db4efecf9c13779feeb5e022210123
2015-02-09 16:45:47 -07:00
Simon Sapin
73c21f832d servo: Merge #4856 - Use the ToCss trait instead of Show for CSSOM serialization (from servo:tocss); r=jdm
r? @jdm

The in-progress Rust upgrade will go on top of this.

Source-Repo: https://github.com/servo/servo
Source-Revision: f5cb1690bfa20c1eccffe2f94a2155d2321e69fa
2015-02-06 17:21:42 -07:00
Josh Matthews
114f6b6b27 servo: Merge #4788 - Lock crates.io dependencies to specific versions (from jdm:cargodeps); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 66384dfcfd4c38595985cd3fac12fa616a2ba94f
2015-01-30 17:36:50 -07:00
Simon Sapin
f19ec826ce servo: Merge #4757 - Bring CSS parse error reporting back (from servo:newnewnewcss); r=mbrubeck
(Still off by default. Enable with `RUST_LOG=style`.)

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 172aed535be3c34775824dac64ad2b91fc379ad5

--HG--
rename : servo/components/style/properties/mod.rs.mako => servo/components/style/properties.mako.rs
2015-01-30 15:27:53 -07:00
Patrick Walton
5bca49e824 servo: Merge #4610 - layout: Implement text-align: justify and text-justify per (from pcwalton:text-align-justify); r=mbrubeck
CSS-TEXT-3 § 7.3.

`text-justify: distribute` is not supported.

The behavior of `text-justify: none` does not seem to match what Firefox
and Chrome do, but it seems to match the spec.

Closes #213.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 7359f99f201a359aaebf334a1787d1975c9fa7d4
2015-01-30 06:15:56 -07:00
Ms2ger
3cee792603 servo: Merge #4766 - Import the util crate as util rather than servo_util (from Ms2ger:util); r=Manishearth
This used to conflict with the util crate from the standard library, which
has long since been removed.

The import in layout has not been changed because of a conflict with the
util mod there.

Source-Repo: https://github.com/servo/servo
Source-Revision: 27e0f16407629422b5e047e067d458142372c97e
2015-01-29 05:12:49 -07:00
Patrick Walton
06265455a5 servo: Merge #4592 - layout: Implement text-overflow: ellipsis per CSS-UI-3 § 6.2 (from pcwalton:text-overflow); r=mbrubeck
Only the one-value syntax is supported for now.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: c8e68fa45c43856f7ffbdde25b6e68571ad288bf
2015-01-28 17:24:50 -07:00
Patrick Walton
c36f083a85 servo: Merge #4524 - gfx: Implement font-stretch per CSS3-FONTS § 3.3 in the Core Text font backend (from pcwalton:font-stretch); r=glennw
r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 3736396c63ad3f84349132ea9c0bb0f5fc045f01
2015-01-28 13:57:58 -07:00
Manish Goregaokar
0baa68ddf8 servo: Merge #4739 - Fix some warnings (from Manishearth:warning-patrol); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: d373f8dc26239310dec8d2fd66ed72385548cf6f
2015-01-28 02:27:50 -07:00
Josh Matthews
78741af324 servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3f9012864a2cd927cf17a8e11dfa6922add1b7df
2015-01-27 18:15:50 -07:00
Ms2ger
7363fc6372 servo: Merge #4708 - Prepare for the rust upgrade (from Ms2ger:rustup-prepare); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 55fbf1f2b6924c50cff6e4ddf359289654f4858a
2015-01-22 08:06:50 -07:00
Simon Sapin
269dcf54f6 servo: Merge #4689 - Port to the new cssparser (from servo:newnewnewcss); r=larsbergstrom
https://github.com/servo/rust-cssparser/pull/68

r? @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 59bca2962c19f653eec835fc54caf1a3eadcb906
2015-01-21 14:27:48 -07:00
Ms2ger
190438fa42 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
Bruno de Oliveira Abinader
e73ce43a7b 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
Patrick Walton
c06e7615be servo: Merge #4582 - layout: Implement mix-blend-mode per COMPOSITING § 3.4.1 (from pcwalton:blend-modes); r=glennw
`background-blend-mode` is not yet supported because we don't support
multiple backgrounds yet.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: e6fe9f14092251b0d1a8c97473dda9b5d73679cd
2015-01-12 09:03:48 -07:00
Patrick Walton
1d5c039eef servo: Merge #4557 - layout: Implement filter per CSS-FILTERS § 5 (from pcwalton:filter); r=mbrubeck
`blur` and `drop-shadow` are not yet supported, because the
`text-shadow` PR makes some fundamental changes to blur rendering that
are needed first.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: ffdbf29db28ba334e8baf8d35141b5e8ad289459
2015-01-09 09:03:48 -07:00
Matthew Rasmus
66118e1666 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
Ms2ger
320a27a169 servo: Merge #4574 - Remove if_let feature gates (from Ms2ger:if_let); r=Manishearth
This feature is now supported unconditionally.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4cd9eb1253a764e8794f004a96112f4127687708
2015-01-08 14:42:53 -07:00
Patrick Walton
3618f28049 servo: Merge #4523 - layout: Implement text-rendering per SVG 1.1 § 11.7.4 (from pcwalton:text-rendering); r=mbrubeck
Like Gecko, we treat `geometricprecision` the same as
`optimizelegibility` for now.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a021f66354d9b6c14f76178d803185e50ad87d3
2015-01-08 13:48:53 -07:00
Patrick Walton
45ee1c1641 servo: Merge #4525 - layout: Implement outline-offset per CSS-UI-3 § 5.5 (from pcwalton:outline-offset); r=mbrubeck
r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 112ab49706a525ab0b93ca37bd41e9d929218736
2015-01-08 12:03:53 -07:00
Patrick Walton
349c217b6b servo: Merge #4530 - layout: Implement pointer-events: none per SVG 1.1 § 16.6 (from pcwalton:pointer-events); r=mbrubeck
SVG-only values are not yet supported.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: a88e668091842dc77169b235a03b5264e65ebdc6
2015-01-08 10:48:55 -07:00
Patrick Walton
ff1c5b6981 servo: Merge #4529 - layout: Implement word-break: break-all per CSS3-TEXT § 5.2 (from pcwalton:word-break); r=mbrubeck
r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d9200e4066c8147d82de38c071bc945c233c049
2015-01-08 10:09:55 -07:00
Ms2ger
e5578c14fd 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
Patrick Walton
707d7cd93e servo: Merge #4460 - layout: Paint stacking contexts' overflow areas properly (from pcwalton:stacking-context-overflow); r=glennw
This was making `box-shadow` not show up in many cases, in particular,
but the effects were not limited to that.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 499d17f564d699e5e290e8a3859f64e7536827a7
2015-01-04 18:51:48 -07:00
Ms2ger
11a0efe9f4 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
Ms2ger
62056757ed 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