Commit graph

1213 commits

Author SHA1 Message Date
bors-servo
19a5a30113 Auto merge of #13387 - emilio:debug-assertions, r=aneeshusa,jdm,pcwalton
Honor SERVO_ENABLE_DEBUG_ASSERTIONS on the build machines.

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

As part of #13127.

cc @aneeshusa

---
<!-- 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

<!-- 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/13387)
<!-- Reviewable:end -->
2016-10-04 14:01:49 -05:00
bors-servo
aea9545e16 Auto merge of #13459 - servo:no-arc-heapsize, r=emilio
Use parking_lot::RwLock for PropertyDeclarationBlock

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

As discussed in https://bugzilla.mozilla.org/show_bug.cgi?id=1305141

Closes #13176

---

Original PR title: Stop relying on `impl<T: HeapSizeOf> HeapSizeOf for Arc<T>`
https://github.com/servo/heapsize/issues/37#issuecomment-249861171

This builds on top of that.

---
<!-- 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 refactor

<!-- 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/13459)
<!-- Reviewable:end -->
2016-10-04 11:58:56 -05:00
Simon Sapin
fbde392c3d Revert "Make DOMRefCell use style’s copy of RefCell"
This reverts commit ec723057b2.
2016-10-04 18:35:01 +02:00
Simon Sapin
c831369e3e Move DOMRefCell back into script.
We’re not using it in style after all.
2016-10-04 18:35:00 +02:00
Simon Sapin
89a29a7f12 Use parking_lot::RwLock instead of DOMRefCell for PropertyDeclarationBlock 2016-10-04 18:34:59 +02:00
Simon Sapin
d986fd2d2f Use PropertyDeclarationBlock in a DOMRefCell everywhere. 2016-10-04 18:34:57 +02:00
Simon Sapin
d4f704cad2 Disable applicable declarations cache for elements with a style attribute.
The cache is never effective in this case since a style attribute
adds to the set of applicable declarations.

This also avoid avoids the cache giving out-dated (incorrect) results
when `PropertyDeclarationBlock` becomes mutable in a later commit.
This is sufficient for now since CSSOM is only implemented for
`Element.style`. When StyleRule mutation is added,
some additional mechanism (such as evicting the cache) will be needed.
2016-10-04 18:34:56 +02:00
Simon Sapin
29c72d15a9 Make style build without impl<T: HeapSizeOf> HeapSizeOf for Arc<T>.
The removal of this impl is not included in this commit.
CC https://github.com/servo/heapsize/issues/37#issuecomment-249861171
2016-10-04 13:45:57 +02:00
Ravi Shankar
361f372142 Add support for 'font-stretch' 2016-10-04 15:54:01 +05:30
bors-servo
6f8bf29eaf Auto merge of #13566 - Wafflespeanut:consts, r=Manishearth
Add NS_FONT_STRETCH_* consts and regenerate bindings

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

Depends on servo/rust-bindgen#74

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build-geckolib` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [x] These changes do not require tests because they're autogenerated

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

Once that merges, r? @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/13566)
<!-- Reviewable:end -->
2016-10-04 02:59:15 -05:00
Ravi Shankar
68d25d908a Regen struct bindings 2016-10-04 13:25:00 +05:30
Ravi Shankar
854258c76e Add NS_FONT_STRETCH_* to bindgen script 2016-10-03 20:40:34 +05:30
Bobby Holley
687e1f701c Rename PrivateStyleData to PersistentStyleData and use AtomicRefCell instead of RefCell as a container.
This allows us to eliminate the unsafe borrows. \o/

MozReview-Commit-ID: 29hpGaWUFQz
2016-10-02 19:19:52 -07:00
Bobby Holley
18d552a1e9 Stop using Ref::map for style().
It's not possible to implement a Ref::map equivalent method on AtomicRefCell
while having AtomicRefCell implemented on top of RwArc. We could potentially
reimplement AtomicRefCell to be more like RefCell and add a Ref::map equivalent
method, but I (and pcwalton) think we should try just cloning a few extra
Arcs at these callsites instead.

MozReview-Commit-ID: 6H8vAWguO3z
2016-10-02 19:19:52 -07:00
Bobby Holley
518324cff6 Implement AtomicRefCell.
MozReview-Commit-ID: 9LZ1WPQADav
2016-10-02 19:19:52 -07:00
Bobby Holley
8c14533e7f Add a dependency on parking_lot to style.
MozReview-Commit-ID: 5zXmrdQ0fjU
2016-10-02 19:19:52 -07:00
bors-servo
7da20f2617 Auto merge of #13541 - canaltinova:origin-clip, r=Manishearth
Fix origin/clip parsing behavior in mask and background shorthands

<!-- Please describe your changes on the following line: -->
We have tests for mask shorthand parsing, but we don't have tests for background parsing. Should I add some for it?
Also deleted inaccessible match arms in serialization function.
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 #13466 (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/13541)
<!-- Reviewable:end -->
2016-10-02 14:33:43 -05:00
Nazım Can Altınova
1b35a3d9a8 Fix origin/clip parsing behavior in mask and background shorthands 2016-10-02 19:07:34 +03:00
bors-servo
c4021a6765 Auto merge of #13440 - emilio:no-ool, r=bholley
stylo: Remove a bunch of unneeded ool-calls.

---
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because stylo

<!-- 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/13440)
<!-- Reviewable:end -->
2016-10-02 10:59:25 -05:00
Emilio Cobos Álvarez
bdf1d179ba
layout: Use the fragment's writing mode when computing sizes relevant to that fragment.
Otherwise we might mix writing modes. Not totally sure this change is correct in
the case we're mixing them, we might need to just not checking that operation.
2016-10-02 17:57:07 +02:00
Emilio Cobos Álvarez
eb0c12acaf
stylo: Remove a bunch of out of now-unneeded out-of-line calls.
r? @bholley
2016-10-02 17:51:14 +02:00
Manish Goregaokar
c76e382d80 Update glue for StyleComplexColor values 2016-10-02 09:48:41 +05:30
Manish Goregaokar
3ca53c8a4b Regen bindings for upcoming resync 2016-10-01 22:01:07 +05:30
bors-servo
7914f14caa Auto merge of #13518 - upsuper:patch-1, r=emilio
Move --use-msvc-mangling out from clang flags.

`--use-msvc-mangling` is not a clang flag, but a flag for bindgen.

r? @emilio

<!-- 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/13518)
<!-- Reviewable:end -->
2016-10-01 09:47:00 -05:00
bors-servo
4101260cc0 Auto merge of #13476 - Wafflespeanut:atoms, r=Manishearth,emilio
Refactor geckolib atoms regen script

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

---
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because it's a refactor

<!-- 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/13476)
<!-- Reviewable:end -->
2016-09-30 10:32:01 -05:00
Manish Goregaokar
b6fccbf65c Regen bindings 2016-09-30 20:48:37 +05:30
Ravi Shankar
fa06b922c7 Refactor geckolib atoms regen script 2016-09-30 20:48:36 +05:30
bors-servo
f67e5e4004 Auto merge of #13473 - KiChjang:gecko-letter-spacing, r=Manishearth,Wafflespeanut
Support letter-spacing in stylo

Fixes #12823.

r? @Manishearth

**This needs to be tested!**

<!-- 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/13473)
<!-- Reviewable:end -->
2016-09-30 09:38:26 -05:00
bors-servo
c834e57f4d Auto merge of #13477 - Manishearth:regen, r=emilio
Regenerate bindings

r? @emilio

<!-- 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/13477)
<!-- Reviewable:end -->
2016-09-30 08:39:50 -05:00
bors-servo
76092c437c Auto merge of #13450 - Wafflespeanut:border_spacing, r=Manishearth
Make use of Servo's border-spacing in Stylo

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

---
<!-- 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

<!-- Either: -->
- [x] These changes have been tested manually

![screenshot](https://cloud.githubusercontent.com/assets/6691262/18867760/1fa46376-84c3-11e6-8e63-9fce042f5bb0.png)

r? @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/13450)
<!-- Reviewable:end -->
2016-09-30 00:25:08 -05:00
bors-servo
37c8892b87 Auto merge of #13456 - Wafflespeanut:warnings, r=emilio
Silence some warnings in geckolib

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

---
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because it's a cleanup

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

We'll be silencing thousands of warnings this way, which would probably help with Travis.

<!-- 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/13456)
<!-- Reviewable:end -->
2016-09-29 22:46:38 -05:00
Xidorn Quan
910853f12a Move --use-msvc-mangling out from clang flags. 2016-09-30 11:09:43 +10:00
bors-servo
c9442346d3 Auto merge of #13414 - flacerdk:master, r=mbrubeck
Implement `word-break: keep-all` (#9673)

<!-- Please describe your changes on the following line: -->
Implement the `keep-all` value for the `word-break` property, as specified in [CSS](https://drafts.csswg.org/css-text-3/#word-break-property).

The relevant CSSWG tests (in `tests/wpt/css-tests/css-text-3_dev/html/word-break-keep-all-*.htm`) do not currently pass. As far as I can tell, this is because the tests use some JavaScript code that is not working properly. (But then, it seems that most tests in this directory are failing at the moment. I'm not sure what can be done here for now.)

---
<!-- 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 #9673.

<!-- 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/13414)
<!-- Reviewable:end -->
2016-09-29 19:20:55 -05:00
bors-servo
495fbef129 Auto merge of #13455 - Wafflespeanut:bindgen, r=emilio
Cleanup the bindgen tools and update their README

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

---
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because it's just a cleanup

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

r? @emilio

<!-- 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/13455)
<!-- Reviewable:end -->
2016-09-29 17:11:35 -05:00
bors-servo
47fa31562a Auto merge of #13336 - canaltinova:mask, r=Manishearth
Implement parsing for mask shorthand

<!-- Please describe your changes on the following line: -->
Implement parsing for mask shorthand. It doesn't contain tests yet. I'll write and update the PR.

---
<!-- 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 #13235 (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/13336)
<!-- Reviewable:end -->
2016-09-29 00:22:54 -07:00
Nazım Can Altınova
3b03cd5b31 Implement parsing for mask shorthand 2016-09-29 01:48:38 +03:00
bors-servo
13c4393516 Auto merge of #13415 - Manishearth:style-testing-disable, r=SimonSapin
Run style unit tests in testing mode, disable some properties in testing mode

Another crack at making it possible to test geckolib properties.

In the previous PR I added support for a testing mode but neglected to use it in the style unit tests.

Using it brought out some bugs with properties that exist in both gecko and servo but have different names. Added the ability to disable them.

Hopefully this isn't too unweildy.

r? @emilio

<!-- 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/13415)
<!-- Reviewable:end -->
2016-09-28 16:39:49 -05:00
Manish Goregaokar
a0fbcadc67 Regen bindings 2016-09-28 13:26:18 +02:00
Manish Goregaokar
ac80fcf220 Fix indent in regen.py; fix imports 2016-09-28 13:26:16 +02:00
Manish Goregaokar
e1e512f86b Run style unit tests in testing mode, disable some properties in testing mode 2016-09-28 10:00:36 +02:00
Keith Yeung
bce6f7d6f2 Support letter-spacing in stylo 2016-09-28 00:52:43 -07:00
Ravi Shankar
24c00da08c Silence some warnings in geckolib 2016-09-27 18:35:51 +05:30
Ravi Shankar
67d26b36a1 Minor cleanup to the bindgen scripts 2016-09-27 18:07:39 +05:30
Ravi Shankar
1924df0c00 Update README for bindgen tools 2016-09-27 18:07:30 +05:30
Felipe
d5669ead29 Implement word-break: keep_all 2016-09-27 11:25:21 +02:00
Ravi Shankar
2999581fb7 Make use of Servo's border-spacing in Stylo 2016-09-27 14:37:36 +05:30
Josh Matthews
587250ba4e Avoid huge numbers of warnings for atom_macro. 2016-09-26 09:35:26 -04:00
Manish Goregaokar
b2e592b121 Move most of geckolib into style::gecko 2016-09-26 09:07:17 +02:00
Manish Goregaokar
bc9cbc87ba Move gecko_* into style::gecko
Prepping for the next stage where most of geckolib/ is popped in here
2016-09-24 19:25:59 +05:30
Manish Goregaokar
c6787458d9 Move gecko_bindings and gecko_string_cache into the style crate 2016-09-24 19:25:55 +05:30