Commit graph

2892 commits

Author SHA1 Message Date
Xidorn Quan
d4ea70fd34
style: Have the CSSOM appending behavior behind a pref and only enable it on Nightly.
Bug: 1461285
Reviewed-by: emilio
MozReview-Commit-ID: 6BzPTNjXjyA
2018-07-16 19:42:53 +02:00
Xidorn Quan
2be1375745
style: Add a declaration iterator to AllShorthand for simplify code.
Bug: 1461285
Reviewed-by: emilio
MozReview-Commit-ID: 9w2B3SpdkQo
2018-07-16 19:42:42 +02:00
Xidorn Quan
36038869aa
style: Rename DeclarationSource to DeclarationPushMode.
Bug: 1461285
Reviewed-by: emilio
MozReview-Commit-ID: Iyv9JrXrpzl
2018-07-16 19:42:27 +02:00
Cameron McCormack
f526af7f01
style: Remove angle values from image-orientation.
Bug: 1473450
Reviewed-by: emilio
MozReview-Commit-ID: FB74ILJM6Fm
2018-07-16 19:42:12 +02:00
Oriol Brufau
4e8d3fce38
style: Honor logical border colors in visited links.
Bug: 1472567
Reviewed-by: emilio
MozReview-Commit-ID: IF8yvkFmPc4
2018-07-16 19:41:58 +02:00
Emilio Cobos Álvarez
1c799dd296
style: Make writing-mode and direction non-animatable.
Per https://github.com/w3c/csswg-drafts/issues/2751

Bug: 1473779
Reviewed-by: heycam
MozReview-Commit-ID: GCG3vJWNPfC
2018-07-16 19:41:46 +02:00
Emilio Cobos Álvarez
4d005cb90e
style: Reformat most of inherited_box.mako.rs.
image-orientation is being changed as we speak, so I left it there to avoid
bitrot.

Bug: 1473779
Reviewed-by: heycam
MozReview-Commit-ID: IwpA5HEuVU
2018-07-16 19:41:28 +02:00
Philipp Klein
85af4145c3 style: Move clear CSS property outside mako
closes #21155
2018-07-10 09:18:33 +02:00
bors-servo
2bc70e738b
Auto merge of #21139 - kleinph:move-float-clear-outside-mako, r=emilio
style: Move `float` CSS property outside mako

Hi, I am fairly new to Rust and this is my first contribution to a Rust project.

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

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

I'm not sure if the approach with the two enums is good. Please let me know if this can be improved.
Regarding the tests I'm unsure: `tests/wpt/web-platform-tests/css/css-display/display-contents-float-001.html` seems to fail already before this PR, (and the cause is maybe not related to the style property definition).

Also I would like to add some docs, is it allowed to use the descriptions from MDN (https://developer.mozilla.org/en-US/docs/Web/CSS/float).

<!-- 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/21139)
<!-- Reviewable:end -->
2018-07-09 22:00:25 -04:00
Philipp Klein
c7871811c8 style: Move float CSS property outside mako
closes #21130
2018-07-09 12:47:07 +02:00
Emilio Cobos Álvarez
628ab7db01
style: Fix servo build. 2018-07-09 03:22:52 +02:00
Emilio Cobos Álvarez
d9d0186117
style: Trivial indentation fix.
MozReview-Commit-ID: JqBxF7i0HQZ
2018-07-09 03:05:45 +02:00
Emilio Cobos Álvarez
9f8c80fb3a
style: Make writing-mode and direction non-animatable.
Per https://github.com/w3c/csswg-drafts/issues/2751

Bug: 1473779
Reviewed-by: heycam
2018-07-09 03:05:32 +02:00
Emilio Cobos Álvarez
a11dcefee7
style: Reformat most of inherited_box.mako.rs.
image-orientation is being changed as we speak, so I left it there to avoid
bitrot.

Bug: 1473779
Reviewed-by: heycam
2018-07-09 03:05:19 +02:00
Emilio Cobos Álvarez
6518b0adfa
style: Other minor properties.mako.rs cleanups and improvements.
Also, add an is_logical method, which we'll use in a bit.

Bug: 1473793
Reviewed-by: heycam
MozReview-Commit-ID: Hq63wgbiRRu
2018-07-09 03:05:04 +02:00
Emilio Cobos Álvarez
263d4258ea
style: Add a clone helper that works regardless of whether the property is logical.
Bug: 1473793
Reviewed-by: heycam
2018-07-09 03:04:36 +02:00
Emilio Cobos Álvarez
769188ddbb
style: Remove dead code.
Bug: 1473793
Reviewed-by: heycam
2018-07-09 03:04:21 +02:00
Emilio Cobos Álvarez
c23dca874f
style: Reformat font.mako.rs.
To be consistent, use the block indentation the rest of the Rust code uses.

Differential Revision: https://phabricator.services.mozilla.com/D1906
Bug: 1472552
Reviewed-by: xidorn
2018-07-09 03:03:41 +02:00
Emilio Cobos Álvarez
c2d21a8497
style: Serialize content properties using Servo.
Bug: 1472443
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1901
2018-07-01 00:10:46 +02:00
Emilio Cobos Álvarez
856924f167
style: Make StyleContentType an enum class.
Most of it is automated by:

  %s/eStyleContentType_/StyleContentType::/g
  %s/nsStyleContentType/StyleContentType/g

But I removed some parentheses by hand.

Bug: 1472443
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1900
2018-07-01 00:10:31 +02:00
Emilio Cobos Álvarez
28c9820dd9
style: Expose logical props in computed style.
Bug: 1116638
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1862
2018-07-01 00:10:13 +02:00
Gerald Squelart
8488875a56
style: Removed layout.css.all-shorthand.enabled pref.
The 'all' shorthand has shipped a long time ago, so this pref is not needed
anymore.

Bug: 1459524
Reviewed-by: heycam
MozReview-Commit-ID: GND8qSVAfCG
2018-07-01 00:09:38 +02:00
Emilio Cobos Álvarez
06fa3406de
style: Put offset-* aliases behind a pref.
Bug: 1464782
Reviewed-by: xidorn
MozReview-Commit-ID: Hl6Muim3wVH
2018-07-01 00:08:20 +02:00
Emilio Cobos Álvarez
65953fb158
style: Rename offset-* logical properties to inset-*.
Bug: 1464782
Reviewed-by: xidorn
MozReview-Commit-ID: BW44sru99RF
2018-07-01 00:08:09 +02:00
Xidorn Quan
ce0496e116
style: Generate ComputedStyleMap entry list from property data.
This changes the order of properties returned from gCS. The old order
doesn't make much sense, and other browsers don't agree on an identical
order either, so it should be trivial to change it. Also the spec isn't
super clear / useful in this case.

Several -moz-prefixed properties are excluded from the list due to their
being internal. I suspect they are never accessible anyway, so probably
nothing gets changed by this.

Bug: 1471114
Reviewed-by: xidorn
MozReview-Commit-ID: 9LfangjpJ3P
2018-07-01 00:07:50 +02:00
Hiroyuki Ikezoe
d307b34be0
style: Introduce a constant variable to represents the number of all animatable longhands.
We will use this number to cap the pre-allocation AnimationValueMap in the next
patch.

Bug: 1418806
MozReview-Commit-ID: Iqq9plbD8Vl
2018-07-01 00:05:29 +02:00
Emilio Cobos Álvarez
750c223021
style: Fix tidy. 2018-06-23 20:34:10 +02:00
Emilio Cobos Álvarez
3a0c3224b9
style: Move the error reporter into ParserContext.
Summary:
This should make it easier to report errors, and also reduce codesize.

The reason this was so generic is that error reporting was unconditionally
enabled and was super-hot, but now that's no longer the case after bug 1452143,
so we can afford the virtual call in the "error reporting enabled" case.

This opens the possibility of simplifying a lot the error setup as well, though
this patch doesn't do it.

Test Plan: No behavior change, so no new tests.

Reviewers: xidorn

Bug #: 1469957

Differential Revision: https://phabricator.services.mozilla.com/D1734

MozReview-Commit-ID: F3wTdhX9MB5
2018-06-23 20:36:23 +02:00
Emilio Cobos Álvarez
bab7be63b2
style: Fix windows build bustage.
Bug: 1468651
MozReview-Commit-ID: 9Xj5lMFG4Ab
2018-06-23 20:36:13 +02:00
Emilio Cobos Álvarez
202ec8a8c8
style: Generate different files for different structs.
Bug: 1468651
Reviewed-by: heycam
MozReview-Commit-ID: KEDJ1zJVwMx
2018-06-23 20:36:02 +02:00
Emilio Cobos Álvarez
a4dcb33986
style: Make StyleStruct.name_lower snake case.
Bug: 1468651
Reviewed-by: heycam
MozReview-Commit-ID: A3TpDTmFgF
2018-06-23 20:35:49 +02:00
Emilio Cobos Álvarez
4571a71bfc
style: Rename mask.mako.rs to svg.mako.rs for consistency.
Bug: 1468651
Reviewed-by: heycam
MozReview-Commit-ID: 6sqGxL8hhA0
2018-06-23 20:35:37 +02:00
Emilio Cobos Álvarez
0a95513368
style: Rename the properties directories from "shorthand" to "shorthands", "longhand" to "longhands".
Bug: 1468651
Reviewed-by: heycam
MozReview-Commit-ID: CY4THCC4zkX
2018-06-23 20:35:18 +02:00
Emilio Cobos Álvarez
5c15c59f56
style: remove shorthand/serialize.mako.rs.
Bug: 1468651
Reviewed-by: heycam
MozReview-Commit-ID: 8Xyep2Q7trR
2018-06-23 20:35:03 +02:00
Xidorn Quan
8db8f95f1f
style: Add scrollcorner to -moz-appearance so that widget can render it.
Bug: 1463917
Reviewed-by: heycam
MozReview-Commit-ID: 1Za22ifONfG
2018-06-23 20:34:26 +02:00
Emilio Cobos Álvarez
e6f9ad0edb
style: Don't call the before change closure with the locked declaration block.
Test Plan: No behavior change.

Reviewers: xidorn

Bug #: 1468665

Differential Revision: https://phabricator.services.mozilla.com/D1681
2018-06-23 20:34:14 +02:00
Emilio Cobos Álvarez
00b42fc6ef
style: Remove some cfgs. 2018-06-23 20:34:10 +02:00
Jonathan Watt
1face496a2
style: -webkit-appearance alias for -moz-appearance (behind a pref).
Bug: 1429713
Reviewed-by: emilio
2018-06-18 19:17:22 +02:00
Hiroyuki Ikezoe
238314e606
style: Double f64::EPSILON for calculation error.
It's possible that both this_weight and other_weght have calculation errors
which are approximately equal to f64::EPSILON.

Bug: 1468294
Reviewed-by: birtles
MozReview-Commit-ID: 8OddG9rI3qd
2018-06-18 19:14:46 +02:00
Emilio Cobos Álvarez
ab760033fd
style: Fix servo build. 2018-06-12 12:15:18 -07:00
Emilio Cobos Álvarez
d65b29da27
style: Add CssPropFlags::SerializedByServo and use it on some simple properties.
The idea is to turn the simple properties into a blacklist instead really soon,
and fix the offending ones soon after, so that only shorthands and properties
with layout dependence (and maybe the scrollbar properties, because the poke at
LookAndFeel) are not serialized by Servo.

Bug: 1467536
Reviewed-by: xidorn
MozReview-Commit-ID: JTLNnmXzny8
2018-06-12 12:15:16 -07:00
Emilio Cobos Álvarez
011cad2534
style: Add a Servo API to get the serialized style of a property.
This is intended to be used by GetComputedStyle when there's no layout
dependency.

Bug: 1467536
Reviewed-by: xidorn
MozReview-Commit-ID: 3GAbjo1uQ34
2018-06-12 12:15:16 -07:00
Dan Glastonbury
314b14d46e
style: Fix nsStyleBorder::mBorderColor for GCC.
GCC doesn't like StyleComplexColor with constructor in an anonymous
struct in an anonymous union.  Replace the use of a union to access
`mBorder[..]Color` fields as an array with an accessor methods.

Bug: 1465307
Reviewed-by: xidorn
MozReview-Commit-ID: 1Wulh1qKYCZ
2018-06-12 12:15:15 -07:00
Emilio Cobos Álvarez
cdbc409759
style: Trivially simplify a condition.
Bug: 1466963
Reviewed-by: xidorn
MozReview-Commit-ID: L9LzpPt4js4
2018-06-12 12:15:15 -07:00
Emilio Cobos Álvarez
3c7fb2a217
style: Add a before-change callback to remove_property.
Bug: 1466963
Reviewed-by: xidorn
MozReview-Commit-ID: 4vyN9iLT7e3
2018-06-12 12:15:14 -07:00
Emilio Cobos Álvarez
6ca324f8b5
style: Remove unused PropertyDeclarationBlock::set_importance.
Bug: 1466963
Reviewed-by: xidorn
MozReview-Commit-ID: 1YrlOvktag9
2018-06-12 12:15:14 -07:00
Emilio Cobos Álvarez
e052666153
style: Fix a typo.
Nobody looks at the result from parsing, but this is the right thing to return.

Bug: 1466963
Reviewed-by: xidorn
MozReview-Commit-ID: 9P5VARiPIAk
2018-06-12 12:15:13 -07:00
Emilio Cobos Álvarez
9c51d31b05
style: Inline some trivial bits.
Bug: 1466963
Reviewed-by: xidorn
MozReview-Commit-ID: A219QehiMqZ
2018-06-12 12:15:13 -07:00
Emilio Cobos Álvarez
915c8725ae
style: Remove PropertyId::name.
It's only used for the error path in property parsing, so most of the time is
not useful.

Use the just-introduced NonCustomPropertyId::name to preserve the alias name,
which we were doing by passing the name around.

Bug: 1466645
Reviewed-by: xidorn
MozReview-Commit-ID: 46xxZKCoeBB
2018-06-12 12:15:12 -07:00
Emilio Cobos Álvarez
7529788375
style: Make getting a property name explicitly an indexing operation.
The six milliseconds spent in Olli's profile make me thing this is not getting
optimized and we expected.

Also move it to NonCustomPropertyId, so it works for aliases properly too.

Bug: 1466645
Reviewed-by: xidorn
MozReview-Commit-ID: 4d76Z55ZBEH
2018-06-12 12:15:12 -07:00