Commit graph

1527 commits

Author SHA1 Message Date
Ravi Shankar
b446f0e28a Auto-generate color glue 2016-10-22 14:27:01 +05:30
Ravi Shankar
caa745cb81 Minor codegen refactor for auto-generating some predefined types 2016-10-22 14:20:06 +05:30
Xidorn Quan
b7fffb3829 Use str for bindgen output directly. 2016-10-22 13:59:20 +11:00
Bobby Holley
adf0fe9b9a Rearrange some data structures in preparation for the new incremental restyle algorithm.
MozReview-Commit-ID: 8iOALQylOuK
2016-10-21 13:00:01 -07:00
Nazım Can Altınova
6102159a4b Implement parsing/serialization for text-emphasis-style 2016-10-21 21:25:17 +03:00
Bobby Holley
b493565cc1 Stop ticking animations on non-dirty nodes during traversal. 2016-10-20 19:25:04 -07:00
bors-servo
2e9aaa45dc Auto merge of #13841 - bholley:has_changed, r=emilio
Simplify TNode a bit, removing has_changed from style

A couple of changes here:
* Remove the option to unset with the dirty bit settes.
* Add an explicit API for setting text node style.
* Hoist has_changed handling into the restyle damage setter and text node style setter.
* Make set_style take a non-Option.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13841)
<!-- Reviewable:end -->
2016-10-20 12:40:58 -05:00
Bobby Holley
cc96b292c2 Simplify TNode a bit.
A couple of changes here:
* Remove the option to unset with the dirty bit setters.
* Add an explicit API for setting text node style.
* Hoist has_changed handling into the restyle damage setter and text node style setter.
* Make set_style take a non-Option.
2016-10-20 09:47:54 -07:00
bors-servo
4e5ad268b1 Auto merge of #13839 - servo:locked-style, r=mbrubeck
Add RwLock in more Arc’d things in stylesheets.

<!-- Please describe your changes on the following line: -->

CSSOM needs hold potentially multiple references (through `Arc`) to these objects, and then mutate them.

CC @upsuper
r? @mbrubeck

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13839)
<!-- Reviewable:end -->
2016-10-20 11:29:27 -05:00
bors-servo
ee713bc7d9 Auto merge of #13795 - shinglyu:stylo-filter, r=Manishearth
Implement CSS filter for Stylo

<!-- Please describe your changes on the following line: -->

This patch is part of https://bugzilla.mozilla.org/show_bug.cgi?id=1310117

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13795)
<!-- Reviewable:end -->
2016-10-20 09:40:35 -05:00
Cameron McCormack
44a02c9da4 Regenerate bindings. 2016-10-20 17:52:41 +08:00
bors-servo
6c28d4446a Auto merge of #13834 - upsuper:unprefix-text-align-last, r=emilio
Unprefix text-align-last for geckolib

<!-- Please describe your changes on the following line: -->
[`text-align-last` has been unprefixed](https://bugzilla.mozilla.org/show_bug.cgi?id=1039541) since Firefox 49.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13834)
<!-- Reviewable:end -->
2016-10-19 13:46:13 -05:00
Simon Sapin
742681a623 Add RwLock in more Arc’d things in stylesheets. 2016-10-19 19:55:05 +02:00
bors-servo
31891b2377 Auto merge of #13833 - heycam:bindings-update-2, r=Manishearth
Update bindings.rs

<!-- Please describe your changes on the following line: -->
I forgot to copy this file over in #13812. :(

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13833)
<!-- Reviewable:end -->
2016-10-19 10:00:14 -05:00
bors-servo
9e3cf3189b Auto merge of #13804 - canaltinova:gradient-parsing, r=Manishearth
Fix radial gradient's <size>/<ending-shape> parsing

<!-- Please describe your changes on the following line: -->
Parsing now handles sizes and shapes in various order.
I had to delete `EndingShape`'s parse implementation and mix it with `Position` in `parse_radial`. It became a bit complicated to read but I couldn't make it simpler.
r? @Manishearth

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #13664 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13804)
<!-- Reviewable:end -->
2016-10-19 09:10:15 -05:00
Xidorn Quan
ba70fcaa18 Unprefix text-align-last for geckolib. 2016-10-19 22:13:03 +11:00
Nazım Can Altınova
89850e6efa Fix radial gradient's <size>/<ending-shape> parsing 2016-10-19 13:15:28 +03:00
Cameron McCormack
bfb50f4b90 Update bindings.rs 2016-10-19 17:53:09 +08:00
Shing Lyu
ff7bb691d7 Implement CSS filter for Stylo 2016-10-19 12:24:17 +05:30
Cameron McCormack
605c2e0100 Regenerate bindings. 2016-10-19 12:19:41 +08:00
Xidorn Quan
0b5c6fb701 Remove the extra level of GeckoDeclarationBlock. 2016-10-18 16:48:50 +11:00
Manish Goregaokar
f967647226 Declare nullable strong borrowed ref type for RawServoDeclarationBlock. 2016-10-18 16:48:27 +11:00
Xidorn Quan
edeeafe5a7 Rename ServoDeclarationBlock to RawServoDeclarationBlock. 2016-10-18 15:48:36 +11:00
Xidorn Quan
3ade2b6de3 Use mutable reference for Gecko_GetNextStyleChild. 2016-10-18 15:40:23 +11:00
bors-servo
d80bf2ada7 Auto merge of #13793 - heycam:cleanup-2, r=Manishearth
Make use statements in gecko.mako.rs neater.

<!-- Please describe your changes on the following line: -->

Similarly to #13792 I find the grouped `use` statements in gecko.mako.rs hard to deal with.  Splitting these out to one per line should help avoid rebasing problems (which I sometimes get), is easier to read, and easier to keep sorted.  r? @emilio

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13793)
<!-- Reviewable:end -->
2016-10-16 22:46:56 -05:00
Cameron McCormack
c9eae16ece Make use statements in gecko.mako.rs neater. 2016-10-17 11:24:00 +08:00
Cameron McCormack
3c20d12824 Make some lists in regen.py neater. 2016-10-17 10:05:50 +08:00
Cameron McCormack
47b4648e62 Make list-style-image use UrlOrNone.
MozReview-Commit-ID: 6E82Tq5nrfC
2016-10-16 11:32:57 +08:00
Cameron McCormack
75e97c02dc Factor out a UrlOrNone value type and make -moz-binding use it.
MozReview-Commit-ID: L57QEf40e2m
2016-10-16 11:32:57 +08:00
Cameron McCormack
333afb61f6 Use UrlExtraData::make_from to avoid manually cloning the ParserContextExtraData contents.
MozReview-Commit-ID: FoCmI6swp5Q
2016-10-16 11:31:57 +08:00
bors-servo
0f4209644c Auto merge of #13759 - bholley:owning_handle, r=SimonSapin
Implement OwningHandle in style

I've also PR-ed this against upstream [1], but I don't want to block on that in case it takes a while to be merged / published.

[1] https://github.com/Kimundi/owning-ref-rs/pull/15

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13759)
<!-- Reviewable:end -->
2016-10-14 10:42:10 -05:00
bors-servo
b94f074b52 Auto merge of #13751 - joewalker:font-kerning, r=Manishearth
Add support for 'font-kerning' in geckolib

Add support for 'font-kerning' in geckolib
These changes fix #13667

    $ ./mach build -d
    It looks like you passed an unrecognized argument into mach.

    $ ./mach test-tidy
    It looks like you are trying to run an unknown mach command: test-tidy

I'm clearly doing something wrong here, but I'm not sure what

- [x] These changes do not require tests because "[For stylo it's okay to not have tests since many of the reftests fail due to unrelated reasons](https://github.com/servo/servo/pull/13570#issuecomment-251354116)" :)

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13751)
<!-- Reviewable:end -->
2016-10-14 08:56:54 -05:00
Joe Walker
a2d3ea57dd Add support for 'font-kerning' in geckolib 2016-10-14 14:50:05 +01:00
Bobby Holley
d73047584c Implement OwningHandle in style.
I've also PR-ed this against upstream [1], but I don't want to block on that
in case it takes a while to be merged / published.

[1] https://github.com/Kimundi/owning-ref-rs/pull/15
2016-10-13 16:53:37 -06:00
Manish Goregaokar
bb736f41d3 implement |quotes| property
MozReview-Commit-ID: 5eAaJGXSkob
2016-10-14 00:44:08 +05:30
Manish Goregaokar
17a46418dc Add bindings for constructing nsStyleQuoteValues
MozReview-Commit-ID: EjuzgZKMpPp
2016-10-14 00:44:07 +05:30
Manish Goregaokar
2bde9462b1 Add safer bindings for RefPtr 2016-10-14 00:44:06 +05:30
bors-servo
2bb7cc227b Auto merge of #13722 - Manishearth:test-stylo, r=jdm
Remove test-geckolib, run test-stylo on travis

test-geckolib used to do things, but almost all of geckolib has been moved to the style crate, with the tests in `tests/unit/stylo`. (`./mach test-stylo) Now test-geckolib does nothing.

Fixes #13721
r? @jdm

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13722)
<!-- Reviewable:end -->
2016-10-13 01:50:37 -05:00
bors-servo
d9bb663421 Auto merge of #13723 - Manishearth:resync, r=bholley
Regen bindings, warning fix

The warning only happens on the latest stable (which we use in the incubator), so there's an `#[allow()]` there for now as well.

Don't signal r+ to bors, I'll do that myself when the incubator side lands.

r? @bholley

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13723)
<!-- Reviewable:end -->
2016-10-12 22:01:20 -05:00
bors-servo
46fe1c320d Auto merge of #13724 - NamsooCho:font_variant_position, r=Manishearth
font_variant_position

<!-- Please describe your changes on the following line: -->

added 'font-variant-position' property to font.mako-rs
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #13669 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13724)
<!-- Reviewable:end -->
2016-10-12 20:05:11 -05:00
bors-servo
8c392dd3e7 Auto merge of #13698 - awesomeaniruddh:implement-moz-text-align-last, r=Wafflespeanut
Implement -moz-text-align-last property

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #13638  (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

The test page in Firefox:
<img width="1392" alt="firefox" src="https://cloud.githubusercontent.com/assets/5279150/19276203/a43b486c-8fa3-11e6-9b56-a4cf45217e52.png">

The test page in Stylo:
<img width="1392" alt="servo" src="https://cloud.githubusercontent.com/assets/5279150/19276213/a9c7704e-8fa3-11e6-858b-d6e5f67d3a6c.png">

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13698)
<!-- Reviewable:end -->
2016-10-12 15:15:20 -05:00
bors-servo
626d093245 Auto merge of #13640 - servo:CSSStyleDeclaration_in_style, r=mbrubeck
Move some of the CSSStyleDeclaration logic to the style crate

<!-- Please describe your changes on the following line: -->

… so that Stylo can re-use it.

Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1295865

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because refator

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13640)
<!-- Reviewable:end -->
2016-10-12 14:21:34 -05:00
NamSoo Cho
b942e6c21c font_variant_position 2016-10-13 01:55:05 +09:00
Manish Goregaokar
647f8e9c5d Remove test functions from nsstring_vendor
These tests are run on the real nsstring anyway. They cause linux builds to
fail since the test functions are defined twice.
2016-10-12 21:51:06 +05:30
bors-servo
f80623fd93 Auto merge of #13694 - emilio:style-animation, r=Manishearth,birtles
Introduce AnimationValue to manage animated properties in Gecko.

<!-- Please describe your changes on the following line: -->

Doesn't compile because there are a bunch of `from_computed_value` missing, and I need to take care of fixing that before, but open for discussion.

@birtles: is an interface like this something like what you were looking for?

cc @Manishearth

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13694)
<!-- Reviewable:end -->
2016-10-12 10:34:10 -05:00
Manish Goregaokar
b74d07bc78 Use unsafe block on access of column count constant 2016-10-12 20:50:56 +05:30
Manish Goregaokar
cac0def060 Resync bindings 2016-10-12 20:49:16 +05:30
Manish Goregaokar
bfee89a690 Fix unused crate error 2016-10-12 19:14:27 +05:30
Manish Goregaokar
0c793d7277 Implement text-overflow using nsstring bindings
MozReview-Commit-ID: BxoFVigIOyV
2016-10-12 18:12:53 +05:30
Manish Goregaokar
398a6343b3 Vendor m-c's nsstring in-tree
It is called nsstring_vendor since libgkrust already depends on nsstring, and
we can't have two crates with the same name in-tree. We can't directly depend
on the in-tree one since this will stop independent `./mach build-geckolib` builds from working.

MozReview-Commit-ID: CR4tHgzXWFZ
2016-10-12 18:12:52 +05:30