Commit graph

3667 commits

Author SHA1 Message Date
Emilio Cobos Álvarez
02ad6d3d90
style: Require an nth-index cache for invalidation. 2017-11-29 21:22:29 +01:00
bors-servo
823da9e34a Auto merge of #19388 - BorisChiou:stylo/dommatrix/parser, r=emilio,heycam
stylo: Implement Servo_ParseTransformIntoMatrix

This is an inter-dependent patch of Bug 1408310.

DOMMatrix needs to convert a specified transform list into a matrix, so we rewrite
to_transform_3d_matrix by generics for both specified and computed transform lists.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1408310](https://bugzilla.mozilla.org/show_bug.cgi?id=1408310).
- [X] These changes do not require tests because we can count on the wpt tests for DOMMatrix on Gecko side.

<!-- 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/19388)
<!-- Reviewable:end -->
2017-11-27 20:13:34 -06:00
Boris Chiou
3a38e815ec Implement Servo_ParseTransformIntoMatrix.
DOMMatrix needs to convert a specified transform list into a matrix, so
we could rewrite to_transform_3d_matrix by generics for both specified
and computed transform lists.

Besides, we have to update the test case because we use Transform3D<f64> to
compute the matrix, instead of Transform3D<f32>, so the result will be
the same as that in Gecko. Using 0.3 may cause floating point issue
because (0.3f32 as f64) is not equal to 0.3 (i.e. floating point precision
issue), so using 0.25 instead.
2017-11-28 10:08:12 +08:00
Emilio Cobos Álvarez
7a5a35f5e0
style: Fix indentation of multiple CssParserContext construction. 2017-11-27 15:35:16 +01:00
Gecko Backout
8679bafa93 Backed out changeset 077ce85c466b for failing devtools webconsole/test/browser_webconsole_bug_595934_message_categories.js on Windows 7 debug without e10s. r=backout on a CLOSED TREE
Backs out https://github.com/servo/servo/pull/19374
2017-11-26 11:02:41 +00:00
Cameron McCormack
cbba980a8b geckolib: Return from Servo_ComputeColor whether the value was currentcolor.
MozReview-Commit-ID: CwOJrfBG12J
2017-11-26 10:55:37 +08:00
CYBAI
a470ebd501 style: Move font-family outside of mako 2017-11-26 00:36:00 +08:00
bors-servo
cd70a01d32 Auto merge of #19341 - emilio:traversal-new-faster, r=heycam
stylo: Make TraverseSubtree cheaper in the initial styling case.

This helps with bug 1419694.

<!-- 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/19341)
<!-- Reviewable:end -->
2017-11-23 05:44:09 -06:00
CYBAI
20cfefbbbd style: Move -moz-script-size-multiplier outside of mako 2017-11-23 10:26:50 +08:00
Emilio Cobos Álvarez
269077f317
stylo: Also tidy Servo_AnimationValue_DeepEqual while here. 2017-11-22 21:16:38 +01:00
Emilio Cobos Álvarez
663794fe2d
stylo: Tidy up create_shared_context. 2017-11-22 21:09:37 +01:00
Emilio Cobos Álvarez
b13f62714a
stylo: Make TraverseSubtree cheaper in the initial styling case.
We assert against the display: none / unstyled parent already, so there's no
need to check it here as well.
2017-11-22 21:07:57 +01:00
Simon Sapin
b1ce298d4b Replace compiletest suite by doc-tests with compile_fail
compiletest-rs use internal rustc APIs and is broken in today’s Nightly.
rustdoc however is maintained with rustc and so much less fragile.
2017-11-22 16:25:17 +01:00
Hiroyuki Ikezoe
dcedf11013 Pass element or pseudo element to Servo_StyleSet_GetBaseComputedValuesForElement() 2017-11-22 11:06:05 +09:00
Dzmitry Malyshau
ba214bcec5 WR multi-document support 2017-11-22 00:43:34 +01:00
bors-servo
dc35457b4a Auto merge of #19318 - jdm:webdriver, r=jgraham
Make wdspec tests runnable

This makes it possible to run tests in tests/wpt/web-platform-tests/webdriver/tests and focus on investigating why they fail.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix (partially) #15274.
- [x] There are tests for these changes

<!-- 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/19318)
<!-- Reviewable:end -->
2017-11-21 12:25:55 -06:00
Emilio Cobos Álvarez
8de554f334
style: Move property allowance tests to PropertyId::parse_into.
It's not only more consistent (since we have a proper ParserContext there), but
also fixes a bunch of bugs where Gecko accidentally exposes and allows setting
internal state because of conversions from nsCSSPropertyID to PropertyId.

This adds the extra complexity of caring about aliases for longer, but that's
probably not a big deal in practice, since we also have PropertyDeclarationId.

MozReview-Commit-ID: C2Js8PfloxQ
2017-11-21 14:26:16 +01:00
Josh Matthews
2fa004067b Build the webdriver server by default. 2017-11-20 14:47:27 -05:00
Emilio Cobos Álvarez
b1fecea0aa
style: Get rid of unstyled children only traversals.
They're useless now, provided we remove the hack to not traverse XBL-bound
elements on initial styling.

Bug: 1418456
Reviewed-by: heycam
MozReview-Commit-ID: AvBVdyF1wb6
2017-11-20 08:24:08 +01:00
CYBAI
3ff497aaff style: Move font-variant-ligatures outside of mako 2017-11-17 10:12:46 +08:00
bors-servo
8c332f5dd3 Auto merge of #19220 - CYBAI:font-variant-east-asian-out-of-mako, r=emilio
style: Move font-variant-east-asian outside of mako

This is a sub-PR of #19015
r? emilio

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

<!-- 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/19220)
<!-- Reviewable:end -->
2017-11-15 20:00:48 -06:00
CYBAI
c110c8a131 style: Move font-variant-east-asian outside of mako 2017-11-15 21:27:12 +08:00
bors-servo
6f1d9a198f Auto merge of #19211 - KiChjang:text-decoration-line, r=emilio
Move text-decoration-line out of mako

Part of #19015.

<!-- 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/19211)
<!-- Reviewable:end -->
2017-11-14 15:34:10 -06:00
Keith Yeung
6f59a45cdc Move text-decoration-line out of mako 2017-11-14 13:13:23 -08:00
bors-servo
d287ec8d3e Auto merge of #19217 - emilio:bye-mozmm, r=heycam
style: Remove mozmm CSS unit.

Bug: 1416564
Reviewed-by: heycam
MozReview-Commit-ID: AU4CUq09tw4
2017-11-14 07:27:28 -06:00
Emilio Cobos Álvarez
eac0d104a3
style: Remove mozmm CSS unit.
Bug: 1416564
Reviewed-by: heycam
MozReview-Commit-ID: AU4CUq09tw4
2017-11-14 14:25:40 +01:00
Shing Lyu
c120234f0e Enable screen.availHeight/availWidth/Height/Width 2017-11-13 21:32:10 +01:00
Emilio Cobos Álvarez
a76cb65751
stylo: Integrate Servo SourceSizeList in ResponsiveImageSelector.
This needs to dumb down the parsing in order to match what we do in Gecko and
pass more tests.

The remaining tests are just because of calc() in media queries and "or" media
expressions.

Bug: 1408308
Reviewed-by: Manishearth
MozReview-Commit-ID: CXGdYVbojBL
2017-11-13 02:48:48 +01:00
Xidorn Quan
dfbf632fd6 Add general impl in gecko_properties for Transform value and add -moz-window-transform. 2017-11-12 10:59:54 -08:00
Emilio Cobos Álvarez
194c2712b5
style: Make MozScriptLevel::Absolute serialize as -moz-absolute(foo). 2017-11-12 16:25:01 +01:00
Emilio Cobos Álvarez
4927786d90
style: Implement css(dimension) and derive ToCss for a bunch of stuff.
For css(dimension), it'd be nice to derive(Parse) too, I think...
2017-11-12 16:22:45 +01:00
Paul Rouget
8a219e8a81 do not pass new size to Resize event 2017-11-07 10:27:24 +01:00
Gecko Backout
2c1b041fc6 Backed out changeset d77275db6419 (bug 1374178) for failure reftests/transform-3d/translatez-1a.html r=backout a=backout on a CLOSED TREE
Backs out https://github.com/servo/servo/pull/19106
2017-11-07 06:49:27 +00:00
Xidorn Quan
9f5195eeec Add general impl in gecko_properties for Transform value and add -moz-window-transform. 2017-11-06 11:49:52 -08:00
Emilio Cobos Álvarez
f32f09656b
style: Allow disabling invalidation-based querySelector from C++
Rust compile times are hard.

MozReview-Commit-ID: 9Xhtf7f3Vzv
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-11-04 11:34:40 +01:00
Gecko Backout
8f8fd517ed Backed out changeset dbd300f4d75b for build bustage. r=backout on a CLOSED TREE
Backs out https://github.com/servo/servo/pull/19108
2017-11-03 23:56:42 +00:00
bors-servo
a0cd781bdc Auto merge of #19108 - emilio:qsa, r=xidorn,bz
stylo: querySelector{,All} optimizations.

Bug: 1410624

<!-- 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/19108)
<!-- Reviewable:end -->
2017-11-03 14:27:34 -05:00
Emilio Cobos Álvarez
bfabd9f855
style: Allow disabling invalidation-based querySelector from C++
Rust compile times are hard.

MozReview-Commit-ID: 9Xhtf7f3Vzv
2017-11-03 14:18:48 +01:00
tigercosmos
a0ae81610d Print the full path for errors occurring in the servo crate 2017-11-03 13:54:39 +08:00
Manish Goregaokar
6631594e28
Replace old transform code with new generic code 2017-11-02 14:30:04 -07:00
Emilio Cobos Álvarez
2d1790fe7d
stylo: Remove useless assertions.
ElementStyles::primary expect()s.
2017-11-01 19:49:24 +01:00
Bastien Orivel
29b4eec141 Bump bitflags to 1.0 in every servo crate 2017-10-30 23:36:06 +01:00
Boris Chiou
52c81a0a84 Add Servo_ComposeAnimationSegment which composes an animation segment. 2017-10-27 21:18:21 +02:00
Boris Chiou
1f5551c397 Add Servo_AnimationValue_Transform which creates an AnimationValue of transform. 2017-10-27 21:18:11 +02:00
Boris Chiou
f02bd01add Add Servo_AnimationValue_Opacity which creates an AnimationValue of opacity. 2017-10-27 21:18:01 +02:00
Emilio Cobos Álvarez
dd5cd29a61
style: Introduce TDocument::is_html_element and TDocument::quirks_mode.
This allows some code to read a bit nicer, and stop passing down quirks mode to
querySelector / querySelectorAll.
2017-10-26 13:22:31 +02:00
bors-servo
6035b75d39 Auto merge of #19016 - emilio:animation-avoid-flush-not-quite, r=hiro
style: Fix detection of animations to avoid style flushing in getComputedStyle.

This fixes multiple things:

 * EffectCompositor was using the light tree instead of the flat tree.

 * When we insert an element inside the document, we may not style it right away
   (we mark it for lazy frame construction with the NODE_NEEDS_FRAME). Since we
   trigger animations and transitions from the traversal, we can't skip flushing
   if we call getComputedStyle on any of those.

Bug: 1406750
Reviewed-by: hiro
MozReview-Commit-ID: DpAhmLH3uJ2

<!-- 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/19016)
<!-- Reviewable:end -->
2017-10-25 10:28:18 -05:00
Emilio Cobos Álvarez
05beeee268
style: Fix detection of animations to avoid style flushing in getComputedStyle.
This fixes multiple things:

 * EffectCompositor was using the light tree instead of the flat tree.

 * When we insert an element inside the document, we may not style it right away
   (we mark it for lazy frame construction with the NODE_NEEDS_FRAME). Since we
   trigger animations and transitions from the traversal, we can't skip flushing
   if we call getComputedStyle on any of those.

Bug: 1406750
Reviewed-by: hiro
MozReview-Commit-ID: DpAhmLH3uJ2
2017-10-25 16:06:56 +02:00
Emilio Cobos Álvarez
21b314e633
stylo: Honor CallerType for media query parsing.
So that matchMedia can parse internal stuff in Chrome code.

Bug: 1410074
Reviewed-by: xidorn
MozReview-Commit-ID: 6M4HHqVJ1dp
2017-10-25 14:27:16 +02:00
Nika Layzell
2d3331fbd4 Move nsstring from gecko into servo/support/gecko/nsstring
This is the servo side of bug 1403213.

MozReview-Commit-ID: HFdQiuMnGhJ
2017-10-23 14:22:42 -04:00