mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 02:47:34 +00:00
LibWeb: Only set has_span if there is a number following the css value
To follow spec more closely, only set the has_span value if there is a number immediately following, like "span 2". Otherwise the span value should be ignored.
This commit is contained in:
parent
493c6cf0fd
commit
0613972f0c
1 changed files with 10 additions and 4 deletions
|
@ -5363,13 +5363,16 @@ RefPtr<StyleValue> Parser::parse_grid_track_placement(Vector<ComponentValue> con
|
||||||
}
|
}
|
||||||
|
|
||||||
auto first_grid_track_placement = CSS::GridTrackPlacement();
|
auto first_grid_track_placement = CSS::GridTrackPlacement();
|
||||||
|
auto has_span = false;
|
||||||
if (current_token.to_string() == "span"sv) {
|
if (current_token.to_string() == "span"sv) {
|
||||||
first_grid_track_placement.set_has_span(true);
|
has_span = true;
|
||||||
tokens.skip_whitespace();
|
tokens.skip_whitespace();
|
||||||
current_token = tokens.next_token().token();
|
current_token = tokens.next_token().token();
|
||||||
}
|
}
|
||||||
if (current_token.is(Token::Type::Number) && current_token.number().is_integer())
|
if (current_token.is(Token::Type::Number) && current_token.number().is_integer()) {
|
||||||
first_grid_track_placement.set_position(static_cast<int>(current_token.number_value()));
|
first_grid_track_placement.set_position(static_cast<int>(current_token.number_value()));
|
||||||
|
first_grid_track_placement.set_has_span(has_span);
|
||||||
|
}
|
||||||
|
|
||||||
if (!tokens.has_next_token())
|
if (!tokens.has_next_token())
|
||||||
return GridTrackPlacementStyleValue::create(first_grid_track_placement);
|
return GridTrackPlacementStyleValue::create(first_grid_track_placement);
|
||||||
|
@ -5391,13 +5394,16 @@ RefPtr<StyleValue> Parser::parse_grid_track_placement_shorthand_value(Vector<Com
|
||||||
|
|
||||||
auto calculate_grid_track_placement = [](auto& current_token, auto& tokens) -> CSS::GridTrackPlacement {
|
auto calculate_grid_track_placement = [](auto& current_token, auto& tokens) -> CSS::GridTrackPlacement {
|
||||||
auto grid_track_placement = CSS::GridTrackPlacement();
|
auto grid_track_placement = CSS::GridTrackPlacement();
|
||||||
|
auto has_span = false;
|
||||||
if (current_token.to_string() == "span"sv) {
|
if (current_token.to_string() == "span"sv) {
|
||||||
grid_track_placement.set_has_span(true);
|
has_span = true;
|
||||||
tokens.skip_whitespace();
|
tokens.skip_whitespace();
|
||||||
current_token = tokens.next_token().token();
|
current_token = tokens.next_token().token();
|
||||||
}
|
}
|
||||||
if (current_token.is(Token::Type::Number) && current_token.number().is_integer())
|
if (current_token.is(Token::Type::Number) && current_token.number().is_integer()) {
|
||||||
grid_track_placement.set_position(static_cast<int>(current_token.number_value()));
|
grid_track_placement.set_position(static_cast<int>(current_token.number_value()));
|
||||||
|
grid_track_placement.set_has_span(has_span);
|
||||||
|
}
|
||||||
return grid_track_placement;
|
return grid_track_placement;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue