Commit graph

7387 commits

Author SHA1 Message Date
Xidorn Quan
3cbc1aa279 Add char_traits to blacklist 2017-03-14 15:54:19 +11:00
Emilio Cobos Álvarez
b4de69e3eb
style: Avoid cloning all over the error reporter. 2017-03-14 00:49:18 +01:00
Emilio Cobos Álvarez
eaf27ccfa0
style: Kill SharedStyleContext::default_computed_values.
Now that cascade() gets a Device, we can use the default computed values from
there to avoid propagating that state all over the place.

Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-14 00:49:16 +01:00
Matt Brubeck
16e318d055
Add support for non-standard -moz color keyword values.
Closes #15928
2017-03-14 00:49:08 +01:00
Emilio Cobos Álvarez
9c0424cca4
style: Remove unneeded indirection in default_computed_values. 2017-03-13 21:57:57 +01:00
bors-servo
7db36abf67 Auto merge of #15611 - karan1276:karan_box_shadow, r=upsuper
In {box,text}-shadow so blur-radius does not accept negative values

 Change code for serialization for {box,text}-shadow so blur-radius can be parsed as non-negavite

---
<!-- 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 #15490 (github issue number if applicable).

<!-- Either: -->
- [x] Write tests

<!-- 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/15611)
<!-- Reviewable:end -->
2017-03-13 11:36:02 -07:00
bors-servo
e648ebd161 Auto merge of #15910 - bzbarsky:anon-box-nofixup, r=emilio
Add support for skipping display fixup for pseudos.

This is needed for https://bugzilla.mozilla.org/show_bug.cgi?id=1346481

<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because will be tested on the Gecko side

<!-- 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/15910)
<!-- Reviewable:end -->
2017-03-13 10:47:05 -07:00
Boris Zbarsky
275865486e Add support for skipping display fixup for pseudos.
This is needed for https://bugzilla.mozilla.org/show_bug.cgi?id=1346481
2017-03-13 13:11:53 -04:00
lucantrop
d6568e608b removed instances of -> () in existing code 2017-03-13 17:38:33 +01:00
karan sharma
f30537ba2b Change code for serialization of {box,text}-shadow so blur-radius
can be parsed as non-negavite
2017-03-13 12:26:59 +05:30
bors-servo
cc9fb0ba59 Auto merge of #15924 - upsuper:bug1315601, r=heycam,Manishearth
Implement access to CSSMediaRule for stylo

This is the Servo part of [bug 1315601](https://bugzilla.mozilla.org/show_bug.cgi?id=1315601).

<!-- 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/15924)
<!-- Reviewable:end -->
2017-03-12 23:55:46 -07:00
Xidorn Quan
52c9f4b527 Implement MediaList for Stylo. 2017-03-13 17:55:25 +11:00
Xidorn Quan
2175785ca6 Add raw Servo types for MediaList and MediaRule. 2017-03-13 17:55:24 +11:00
Hiroyuki Ikezoe
1c607dcc2a Fill shortage values for animation/transition properties. 2017-03-13 12:42:38 +09:00
Hiroyuki Ikezoe
448b74ba18 Cascade animation-name property earlier than other animation properties.
As per the CSS Animations spec, in the case when multiple values for an
animation property are set, if the value length is less than the length
of animation-name property, then shortage values are filled up. Because
of this we need to know the length of animation-name proper before we
set other animation properties, so we need to cascade animation-name property
earlier than other animation properties.
We do the same thing for transition-property.
2017-03-13 12:42:18 +09:00
Hiroyuki Ikezoe
c9b0ea314f Don't set transition properties to mAnimations array. 2017-03-13 12:42:01 +09:00
Emilio Cobos Álvarez
89f0eedcfb
Simplify some -moz-fixed handling code.
This was introduced in #15916, but most of it is actually unreachable.
2017-03-11 23:57:39 +01:00
Abhishek Kumar
c7ed931276 text-overflow accepts only valid values for the second part of value
Fixes: https://github.com/servo/servo/issues/15491
2017-03-12 03:58:51 +05:30
bors-servo
e6af6a8f48 Auto merge of #15916 - canaltinova:moz-fixed, r=Manishearth
Stylo: Add support for "font-family: -moz-fixed"

Added support for "font-family: -moz-fixed" for stylo

---
<!-- 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 [Bug 1341637](https://bugzilla.mozilla.org/show_bug.cgi?id=1341637)

<!-- Either: -->
- [X] These changes do not require tests because it's stylo change

<!-- 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/15916)
<!-- Reviewable:end -->
2017-03-11 14:03:40 -08:00
Nazım Can Altınova
458b7682e6
Stylo: Add support for "font-family: -moz-fixed" 2017-03-12 00:57:20 +03:00
Manish Goregaokar
4deae33ab1 stylo: Make URLs work in inline style
MozReview-Commit-ID: 6Tc0kBw4V8c
2017-03-11 11:54:18 -08:00
bors-servo
06f99c13f2 Auto merge of #15913 - emilio:viewport-size, r=heycam,hiro
Use the proper viewport size for stylo

Reviewed upstream at [bug 1303229](https://bugzil.la/1303229).

<!-- 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/15913)
<!-- Reviewable:end -->
2017-03-11 04:40:31 -08:00
Emilio Cobos Álvarez
396fb62ca8
Bug 1303229: Get the proper viewport size for animations. r=hiro,heycam
While we're here, don't re-recompute the default computed values, just grab them
from the device.

MozReview-Commit-ID: GqqnPLIwN2F
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-11 11:54:14 +01:00
Emilio Cobos Álvarez
95ccfa748e
Bug 1303229: Get the proper viewport size for stylo. r=heycam
At least until we support scrollbars properly, this size is going to be the
correct one. I've left a TODO to grab the proper one once we support it.

This allows to trivially test viewport units for now.

MozReview-Commit-ID: JdaZ6WlZ2C6
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-11 11:54:12 +01:00
Emilio Cobos Álvarez
58c6aad1f0
style: Add the traversal kind to the style stats. 2017-03-11 11:31:11 +01:00
Emilio Cobos Álvarez
d3e7f1f0f4
style: Iterate the LRU cache contents from back to front.
We put the more recently used item last, so iterating then from left to right is
pointless.
2017-03-11 11:31:10 +01:00
Cameron McCormack
c0996c6536 stylo: Align eRestyle_Subtree value with RESTYLE_DESCENDANTS.
Handle the translation of eRestyle_Subtree into
(RESTYLE_SELF | RESTYLE_DESCENDANTS) in the From impl, too.
2017-03-11 09:33:55 +08:00
Nazım Can Altınova
bae7c50ef7
Fix wrong initial values in various single keyword properties 2017-03-10 17:18:22 +03:00
bors-servo
72128de681 Auto merge of #15901 - upsuper:text-align-last, r=Manishearth
Restore text-align-last removed in #15839 by mistake

<!-- 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/15901)
<!-- Reviewable:end -->
2017-03-09 21:03:10 -08:00
Xidorn Quan
4a897b25dc Restore text-align-last removed in #15839 by mistake 2017-03-10 15:35:24 +11:00
bors-servo
63bed27073 Auto merge of #15900 - hiikezoe:process-css-animations, r=heycam
Process css animations for gecko

<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1341985 .

---
<!-- 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 it's for 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/15900)
<!-- Reviewable:end -->
2017-03-09 20:23:21 -08:00
bors-servo
8b8eb5e192 Auto merge of #15896 - canaltinova:flex-basis, r=Manishearth
Change the predefined type of flex-basis and make gecko glue auto-generate

Gecko [doesn't support](https://bugzilla.mozilla.org/show_bug.cgi?id=1105111) content value in flex-basis yet. We had to change the predefined type to `LengthOrPercentageOrAuto` in stylo build.

---
<!-- 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 [Bug 1331529](https://bugzilla.mozilla.org/show_bug.cgi?id=1331529)

<!-- Either: -->
- [X] These changes do not require tests because it's stylo glue change.

<!-- 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/15896)
<!-- Reviewable:end -->
2017-03-09 18:46:37 -08:00
Hiroyuki Ikezoe
f2c547aaaf Call UpdateAnimations even if the element has no computed values. 2017-03-10 11:37:06 +09:00
Hiroyuki Ikezoe
c32ba98031 Skip update_animations if we have no running animations and the element becomes display:none. 2017-03-10 11:37:05 +09:00
Hiroyuki Ikezoe
9ff99d4608 Update CSS animations in a SequentialTask.
We create the SequentialTask only if:

* We have no old computed values and we have animation name style in the new
  computed values.
* Any animation properties is changed.
* display property is changed from 'none' and we have animation name style.
* display property is changed to 'none'.

In a subsequent patch we skip the SequentialTask if we have no running
animations and the display propery is changed to 'none'.
2017-03-10 11:36:58 +09:00
Hiroyuki Ikezoe
fdb8c48094 Split off animation related process in a function. 2017-03-10 11:09:18 +09:00
Hiroyuki Ikezoe
22de4dc7a6 Add a utility function to convert PseudoElement to nsIAtom*.
MozReview-Commit-ID: 14qYFpiW0iG
2017-03-10 11:08:58 +09:00
Hiroyuki Ikezoe
d8f08b80e0 Implement Gecko_StyleAnimationsEquals for checking nsStyleAutoArray<StyleAnimation> equality in servo side.
Later we update CSS animations if this function returns false.
2017-03-10 11:07:18 +09:00
bors-servo
d124297456 Auto merge of #15839 - chenpighead:stylo-text-justify, r=upsuper
Stylo - gecko glue code for text-justify

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

Implement gecko glue for text-justify property.

Gecko has supported text-justify in [Bug 276079](https://bugzilla.mozilla.org/show_bug.cgi?id=276079), and going to pref-on on Nightly very soon in [Bug 1343512](https://bugzilla.mozilla.org/show_bug.cgi?id=1343512). Let's make it work for stylo.

---
<!-- 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/15839)
<!-- Reviewable:end -->
2017-03-09 17:57:15 -08:00
Hiroyuki Ikezoe
2892071ce7 Update bindings. 2017-03-10 10:55:00 +09:00
Jeremy Chen
6ff62b1c36 Stylo - gecko glue code for text-justify 2017-03-10 09:34:47 +08:00
Nazım Can Altınova
aa5477bd34
Change predefined type of flex-basis / make gecko glue auto-generate
Gecko doesn't support content value in flex-basis yet.
2017-03-10 03:14:06 +03:00
bors-servo
ee223798cc Auto merge of #15893 - Manishearth:stylo-svg-pres, r=bz
Support SVG presentation attributes

r=bz from https://bugzilla.mozilla.org/show_bug.cgi?id=1329093

<!-- 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/15893)
<!-- Reviewable:end -->
2017-03-09 15:02:06 -08:00
Manish Goregaokar
eda6a4fc4f stylo: Pass parser URL data in Servo_DeclarationBlock_SetProperty*
MozReview-Commit-ID: EVk4aEoyiXv
2017-03-09 14:44:17 -08:00
Manish Goregaokar
14d8eb93ba stylo: Handle SVG presentation attributes 2017-03-09 12:23:30 -08:00
bors-servo
5c46e86546 Auto merge of #15888 - emilio:caching, r=Ms2ger
style: Simplify style sharing code.

No functional changes, just some code cleanup.

<!-- 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/15888)
<!-- Reviewable:end -->
2017-03-09 11:33:33 -08:00
Emilio Cobos Álvarez
727be58b4a
style: Simplify style sharing code. 2017-03-09 19:31:03 +01:00
bors-servo
e7efdfc655 Auto merge of #15869 - Iakis:NegBordRad, r=Wafflespeanut
Reject negative border radius

Replacerd Parse in parse_one_set_of_border_values with parse_non_negative and added tests for it
---
<!-- 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 #15345 (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/15869)
<!-- Reviewable:end -->
2017-03-09 04:52:35 -08:00
#
f5253c9f09 Fix and tests for negative border radius 2017-03-09 07:48:51 -05:00
bors-servo
dc3b32c853 Auto merge of #15861 - projektir:make-text-decoration-testable, r=Wafflespeanut
Make text decoration testable and do not serialize initial text-decoration-style

Servo now uses the same name for the text-decoration-line longhand property as Gecko. This was done to enable testing of the text-decoration shorthand.

The text-decoration shorthand has been fixed to not serialize initial text-decoration-style.

---

- [x ] `./mach build -d` does not report any errors
- [x ] `./mach test-tidy` does not report any errors
- [x ] These changes fix #15790

---

- [x ] There are tests for these changes

<!-- 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/15861)
<!-- Reviewable:end -->
2017-03-08 21:39:30 -08:00