Bug 1472497 - Serialize list-style-type / list-style-image using Servo. r=xidorn

Differential Revision: https://phabricator.services.mozilla.com/D1903

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Emilio Cobos Álvarez 2018-07-01 00:44:26 +00:00
Родитель 993aa6d00f
Коммит ed2763bea8
3 изменённых файлов: 2 добавлений и 66 удалений

Просмотреть файл

@ -80,7 +80,9 @@ SERIALIZED_PREDEFINED_TYPES = [
"CounterReset",
"Integer",
"Length",
"ListStyleType",
"Opacity",
"url::ImageUrlOrNone",
]
def serialized_by_servo(prop):

Просмотреть файл

@ -1214,45 +1214,6 @@ nsComputedDOMStyle::DoGetColumnRuleWidth()
return val.forget();
}
static void
AppendCounterStyle(CounterStyle* aStyle, nsAString& aString)
{
AnonymousCounterStyle* anonymous = aStyle->AsAnonymous();
if (!anonymous) {
// want SetIdent
nsDependentAtomString type(aStyle->GetStyleName());
nsStyleUtil::AppendEscapedCSSIdent(type, aString);
} else if (anonymous->IsSingleString()) {
const nsTArray<nsString>& symbols = anonymous->GetSymbols();
MOZ_ASSERT(symbols.Length() == 1);
nsStyleUtil::AppendEscapedCSSString(symbols[0], aString);
} else {
aString.AppendLiteral("symbols(");
uint8_t system = anonymous->GetSystem();
NS_ASSERTION(system == NS_STYLE_COUNTER_SYSTEM_CYCLIC ||
system == NS_STYLE_COUNTER_SYSTEM_NUMERIC ||
system == NS_STYLE_COUNTER_SYSTEM_ALPHABETIC ||
system == NS_STYLE_COUNTER_SYSTEM_SYMBOLIC ||
system == NS_STYLE_COUNTER_SYSTEM_FIXED,
"Invalid system for anonymous counter style.");
if (system != NS_STYLE_COUNTER_SYSTEM_SYMBOLIC) {
AppendASCIItoUTF16(nsCSSProps::ValueToKeyword(
system, nsCSSProps::kCounterSystemKTable), aString);
aString.Append(' ');
}
const nsTArray<nsString>& symbols = anonymous->GetSymbols();
NS_ASSERTION(symbols.Length() > 0,
"No symbols in the anonymous counter style");
for (size_t i = 0, iend = symbols.Length(); i < iend; i++) {
nsStyleUtil::AppendEscapedCSSString(symbols[i], aString);
aString.Append(' ');
}
aString.Replace(aString.Length() - 1, 1, char16_t(')'));
}
}
/* Convert the stored representation into a list of two values and then hand
* it back.
*/
@ -3502,31 +3463,6 @@ nsComputedDOMStyle::DoGetZIndex()
return val.forget();
}
already_AddRefed<CSSValue>
nsComputedDOMStyle::DoGetListStyleImage()
{
RefPtr<nsROCSSPrimitiveValue> val = new nsROCSSPrimitiveValue;
nsCOMPtr<nsIURI> uri = StyleList()->GetListStyleImageURI();
if (!uri) {
val->SetIdent(eCSSKeyword_none);
} else {
val->SetURI(uri);
}
return val.forget();
}
already_AddRefed<CSSValue>
nsComputedDOMStyle::DoGetListStyleType()
{
RefPtr<nsROCSSPrimitiveValue> val = new nsROCSSPrimitiveValue;
nsAutoString tmp;
AppendCounterStyle(StyleList()->mCounterStyle, tmp);
val->SetString(tmp);
return val.forget();
}
already_AddRefed<CSSValue>
nsComputedDOMStyle::DoGetImageRegion()
{

Просмотреть файл

@ -374,8 +374,6 @@ private:
already_AddRefed<CSSValue> DoGetZIndex();
/* List properties */
already_AddRefed<CSSValue> DoGetListStyleImage();
already_AddRefed<CSSValue> DoGetListStyleType();
already_AddRefed<CSSValue> DoGetImageRegion();
/* Text Properties */