Skip to content

Commit

Permalink
Default is top-to-bottom if unset, not bottom-to-top
Browse files Browse the repository at this point in the history
  • Loading branch information
DominoTree committed Dec 28, 2016
1 parent 7e3c9e2 commit 23d4f04
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 1 deletion.
2 changes: 1 addition & 1 deletion components/style/values/computed/image.rs
Expand Up @@ -470,7 +470,7 @@ impl ToComputedValue for specified::AngleOrCorner {
fn to_computed_value(&self, _: &Context) -> AngleOrCorner {
match *self {
specified::AngleOrCorner::None => {
AngleOrCorner::Angle(Angle(0.0))
AngleOrCorner::Angle(Angle(PI))
},
specified::AngleOrCorner::Angle(angle) => {
AngleOrCorner::Angle(angle)
Expand Down
14 changes: 14 additions & 0 deletions tests/unit/style/parsing/image.rs
Expand Up @@ -2,10 +2,16 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */

use app_units::Au;
use cssparser::Parser;
use euclid::size::Size2D;
use media_queries::CSSErrorReporterTest;
use std::f32::consts::PI;
use style::parser::ParserContext;
use style::stylesheets::Origin;
use style::values::computed;
use style::values::computed::{Angle, Context, ToComputedValue};
use style::values::specified;
use style::values::specified::image::*;
use style_traits::ToCss;

Expand All @@ -32,6 +38,14 @@ fn test_linear_gradient() {

// Parsing without <angle> and <side-or-corner>
assert_roundtrip_with_context!(Image::parse, "linear-gradient(red, green)");

// AngleOrCorner::None should become AngleOrCorner::Angle(Angle(PI)) when parsed
// Note that Angle(PI) is correct for top-to-bottom rendering, whereas Angle(0) would render bottom-to-top.
// ref: https://developer.mozilla.org/en-US/docs/Web/CSS/angle
let container = Size2D::new(Au::default(), Au::default());
let specified_context = Context::initial(container, true);
assert_eq!(specified::AngleOrCorner::None.to_computed_value(&specified_context),
computed::AngleOrCorner::Angle(Angle(PI)));
}

#[test]
Expand Down
4 changes: 4 additions & 0 deletions tests/wpt/mozilla/tests/css/linear_gradients_parsing_a.html
Expand Up @@ -19,11 +19,15 @@
#c {
background: linear-gradient(90deg, violet, violet 1em, violet 2ex, violet 50%, blue 50%, blue, blue);
}
#d {
background: linear-gradient(red, green);
}
</style>
</head>
<body>
<section id=a></section>
<section id=b></section>
<section id=c></section>
<section id=d></section>
</body>
</html>
4 changes: 4 additions & 0 deletions tests/wpt/mozilla/tests/css/linear_gradients_parsing_ref.html
Expand Up @@ -30,6 +30,9 @@
background: blue;
right: 0;
}
#d {
background: linear-gradient(to bottom, red, green);
}
</style>
</head>
<body>
Expand All @@ -39,5 +42,6 @@
<nav id=ca></nav>
<nav id=cb></nav>
</section>
<section id=d></section>
</body>
</html>

0 comments on commit 23d4f04

Please sign in to comment.