Commit graph

6367 commits

Author SHA1 Message Date
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
bors-servo
030509e66b
Auto merge of #20131 - servo:moz-tab-size, r=emilio
Replace NonNegativeLengthOrNumber by a specific type for -moz-tab-size

This is the only use of this type.

<!-- 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/20131)
<!-- Reviewable:end -->
2018-02-27 12:17:43 -05:00
Emilio Cobos Álvarez
d016278159
style: Remove unused function. 2018-02-27 13:07:37 +01:00
Emilio Cobos Álvarez
17257f94b9
style: Split out NonCustomPropertyId::enabled_for_all_content from allowed_in. 2018-02-27 13:07:36 +01:00
bors-servo
a7f38f0f32
Auto merge of #20133 - emilio:kill-xbl, r=xidorn
style: Make Shadow DOM not use XBL anymore.

Bug: 1425759
Reviewed-by: xidorn
MozReview-Commit-ID: Jf2iGvLC5de

<!-- 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/20133)
<!-- Reviewable:end -->
2018-02-27 05:47:29 -05:00
Anthony Ramine
27732c7dbb Replace NonNegativeLengthOrNumber by a specific type for -moz-tab-size
This is the only use of this type.
2018-02-27 11:26:52 +01:00
Emilio Cobos Álvarez
a5957fadf6
style: Update bindings. 2018-02-27 11:14:19 +01:00
Emilio Cobos Álvarez
cfbdf3d694
style: Make Shadow DOM not use XBL anymore.
More improvements to come. In particular, this still iterates through Shadow DOM
in each_xbl_cascade_data, but that should be changed later. That allows to
cleanup a bunch of stuff and finally fix Shadow DOM cascade order.

We still rely on the binding parent to be setup properly in the shadow tree, but
that requirement can go away later (we can walk the containing shadow chain
instead).

This mostly focuses on removing the XBL binding from the Shadow host.

It'd be nice to do EnumerateShadowRoots faster. I think that should also be a
followup, if needed.

Bug: 1425759
Reviewed-by: xidorn
MozReview-Commit-ID: Jf2iGvLC5de
2018-02-27 11:14:18 +01:00
bors-servo
b6bd719c5d
Auto merge of #20058 - Eijebong:rayon1.0, r=jdm
Bump rayon to 1.0

<!-- 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/20058)
<!-- Reviewable:end -->
2018-02-27 00:10:51 -05:00
bors-servo
6df0dc5b27
Auto merge of #20124 - servo:perspective, r=emilio
Replace LengthOrNone by a specific type for the perspective property

<!-- 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/20124)
<!-- Reviewable:end -->
2018-02-26 16:35:32 -05:00
Anthony Ramine
260e05320c Replace LengthOrNone by a specific type for the perspective property
This was its only use, and it was bugged: AFAIK this didn't properly
clamp animated values below 0.
2018-02-26 22:32:06 +01:00
Anthony Ramine
4a98fa70bf Streamline parsing of NonNegativeLengthOrNumber a bit 2018-02-26 22:11:17 +01:00
Anthony Ramine
f10e485740 Remove 2 unused type aliases 2018-02-26 16:40:19 +01:00
Anthony Ramine
f097dfad59 Reorder some stuff in gecko.mako.rs 2018-02-26 15:38:30 +01:00
Anthony Ramine
e2a6d07dad Remove TransitionProperty::All 2018-02-26 14:30:53 +01:00
Emilio Cobos Álvarez
28ea593347
style: Make a style sharing check account for Shadow DOM explicitly too.
Good I added tests for this (style-sharing-across-shadow.html).

Bug: 1425759
Reviewed-by: xidorn
MozReview-Commit-ID: 7d4WioCDAn7
2018-02-26 11:40:28 +01:00
Emilio Cobos Álvarez
07f86404cd
style: Make the simplified children iterator check account for Shadow DOM on its own.
We are relying in the XBL binding for the shadow host, we need to check
explicitly.

Also, we were checking in_shadow_tree, which is really broad. Just
is_html_slot_element should do, since the rest of the nodes should have only
light tree children.

Bug: 1425759
Reviewed-by: xidorn
MozReview-Commit-ID: KAFRVxaLsK
2018-02-26 11:40:13 +01:00
Emilio Cobos Álvarez
a2382483f0
style: Remove useless dereferencing. 2018-02-24 23:26:55 +01:00
Emilio Cobos Álvarez
13f61a6e5f
style: Indent properly a couple more functions. 2018-02-24 23:23:16 +01:00
Emilio Cobos Álvarez
a6c6ef91e0
style: Reference #20116 from a few places. 2018-02-24 22:49:32 +01:00
Emilio Cobos Álvarez
f2a808ad58
style: Break needs_animations_update into pieces.
To hopefully make some sense out of it.
2018-02-24 22:45:51 +01:00
Emilio Cobos Álvarez
e30a4d2ad2
style: return early in needs_animations_update. 2018-02-24 22:45:49 +01:00
Emilio Cobos Álvarez
e5bd8fc5d8
style: Return early instead of indenting in animation code.
And also leave some WTF comments, because they make no sense so far.
2018-02-24 22:45:46 +01:00
Emilio Cobos Álvarez
e77dd773d8
style: Other miscellaneous cleanup. 2018-02-24 22:45:45 +01:00
Emilio Cobos Álvarez
23d9462d23
style: Remove unused and somewhat dubious GeckoElement::set_data. 2018-02-24 22:45:44 +01:00
Emilio Cobos Álvarez
601a351632
style: Remove some get_ prefixes from Gecko functions. 2018-02-24 22:45:43 +01:00
Emilio Cobos Álvarez
f2efd04a5d
style: Make Element::id not clone the attribute. 2018-02-24 22:45:43 +01:00
Emilio Cobos Álvarez
98c9292ecb
style: Remove get_ prefix from get_state and get_id. 2018-02-24 22:45:42 +01:00
Emilio Cobos Álvarez
b8fb41da0c
style: Remove get_css_transitions_info and might_need_transition_update_per_property from TElement.
They're only called from wrapper.rs, there's no need to expose them in the
common trait.
2018-02-24 22:45:41 +01:00
Emilio Cobos Álvarez
607cf5aa3c
style: Remove the get_ prefix from get_smil_override, and other animation stuff. 2018-02-24 22:45:41 +01:00
Emilio Cobos Álvarez
c5bfc81b74
style: Remove get_animation_rule_by_cascade.
It's pretty useless.
2018-02-24 22:45:40 +01:00
Emilio Cobos Álvarez
8d34aacb3b
style: Remove some useless explicit dereferencing. 2018-02-24 22:45:39 +01:00
Emilio Cobos Álvarez
7ab4b21bc3
selectors: Remove the get_ prefix from get_local_name and get_namespace. 2018-02-24 22:45:38 +01:00
Emilio Cobos Álvarez
da99f159f4
style: Add a shadow root accessor.
I'm going to use it in a bit.
2018-02-24 20:29:36 +01:00
Bastien Orivel
fae2d9839f Bump rayon to 1.0 2018-02-24 13:50:03 +01:00
Anthony Ramine
0a3f30fb12 Return an error when animating column-count: auto
This changes the behaviour of animations of `column-count`
(hello Captain Obvious) but this is a bugfix.
2018-02-22 10:23:58 +01:00
Anthony Ramine
761689f32d Replace PositiveIntegerOrAuto by ColumnCount
It was its only use.
2018-02-22 10:16:46 +01:00
Hiroyuki Ikezoe
2559cfd404 Update bindings. 2018-02-22 07:54:32 +09:00
Hiroyuki Ikezoe
42b0ab77f4 Post DISPLAY_CHANGED_FROM_NONE sequential task if the display property is changed from 'none' in the case the element has script animations 2018-02-22 06:00:07 +09:00
Hiroyuki Ikezoe
6bba9d4dab Add a new sequential task flag for display propery changes from 'none'
Unlike CSS animations/transitions, script animations keep alive on display:none
elements, so once the display property was changed to others in normal
styling, we need to do styling for the script animations in the second
animation traversal.  Otherwise, the styling for the script animations will
be deferred to the next frame.
2018-02-22 06:00:07 +09:00
Hiroyuki Ikezoe
5ba2e874b1 Factor out a new function to check display property is changed from 'none' to other 2018-02-22 06:00:07 +09:00
bors-servo
691f3be24a
Auto merge of #20082 - emilio:ignore-existing-styles, r=bholley
style: Cleanup always-false argument to Servo_ResolveStyleLazily.

I changed this setup in https://bugzilla.mozilla.org/show_bug.cgi?id=1414999,
because it was totally unsound.

<!-- 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/20082)
<!-- Reviewable:end -->
2018-02-21 06:09:15 -05:00
bors-servo
2c060eb81a
Auto merge of #20081 - emilio:more-longhand-stuff, r=nox
style: More serialization tweaks.

This still doesn't fix everything. In particular, we need to check whether the
subproperty will be enabled in Longhands and LonghandsToSerialize too.

I haven't decided yet on what's the best way to do that.

<!-- 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/20081)
<!-- Reviewable:end -->
2018-02-20 23:49:19 -05:00
Emilio Cobos Álvarez
e47b3b23ab
style: Update bindings. 2018-02-20 21:08:21 +01:00
bors-servo
05b8ba0a48
Auto merge of #20079 - servo:ZEH-INDEX, r=emilio
Replace IntegerOrAuto with ZIndex

It's its only use.

<!-- 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/20079)
<!-- Reviewable:end -->
2018-02-20 12:13:40 -05:00
Emilio Cobos Álvarez
0b1f78275c
style: Remove unneeded whitespace.
I bet it was added when this code was part of a mako file.
2018-02-20 16:32:13 +01:00
Anthony Ramine
b44ffcf498 Replace IntegerOrAuto with ZIndex
It's its only use.
2018-02-20 15:18:22 +01:00
Emilio Cobos Álvarez
1359c7c218
style: Don't try to serialize the same shorthand over and over.
I looked at what were we doing in that loop, and we're doing tons of dumb stuff.

In particular, we try to serialize the "all" shorthand all the time. This patch
prevents us from trying to serialize shorthands that we've already tried to
serialize.
2018-02-20 14:21:35 +01:00
Emilio Cobos Álvarez
c09257b540
style: There's no need to check the serialized custom properties.
Given they're not duplicated, and can't be part of a shorthand.
2018-02-20 14:21:34 +01:00