Commit graph

60 commits

Author SHA1 Message Date
Nazım Can Altınova
f8710bc189
stylo: Support other unit types in computed angle 2017-05-01 16:25:18 +03:00
Hiroyuki Ikezoe
f15896078a Use FunctionKeyword for computed_value of timing-function as well. 2017-04-28 09:11:58 +09:00
Boris Chiou
f1feddf52c Add frames into style system and update animation with frames functions. 2017-04-27 12:24:50 +08:00
Simon Sapin
0ba5cae707 Add 'fallback' descriptor to @counter-style 2017-04-26 13:02:30 +09:00
Nathan Froyd
7c6fda8ea9 switch gecko_bindings over to the gecko_debug feature
...so that they use the correct Gecko structs regardless of whether Rust
code is being compiled with debug assertions or not.
2017-04-22 17:00:24 -04:00
Anthony Ramine
dfbd89860a Don't reject out of bound calc() values at parsing-time
https://bugzilla.mozilla.org/show_bug.cgi?id=1355014
2017-04-12 14:07:38 +02:00
bors-servo
42f58503c0 Auto merge of #16169 - servo:stylo-heapsize, r=emilio
Remove heapsize for Stylo

It doesn’t seem to be used, and is causing compilation trouble for Gecko: https://bugzilla.mozilla.org/show_bug.cgi?id=1350581

<!-- 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/16169)
<!-- Reviewable:end -->
2017-04-05 03:59:26 -05:00
Xidorn Quan
37585309e9 Use a UrlExtraData type alias to unify url handling logic. 2017-04-03 21:57:16 +10:00
bors-servo
fac0d17fd6 Auto merge of #16224 - servo:valid-fontface, r=upsuper
Make the parser accept @font-face rules without font-family or src.

Fix #16165.

Also, it turns out that the CSSFontFaceRule IDL specified in the css-fonts spec is not web-compatible. Instead browsers implement a .style attribute like in CSSStyleRule: https://github.com/w3c/csswg-drafts/issues/825

This in turn requires preserving data about which descriptors were set or not (distinguishing unset from set to a value that happens to be the initial value), so this commit also makes every field `Option<_>`.

<!-- 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/16224)
<!-- Reviewable:end -->
2017-04-03 03:53:09 -05:00
Xidorn Quan
0a97a0df0c Create URLExtraData for holding base uri, referrer, and principal. 2017-04-03 14:30:33 +10:00
Hiroyuki Ikezoe
f36199201c Set each control points when converting specified keyworded timing function to nsTimingFunction.
Gecko's timing function (nsTimingFunction) needs to be specified
each control points if timing function can be represented as cubic-bezier
function. To avoid scattering control points values (e.g. 0.25, 0.1, ...)
we convert specified value to computed value and then use control points
values of the computed value.
2017-04-03 10:11:21 +09:00
Simon Sapin
b43e2fb0df Macroize conversion of @font-face values to Gecko types 2017-04-01 14:05:32 +02:00
Xidorn Quan
e0c9a3fa12 Add function for sugar of nsCSSValue. 2017-03-30 11:41:08 +11:00
Xidorn Quan
e36b92507e Add FFI for nsCSSFontFaceRule. 2017-03-30 10:46:46 +11:00
Simon Sapin
94eb159137 Remove heapsize for Stylo 2017-03-28 17:50:52 +02:00
Bobby Holley
7654488988 stylo: Remove ThreadSafeArray.
MozReview-Commit-ID: JSpV8nhIVQA
2017-03-27 20:36:42 -07:00
Emilio Cobos Álvarez
9e2977d49e
style: Fix Geckolib build. 2017-03-27 12:42:32 +02:00
Emilio Cobos Álvarez
c7ce2ff483
style: Make numbers keep track of whether they were specified as calc(). 2017-03-27 03:56:30 +02:00
Bobby Holley
e485365288 Bug 1348606 - Use a threadsafe array for counters. r=xidorn
MozReview-Commit-ID: KgTgcD5mGqr
2017-03-23 09:35:12 -07:00
Stefano Chiodino
f195b247c0 #15842 Add gecko glue for caret-color.
Implement from(StyleComplexColor) for ColorOrAuto. Thanks @emilio. (+4 squashed commits)
Squashed commits:
[baf7cc0] Add clone to caret-color
[9cb82ca] Correctly call methods to copy a color in a SympleComplexColor and getting its auto
[c483f07] Add set and copy functions for caret_color
[0aa20be] Move caret-color and set its product property to gecko
2017-03-16 16:13:34 +00:00
Manish Goregaokar
07723eba7a stylo: Implement remaining content values
MozReview-Commit-ID: 9fLM5bdR8hr
2017-03-14 09:24:58 -07:00
Boris Chiou
510a4d05ba Bug 1248340 - Update the step data member in ns_timing_function.rs.
Replace mStep with mStepsOrFrames, and panic in From trait for frames timing
function.
2017-03-08 11:37:52 +08:00
Hiroyuki Ikezoe
96dbc9849d ensure_len() for nsStyleAutoArray<StyleTransition>. 2017-03-07 13:26:03 +09:00
bors-servo
d3ba09e588 Auto merge of #15627 - Manishearth:stylo-svg, r=heycam
stylo: Finish all SVG properties

reviewed in bug https://bugzilla.mozilla.org/show_bug.cgi?id=1338388

<!-- 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/15627)
<!-- Reviewable:end -->
2017-02-18 04:13:59 -08:00
Manish Goregaokar
fa9881b829 stylo: Add mako template for URLOrNone, use for marker-* properties
MozReview-Commit-ID: 4QKKzJ1DVYP
2017-02-18 02:43:31 -08:00
Cameron McCormack
5531e38c22 stylo: Don't leak nsStyleCoord::Calc objects when setting gradients. 2017-02-18 18:01:02 +08:00
Manish Goregaokar
20796ee94e stylo: Implement scroll-snap-coordinate
MozReview-Commit-ID: 6mr4ktfeEGT
2017-02-09 15:09:27 -08:00
Manish Goregaokar
34ba00e6d9 Basic handling framework for presentation attributes in Stylo, with handling for font-size and color
This introduces a basic framework for servo's style system to be able
to query the style of presentation attributes which it can then insert
into the cascade. It uses that framework to implement the size and
color attributes on <font>.

There are a number of improvements that can be done on top of this:

 - Implement all other properties
 - Abstractify the ruledata parameter of the mappers using templates or virtual dispatch so that it can be a Servo decl block instead
 - Implement aforementiond abstraction over Servo decl blocks (this obsoletes the code in the first item above, so it might just be better to skip that and directly do this)
 - Replace uses of nsHTMLStyleSheet with an abstract base class containing common elements between Servo and Gecko

I'd prefer for these to be done in separate steps.
2017-02-03 17:35:44 -08:00
Hiroyuki Ikezoe
10b6c1bb4f Implement clone_transform.
The implementation of clone_transform is an adaptation of set_transform.

MozReview-Commit-ID: ESE1ha0x666
2017-02-04 08:54:00 +09:00
Hiroyuki Ikezoe
51faa53ee2 Bug 1328787 - Part 7: Implement From for specified TransitionTimingFunction. r=heycam
Now animation-timing-function in keyframe is stored as specified
TransitionTimingFunction.  We need a way to convert it to nsTimingFunction too.

MozReview-Commit-ID: C8j5PmJFm2i
2017-01-29 09:07:41 +09:00
Emilio Cobos Álvarez
2dceb4502f
Bug 1331213: Add sugar for nsCSSValue and nsCSSValue::Array. r=heycam r=Manishearth
I will use this soon to implement the media query evaluation code.

Please review carefully.

MozReview-Commit-ID: HXelawXBfH8
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-01-17 14:05:34 +01:00
Hiroyuki Ikezoe
2d19e67fc4 Bug 1330824 - Add IndexMut for nsStyleAutoArray. r=heycam
MozReview-Commit-ID: 9EU8g4SLoHp
2017-01-14 11:42:23 +09:00
Manish Goregaokar
d87b710fdd stylo: Store servo computed values for animation properties
MozReview-Commit-ID: IoQLN5tdIBw
2017-01-11 15:24:53 -08:00
Hiroyuki Ikezoe
ff0819b2d4 Add impl From<nsTimingFunction> for TransitionTimingFunction and impl From<TransitionTimingFunction> for nsTimingFunction. r=heycam 2017-01-10 12:24:59 +09:00
Hiroyuki Ikezoe
98ed440597 Implement nsStyleAutoArray.ensure_len(). r=heycam 2017-01-10 12:24:59 +09:00
Hiroyuki Ikezoe
dc3b4803d1 Implement Index for nsStyleAutoArray. r=heycam 2017-01-10 12:24:59 +09:00
Emilio Cobos Álvarez
9b6cf8dc1b
style: Document the nsCOMPtr sugar. 2017-01-02 12:58:03 +01:00
Emilio Cobos Álvarez
2778354455
style: Document nsCSSShadowArray sugar. 2017-01-02 12:58:01 +01:00
Emilio Cobos Álvarez
96fb1378d7
style: Document the sugar for nsStyleCoord. 2017-01-02 12:58:01 +01:00
Emilio Cobos Álvarez
1bd246905c
style: Document sugar for nsStyleAutoArray. 2017-01-02 12:58:01 +01:00
Emilio Cobos Álvarez
89f3e34f48
style: Describe the sugar module. 2017-01-02 12:58:00 +01:00
Emilio Cobos Álvarez
1fc48dc730
style: Document nsTArray sugar module. 2017-01-02 12:57:59 +01:00
Emilio Cobos Álvarez
1d19e81c8b
style: Document and make clearer the ownership helpers. 2017-01-02 12:57:59 +01:00
Emilio Cobos Álvarez
f97e5ff9aa
style: Document the RefPtr sugar module. 2017-01-02 12:57:59 +01:00
Emilio Cobos Álvarez
d10cc314fe
style: Document the StyleComplexColor sugar. 2017-01-02 12:57:58 +01:00
Xidorn Quan
7d59e3bd93 Update helper functions of StyleComplexColor 2017-01-01 11:51:50 +11:00
Emilio Cobos Álvarez
df9da705f5
Bug 1304792: Use borrowed types for ServoImportRule. r=Manishearth r=heycam
MozReview-Commit-ID: HKjsOaE2qAp
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2016-12-30 13:00:51 +01:00
Emilio Cobos Álvarez
606ea019b7
stylo: Use bindgen master again.
Stylo has been stuck with an old version of bindgen from quite a bit of time,
this commit does the minimal stuff to put it working again with master.
2016-12-05 00:14:49 -08:00
Bobby Holley
992f7dddf4 Bug 1317016 - Basic infrastructure for RestyleHint-driven traversal.
MozReview-Commit-ID: 7wH5XcILVmX
2016-11-24 17:07:38 -08:00
Manish Goregaokar
bb5f351f4a stylo: support transform 2016-11-10 16:38:15 -08:00