Commit graph

2892 commits

Author SHA1 Message Date
bors-servo
d744e35d38
Auto merge of #20482 - brainlessdeveloper:list-style-image-computed, r=emilio
Implement a URL-generic type for ListStyleImage

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

This should fix the following two "expected to fail" tests described in https://github.com/servo/servo/issues/18015:

- getComputedStyle(elem) for url() listStyleImage uses the resolved URL
  and elem.style uses the original URL

- getComputedStyle(elem) for url() listStyle uses the resolved URL
  and elem.style uses the original URL

I updated the test failure expectations by removing the corresponding `.ini` file.

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

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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/20482)
<!-- Reviewable:end -->
2018-04-03 18:12:13 -04:00
Fausto Núñez Alberro
cc838f54e5
Implement a URL-generic type for list-style-image
This should fix the following two "expected to fail" tests:

- getComputedStyle(elem) for url() listStyleImage uses the resolved URL
  and elem.style uses the original URL

- getComputedStyle(elem) for url() listStyle uses the resolved URL
  and elem.style uses the original URL
2018-04-03 22:01:26 +02:00
Emilio Cobos Álvarez
15c416b133
style: Use a more consistent style for parsing functions. 2018-04-02 19:34:58 +02:00
Emilio Cobos Álvarez
744809a8b2
style: Add support for 'flex-basis:content' in the style system.
Bug: 1105111
Reviewed-by: xidorn
MozReview-Commit-ID: 5WhgHJJ0mDB
2018-04-02 03:17:56 +02:00
Mats Palmgren
3532f64b32
[css-multicol] style: Implement percentages for 'column-gap'.
Bug: 1398537
Reviewed-by: emilio,dholbert
2018-04-02 00:56:45 +02:00
Li Hao Tan
8d5a2a9aeb Refactor text-emphasis-position to use ${helpers.predefined_type(..)} 2018-04-01 21:12:01 +08:00
Xidorn Quan
cda4e6d751 Add comment for overflow-{x,y} applying to ::placeholder. 2018-03-27 17:55:04 +11:00
Emilio Cobos Álvarez
bd70c405b4
style: Rename StyleContext to ComputedStyle.
Bug: 1447483
Reviewed-by: jwatt
MozReview-Commit-ID: KATZ6DkmpVY
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2018-03-22 18:04:29 +01:00
Jonathan Watt
b8185b4744 Add Servo_Property_IsShorthand to geckolib/glue.rs 2018-03-19 14:55:39 +00:00
Emilio Cobos Álvarez
55e2cd5dc3
style: Remove unsound Atom From implementations.
Fixes #20158
2018-03-19 11:06:53 +01:00
bors-servo
aa8fb3a204
Auto merge of #20252 - NeverHappened:extract_text_emphasis_style, r=upsuper
Extract text emphasis style

<!-- Please describe your changes on the following line: -->
Extracted the text-emphasis-style property out of the inherited_text.mako.rs.
This is a part of #19015

---
<!-- 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] `./mach cargo-geckolib check` does not report any errors
- [X] These changes fix #19940 (github issue number if applicable).

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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/20252)
<!-- Reviewable:end -->
2018-03-09 19:20:10 -05:00
Dmitry
a1dd888c23 Rename entities that belong to text-emphasis-style value. Fix order of imports 2018-03-09 20:55:26 +03:00
Emilio Cobos Álvarez
3fc5bf87d3
style: Fix serialization of place-items.
If the justify-items / align-items value has the `legacy` bit or anything like
that we shouldn't serialize it, just as we don't parse it.

Bug: 1339656
Reviewed-by: xidorn
MozReview-Commit-ID: JsM4NrePEU6
2018-03-09 14:48:43 +01:00
Anthony Ramine
afaa00a344 Remove some uses of trivial_to_computed_value 2018-03-09 11:57:22 +01:00
Dmitry
73113e28dd Move text-emphasis-style variables out of mako templates 2018-03-09 00:04:32 +03:00
bors-servo
212c321145
Auto merge of #20240 - emilio:special-color-fix, r=upsuper
style: Fix special color keywords.

They're -moz-activehyperlinktext and -moz-visitedhyperlinktext.

This fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1444059.

<!-- 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/20240)
<!-- Reviewable:end -->
2018-03-08 10:06:03 -05:00
bors-servo
8133f788cf
Auto merge of #20236 - emilio:to-css-skip-if, r=nox
Introduce #[css(skip_if)]

This is most of #20224 but without the actual counter() fix since it's waiting on a WPT update.

<!-- 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/20236)
<!-- Reviewable:end -->
2018-03-08 09:16:55 -05:00
Emilio Cobos Álvarez
0717047e1e
style: Make weird color parsing marginally faster. 2018-03-08 14:08:54 +01:00
Xidorn Quan
ecbc55ffcf Construct URLValue eagerly and share it between specified value and style structs. 2018-03-08 23:34:35 +11:00
Xidorn Quan
a99ca543cd Add SpecifiedImageUrl for <url> used as images. 2018-03-08 23:34:32 +11:00
Xidorn Quan
14b708311b Remove some useless clone() call on SpecifiedUrl::image_value. 2018-03-08 21:35:33 +11:00
Emilio Cobos Álvarez
1f4b3556e6
style: reindent list-style-type. 2018-03-08 10:26:40 +01:00
Emilio Cobos Álvarez
989e1c2e68
style: Remove outdated TODO. 2018-03-08 10:26:24 +01:00
Anthony Ramine
90b23963b7 Introduce #[css(if_empty = "…", iterable)] 2018-03-07 13:07:13 +01:00
Anthony Ramine
85950a801f Move #[css(iterable)] on fields rather than variants 2018-03-06 11:08:19 +01:00
Anthony Ramine
ca45695db1 Introduce #[css(skip)] 2018-03-05 15:53:15 +01:00
Anthony Ramine
75b05c518d Derive ToCss for DeclaredValueOwned rather than DeclaredValue 2018-03-05 12:02:32 +01:00
Anthony Ramine
247bcbbbd6 Derive ToCss for all vector longhands that cannot be empty
We don't need to check for emptiness and write `none` for them.
2018-03-05 12:02:31 +01:00
bors-servo
1783e41f34
Auto merge of #20191 - jfkthame:font-shorthand-resets-variation-settings, r=emilio
style: Make 'font' shorthand reset 'font-variation-settings' property

As required by the spec: https://drafts.csswg.org/css-fonts-4/#font-prop

See https://bugzilla.mozilla.org/show_bug.cgi?id=1435983

Basically, make font-variation-settings work in the same way as font-feature-settings
already does.

- [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).

- [ ] There are tests for these changes OR
- [X] These changes do not require tests because font-variation-settings isn't supported in servo; it is implemented here for gecko/stylo, and will be tested by mozilla-central mochitests.

<!-- 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/20191)
<!-- Reviewable:end -->
2018-03-04 11:50:56 -05:00
bors-servo
a716dfd40b
Auto merge of #20192 - servo:derive-all-the-things, r=emilio
Derive ToCss for DeclaredValue

<!-- 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/20192)
<!-- Reviewable:end -->
2018-03-04 09:29:01 -05:00
Anthony Ramine
886554dba5 Derive ToCss for DeclaredValue 2018-03-04 15:21:11 +01:00
Anthony Ramine
1937f594ac Implement ToCss for UnparsedValue 2018-03-04 15:16:09 +01:00
Jonathan Kew
33ead015b1 style: Make 'font' shorthand reset the 'font-variation-settings' property.
As required by the spec: https://drafts.csswg.org/css-fonts-4/#font-prop

See https://bugzilla.mozilla.org/show_bug.cgi?id=1435983

Basically, make font-variation-settings work in the same way as font-feature-settings
already does.
2018-03-04 12:26:32 +00:00
Anthony Ramine
6ce5e9a869 Never store a squared root in SquaredDistance 2018-03-04 02:10:44 +01:00
Jonathan Kew
93b7d01324
style: Add font-optical-sizing property.
Bug: 1435692
Reviewed-by: emilio
2018-03-03 20:42:40 +01:00
Emilio Cobos Álvarez
569dde72d0
style: Fix text-emphasis-style conversion.
Was accidentally broken in #20178 and is causing orange.
2018-03-03 18:22:27 +01:00
Anthony Ramine
7e1c23cb74 Replace a boolean with a new FillMode enum for text-emphasis-style
This allows us to derive some ToCss and Parse code.
2018-03-03 16:15:20 +01:00
Anthony Ramine
13c40f4fb8 Derive ToCss for TransitionProperty 2018-03-03 16:15:20 +01:00
bors-servo
476a0764f5
Auto merge of #20171 - servo:content-item-counters, r=emilio
Make ContentItem use a CustomIdent for counter names

See https://github.com/w3c/csswg-drafts/pull/2377.

<!-- 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/20171)
<!-- Reviewable:end -->
2018-03-02 11:18:49 -05:00
Anthony Ramine
a4d3a8d74a Make ContentItem use a CustomIdent for counter names
See https://github.com/w3c/csswg-drafts/pull/2377
2018-03-02 16:06:54 +01:00
Anthony Ramine
3abc020744 Kill RUSTC_HAS_PR45225 🎉 2018-03-01 14:47:57 +01:00
bors-servo
a0be3a7fae
Auto merge of #20138 - emilio:longhand-iterator, r=nox
style: Only expose longhands to rust via iterators.

The key here is that we only filter longhands if the shorthand is accessible to
content and vice-versa. This prevents the bug that prevented me to land this
patch before, which was us not expanding properly chrome-only shorthands.

<!-- 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/20138)
<!-- Reviewable:end -->
2018-02-28 06:28:41 -05:00
Emilio Cobos Álvarez
68971c86bc
style: Remove unused function. 2018-02-28 12:04:49 +01:00
Emilio Cobos Álvarez
3fd5f796f0
style: Handle properly potentially-disabled longhands in a shorthand. 2018-02-28 12:04:49 +01:00
Emilio Cobos Álvarez
15b0a32035
style: Put all the multicol props under the same pref for Servo.
Otherwise it becomes insane.
2018-02-28 12:04:47 +01:00
Anthony Ramine
c4efbb4d51 Replace ColorOrAuto by CaretColor
This is its only use.
2018-02-28 10:25:59 +01:00
Emilio Cobos Álvarez
220cc9ba65
style: Fix overflow-clip-box-{block,inline} to be under the right pref. 2018-02-28 00:37:07 +01:00
Emilio Cobos Álvarez
6cc6280004
style: Remove a stray pref value.
This should've been removed in
https://bugzilla.mozilla.org/show_bug.cgi?id=1398492
2018-02-28 00:33:41 +01:00
Emilio Cobos Álvarez
8c4b401dd3
style: Only expose longhands to rust via iterators.
The key here is that we only filter longhands if the shorthand is accessible to
content and vice-versa. This prevents the bug that prevented me to land this
patch before, which was us not expanding properly chrome-only shorthands.

Again, this is incomplete, and I need to teach LonghandsToSerialize to get a
potentially incomplete list of properties, and all that.
2018-02-28 00:19:31 +01:00
Emilio Cobos Álvarez
650e947c94
style: Make Servo deal with CSS property prefs more correctly.
Right now you could still set preffed-off properties from CSSStyleDeclaration.
2018-02-27 19:29:07 +01:00