Commit graph

2616 commits

Author SHA1 Message Date
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
Emilio Cobos Álvarez
c6e43c0329
style: Avoid useless allocations in custom property name serialization.
And make transition-property more correct by serializing --0 unescaped instead
of escaped.

Bug: 1466645
Reviewed-by: xidorn
MozReview-Commit-ID: CCBSe5Frd0d
2018-06-12 12:15:11 -07:00
Emilio Cobos Álvarez
63ca2a803d
style: Make clearing atoms slightly more ergonomic.
I prefer to do it this way because Atom has inline paths for static atoms and
such.

Bug: 1466609
Reviewed-by: xidorn
MozReview-Commit-ID: CFsBHl80KDY
2018-06-12 12:15:11 -07:00
Emilio Cobos Álvarez
2c0a19e517
style: Move some parsing-only attributes to use #[parse(..)] instead of #[css(..)].
I need to admit I'm ambivalent about this one :).

Bug: 1466609
Reviewed-by: xidorn
MozReview-Commit-ID: F1jlfnQKXwo
2018-06-12 12:15:10 -07:00
Emilio Cobos Álvarez
f829300751
style: Don't look at the rule type from value parsing.
This would cause properties to change the value semantics between, e.g.,
@keyframes and non-@keyframes, which would be observable.

It happens not to be observable since the animation-* and transition-*
properties are not allowed in @keyframes, nor have bits in `contain`, and none
of the two properties are allowed in @page. But I think it's the right thing to
do.

This still causes a quirk like a property value in chrome / user origins being
potentially different if the value is specified via CSS var functions. But I
think that is fine.

Bug: 1466136
Reviewed-by: hiro
MozReview-Commit-ID: GhoPt0I34oO
2018-06-12 12:15:09 -07:00
Emilio Cobos Álvarez
0f1b79327f
style: Minor indentation cleanup.
MozReview-Commit-ID: JmilaCX3rNy
2018-06-12 12:15:07 -07:00
Emilio Cobos Álvarez
cf7b10a32d
style: Hide -moz- display values from content behind a pref.
Bug: 1288572
Reviewed-by: xidorn
MozReview-Commit-ID: HDQPub043H1
2018-06-12 12:15:07 -07:00
Emilio Cobos Álvarez
90ef5607e4
style: Move TransitionProperty where it belongs.
Bug: 1419695
Reviewed-by: xidorn
MozReview-Commit-ID: 9PN6VfbDbLA
2018-06-12 12:15:05 -07:00
Emilio Cobos Álvarez
f6f421f5aa
style: Hide multiple -moz-window-* properties from content.
Bug: 1419695
Reviewed-by: xidorn
MozReview-Commit-ID: Jsqt3kqjPiq
2018-06-12 12:15:05 -07:00
Emilio Cobos Álvarez
6940787916
style: Make the transition-property code make more sense.
We were working around the lack of alias support during parsing in
TransitionProperty by doing a Gecko lookup. That's a hack and is now gone.

Bug: 1419695
Reviewed-by: xidorn
MozReview-Commit-ID: EptUvJNTrZr
2018-06-12 12:15:04 -07:00
Emilio Cobos Álvarez
8777c4ee63
style: followup: set the rule type in the custom properties code, since we use it.
Though I think it may be slightly fishy if used in, e.g., a @keyframes block.

For our purposes right now it doesn't make a difference, I think.

Bug: 1466008
MozReview-Commit-ID: A7VCTOqaIuB
2018-06-02 12:08:58 +02:00
Emilio Cobos Álvarez
600f19540e
style: Make PropertyId::parse less of a footgun.
Bug: 1466095
Reviewed-by: xidorn
MozReview-Commit-ID: 2BmtSDPmHj9
2018-06-02 12:08:40 +02:00
Emilio Cobos Álvarez
5db1387f39
style: Make will-change honor prefs properly, and clean it up while at it.
Bug: 1466008
Reviewed-by: xidorn
MozReview-Commit-ID: JyzwaRgf5Ct
2018-06-02 12:08:25 +02:00
Dan Glastonbury
4108b1b278
style: Change nscolor to StyleComplexColor in SVG properties.
Change mStopColor, mFloodColor, and mLightingColor in nsStyleSVGReset.

Bug: 1457353
Reviewed-by: xidorn
MozReview-Commit-ID: KMRMtHk1jNK
2018-06-02 12:07:42 +02:00
Morgan Rae Reschenberg
0bfd1dc5c0
style: Add contain:size and contain:content parsing functionality.
Bug: 1463589
Reviewed-by: emilio
MozReview-Commit-ID: 4fOqln3oOpC
2018-06-02 12:07:28 +02:00
Emilio Cobos Álvarez
92e2adf45f
style: Cleanup transform animation.
Reviewed-by: hiro
But: 1465066
MozReview-Commit-ID: D9rq8CZIgf5
2018-06-02 12:06:22 +02:00
Hiroyuki Ikezoe
378fcc2b6a
style: Implement the smarter interporation for transform.
Corresponding to this spec change;
32812668df

The expected value in test_transitions_per_property.html can be calculated;

  'start' + ('end' - 'start') * 0.25

Bug: 1464647
Reviewed-by: birtles, emilio
MozReview-Commit-ID: NI9gOUuPnG
2018-06-02 12:05:11 +02:00
Yusuf Sermet
f0fbcf204e
style: Create a stacking context for contain:paint.
Bug: 1463599
Reviewed-by: mattwoodrow
MozReview-Commit-ID: Ln72MOlHXwi
2018-06-02 12:04:48 +02:00
Emilio Cobos Álvarez
82e97b8ec5
style: The fix: scale and translate appropriately.
Loops are hard. This hasn't been the funniest Saturday evening.

Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: I8rfuIRIsrY
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
b199ca864a
style: Move skew and rotation application to their own scope for clarity.
The skew resetting of temp I think fixes a bug in presence of skew in every
direction, but again haven't double-checked.

Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: Bn93CoaG8Bu
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
66b8bd2829
style: Cleanup multiply().
We assign all the members, the result matrix doesn't really need to be any clone
of a.

Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: 3NkhvyfqQL
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
4c51624bcf
style: Add a FIXME comment which I think reveals a bug but I haven't confirmed it.
Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: DgCfqA5TNzP
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
875c4ff621
style: Cleanup and add references to decompose_3d_matrix.
Same, no functional change, but I basically rewrote this two times so...

Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: FXOnJDPyPu5
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
6ddb04a483
style: Cleanup and add references to Quaternion::animate.
No functional change, but I did this while searching for the bug.

Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: KsJxFoYaOq1
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
99d4e7b65c
style: Trivial cleanup.
Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: K7zVYGiYAn6
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
92b856b70a
style: Reuse computed rotate animation.
I have the feeling this fixes a bug, but...

Bug: 1464615
Reviewed-by: hiro
MozReview-Commit-ID: Aj478qCbMV9
2018-05-28 16:02:31 +02:00
Emilio Cobos Álvarez
2e500d70ef
style: Match rotate ops.
Per bug 1322189 we really should. I've copied the setup we have already for
translate / scale, but we should really clean this up a bit more I'd think.

In any case, probably skew should be matched as well...

Bug: 1464615
Reviewed-by: hiro
MozReview-Commit-ID: Jky5k8HVfuH
2018-05-28 16:02:31 +02:00