mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Consider serializing shorthands based on previously-serialized longhands.
This commit is contained in:
parent
191201de6c
commit
5b83beaceb
2 changed files with 54 additions and 8 deletions
|
@ -657,10 +657,6 @@ impl ToCss for PropertyDeclarationBlock {
|
|||
|
||||
if is_system_font {
|
||||
for (longhand, importance) in self.declaration_importance_iter() {
|
||||
if already_serialized.contains(longhand.id()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if longhand.get_system().is_some() || longhand.is_default_line_height() {
|
||||
current_longhands.push(longhand);
|
||||
if found_system.is_none() {
|
||||
|
@ -673,10 +669,6 @@ impl ToCss for PropertyDeclarationBlock {
|
|||
}
|
||||
} else {
|
||||
for (longhand, importance) in self.declaration_importance_iter() {
|
||||
if already_serialized.contains(longhand.id()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if longhand.id().is_longhand_of(shorthand) {
|
||||
current_longhands.push(longhand);
|
||||
if importance.important() {
|
||||
|
@ -771,6 +763,13 @@ impl ToCss for PropertyDeclarationBlock {
|
|||
// Substep 9
|
||||
already_serialized.insert(current_longhand.id());
|
||||
}
|
||||
|
||||
// FIXME(https://github.com/w3c/csswg-drafts/issues/1774)
|
||||
// The specification does not include an instruction to abort
|
||||
// the shorthand loop at this point, but doing so both matches
|
||||
// Gecko and makes sense since shorthands are checked in
|
||||
// preferred order.
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue