зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #17971 - Always set mBgPos for LineDirection::Vertical (from upsuper:linear-gradient); r=canaltinova
This fixes [bug 1385469](https://bugzilla.mozilla.org/show_bug.cgi?id=1385469). Source-Repo: https://github.com/servo/servo Source-Revision: 187254bf26fc9974c65d061a146bbbbfb484fbd3 --HG-- extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear extra : subtree_revision : 3ac79946382f864940d986c11e184aaf4190c203
This commit is contained in:
Родитель
9679ff0b5a
Коммит
9d92667c39
|
@ -229,14 +229,18 @@ impl nsStyleImage {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
LineDirection::Vertical(y) => {
|
LineDirection::Vertical(y) => {
|
||||||
// Y::Bottom (to bottom) is ignored because it is the default value.
|
// Although bottom is the default value, we can not ignore
|
||||||
if y == Y::Top {
|
// it here, because the rendering code of Gecko relies on
|
||||||
unsafe {
|
// this to behave correctly for legacy mode.
|
||||||
(*gecko_gradient).mBgPosX
|
let y = match y {
|
||||||
.set_value(CoordDataValue::Percent(0.5));
|
Y::Top => 0.0,
|
||||||
(*gecko_gradient).mBgPosY
|
Y::Bottom => 1.0,
|
||||||
.set_value(CoordDataValue::Percent(0.0));
|
};
|
||||||
}
|
unsafe {
|
||||||
|
(*gecko_gradient).mBgPosX
|
||||||
|
.set_value(CoordDataValue::Percent(0.5));
|
||||||
|
(*gecko_gradient).mBgPosY
|
||||||
|
.set_value(CoordDataValue::Percent(y));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
LineDirection::Corner(horiz, vert) => {
|
LineDirection::Corner(horiz, vert) => {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче