1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-23 17:47:36 +00:00

LibWeb: Use String class in certain CSS Grid classes

Converts the remaining instances of DeprecatedString to String in the
CSS Grid classes.
This commit is contained in:
martinfalisse 2023-01-16 17:29:15 +01:00 committed by Andreas Kling
parent aec2dadfdd
commit 9d99bd8258
7 changed files with 38 additions and 26 deletions

View file

@ -5,7 +5,7 @@
*/ */
#include "GridTrackPlacement.h" #include "GridTrackPlacement.h"
#include <AK/DeprecatedString.h> #include <AK/StringBuilder.h>
namespace Web::CSS { namespace Web::CSS {
@ -15,14 +15,14 @@ GridTrackPlacement::GridTrackPlacement(int span_count_or_position, bool has_span
{ {
} }
GridTrackPlacement::GridTrackPlacement(DeprecatedString line_name, int span_count_or_position, bool has_span) GridTrackPlacement::GridTrackPlacement(String line_name, int span_count_or_position, bool has_span)
: m_type(has_span ? Type::Span : Type::Position) : m_type(has_span ? Type::Span : Type::Position)
, m_span_count_or_position(span_count_or_position) , m_span_count_or_position(span_count_or_position)
, m_line_name(line_name) , m_line_name(line_name)
{ {
} }
GridTrackPlacement::GridTrackPlacement(DeprecatedString line_name, bool has_span) GridTrackPlacement::GridTrackPlacement(String line_name, bool has_span)
: m_type(has_span ? Type::Span : Type::Position) : m_type(has_span ? Type::Span : Type::Position)
, m_line_name(line_name) , m_line_name(line_name)
{ {

View file

@ -6,7 +6,6 @@
#pragma once #pragma once
#include <AK/DeprecatedString.h>
#include <AK/String.h> #include <AK/String.h>
namespace Web::CSS { namespace Web::CSS {
@ -19,9 +18,9 @@ public:
Auto Auto
}; };
GridTrackPlacement(DeprecatedString line_name, int span_count_or_position, bool has_span = false); GridTrackPlacement(String line_name, int span_count_or_position, bool has_span = false);
GridTrackPlacement(int span_count_or_position, bool has_span = false); GridTrackPlacement(int span_count_or_position, bool has_span = false);
GridTrackPlacement(DeprecatedString line_name, bool has_span = false); GridTrackPlacement(String line_name, bool has_span = false);
GridTrackPlacement(); GridTrackPlacement();
static GridTrackPlacement make_auto() { return GridTrackPlacement(); }; static GridTrackPlacement make_auto() { return GridTrackPlacement(); };
@ -35,7 +34,7 @@ public:
int raw_value() const { return m_span_count_or_position; } int raw_value() const { return m_span_count_or_position; }
Type type() const { return m_type; } Type type() const { return m_type; }
DeprecatedString line_name() const { return m_line_name; } String line_name() const { return m_line_name; }
ErrorOr<String> to_string() const; ErrorOr<String> to_string() const;
bool operator==(GridTrackPlacement const& other) const bool operator==(GridTrackPlacement const& other) const
@ -46,7 +45,7 @@ public:
private: private:
Type m_type; Type m_type;
int m_span_count_or_position { 0 }; int m_span_count_or_position { 0 };
DeprecatedString m_line_name; String m_line_name;
}; };
} }

View file

@ -152,7 +152,7 @@ ErrorOr<String> ExplicitGridTrack::to_string() const
} }
} }
GridTrackSizeList::GridTrackSizeList(Vector<CSS::ExplicitGridTrack> track_list, Vector<Vector<DeprecatedString>> line_names) GridTrackSizeList::GridTrackSizeList(Vector<CSS::ExplicitGridTrack> track_list, Vector<Vector<String>> line_names)
: m_track_list(track_list) : m_track_list(track_list)
, m_line_names(line_names) , m_line_names(line_names)
{ {

View file

@ -92,13 +92,13 @@ private:
class GridTrackSizeList { class GridTrackSizeList {
public: public:
GridTrackSizeList(Vector<CSS::ExplicitGridTrack> track_list, Vector<Vector<DeprecatedString>> line_names); GridTrackSizeList(Vector<CSS::ExplicitGridTrack> track_list, Vector<Vector<String>> line_names);
GridTrackSizeList(); GridTrackSizeList();
static GridTrackSizeList make_auto(); static GridTrackSizeList make_auto();
Vector<CSS::ExplicitGridTrack> track_list() const { return m_track_list; } Vector<CSS::ExplicitGridTrack> track_list() const { return m_track_list; }
Vector<Vector<DeprecatedString>> line_names() const { return m_line_names; } Vector<Vector<String>> line_names() const { return m_line_names; }
ErrorOr<String> to_string() const; ErrorOr<String> to_string() const;
bool operator==(GridTrackSizeList const& other) const bool operator==(GridTrackSizeList const& other) const
@ -108,7 +108,7 @@ public:
private: private:
Vector<CSS::ExplicitGridTrack> m_track_list; Vector<CSS::ExplicitGridTrack> m_track_list;
Vector<Vector<DeprecatedString>> m_line_names; Vector<Vector<String>> m_line_names;
}; };
class GridRepeat { class GridRepeat {

View file

@ -6014,11 +6014,11 @@ Optional<CSS::GridRepeat> Parser::parse_repeat(Vector<ComponentValue> const& com
return {}; return {};
Vector<CSS::ExplicitGridTrack> repeat_params; Vector<CSS::ExplicitGridTrack> repeat_params;
Vector<Vector<DeprecatedString>> line_names_list; Vector<Vector<String>> line_names_list;
auto last_object_was_line_names = false; auto last_object_was_line_names = false;
while (part_two_tokens.has_next_token()) { while (part_two_tokens.has_next_token()) {
auto token = part_two_tokens.next_token(); auto token = part_two_tokens.next_token();
Vector<DeprecatedString> line_names; Vector<String> line_names;
if (token.is_block()) { if (token.is_block()) {
if (last_object_was_line_names) if (last_object_was_line_names)
return {}; return {};
@ -6028,7 +6028,10 @@ Optional<CSS::GridRepeat> Parser::parse_repeat(Vector<ComponentValue> const& com
TokenStream block_tokens { token.block().values() }; TokenStream block_tokens { token.block().values() };
while (block_tokens.has_next_token()) { while (block_tokens.has_next_token()) {
auto current_block_token = block_tokens.next_token(); auto current_block_token = block_tokens.next_token();
line_names.append(current_block_token.token().ident()); auto maybe_string = String::from_utf8(current_block_token.token().ident());
if (maybe_string.is_error())
return {};
line_names.append(maybe_string.value());
block_tokens.skip_whitespace(); block_tokens.skip_whitespace();
} }
line_names_list.append(line_names); line_names_list.append(line_names);
@ -6112,7 +6115,7 @@ Optional<CSS::ExplicitGridTrack> Parser::parse_track_sizing_function(ComponentVa
RefPtr<StyleValue> Parser::parse_grid_track_sizes(Vector<ComponentValue> const& component_values) RefPtr<StyleValue> Parser::parse_grid_track_sizes(Vector<ComponentValue> const& component_values)
{ {
Vector<CSS::ExplicitGridTrack> track_list; Vector<CSS::ExplicitGridTrack> track_list;
Vector<Vector<DeprecatedString>> line_names_list; Vector<Vector<String>> line_names_list;
auto last_object_was_line_names = false; auto last_object_was_line_names = false;
TokenStream tokens { component_values }; TokenStream tokens { component_values };
while (tokens.has_next_token()) { while (tokens.has_next_token()) {
@ -6121,13 +6124,16 @@ RefPtr<StyleValue> Parser::parse_grid_track_sizes(Vector<ComponentValue> const&
if (last_object_was_line_names) if (last_object_was_line_names)
return GridTrackSizeStyleValue::make_auto(); return GridTrackSizeStyleValue::make_auto();
last_object_was_line_names = true; last_object_was_line_names = true;
Vector<DeprecatedString> line_names; Vector<String> line_names;
if (!token.block().is_square()) if (!token.block().is_square())
return GridTrackSizeStyleValue::make_auto(); return GridTrackSizeStyleValue::make_auto();
TokenStream block_tokens { token.block().values() }; TokenStream block_tokens { token.block().values() };
while (block_tokens.has_next_token()) { while (block_tokens.has_next_token()) {
auto current_block_token = block_tokens.next_token(); auto current_block_token = block_tokens.next_token();
line_names.append(current_block_token.token().ident()); auto maybe_string = String::from_utf8(current_block_token.token().ident());
if (maybe_string.is_error())
return {};
line_names.append(maybe_string.value());
block_tokens.skip_whitespace(); block_tokens.skip_whitespace();
} }
line_names_list.append(line_names); line_names_list.append(line_names);
@ -6189,14 +6195,17 @@ RefPtr<StyleValue> Parser::parse_grid_track_placement(Vector<ComponentValue> con
return GridTrackPlacementStyleValue::create(CSS::GridTrackPlacement(1, true)); return GridTrackPlacementStyleValue::create(CSS::GridTrackPlacement(1, true));
if (is_valid_integer(current_token)) if (is_valid_integer(current_token))
return GridTrackPlacementStyleValue::create(CSS::GridTrackPlacement(static_cast<int>(current_token.number_value()))); return GridTrackPlacementStyleValue::create(CSS::GridTrackPlacement(static_cast<int>(current_token.number_value())));
if (is_line_name(current_token)) if (is_line_name(current_token)) {
return GridTrackPlacementStyleValue::create(CSS::GridTrackPlacement(current_token.ident())); auto maybe_string = String::from_utf8(current_token.ident());
if (!maybe_string.is_error())
return GridTrackPlacementStyleValue::create(CSS::GridTrackPlacement(maybe_string.value()));
}
return {}; return {};
} }
auto span_value = false; auto span_value = false;
auto span_or_position_value = 0; auto span_or_position_value = 0;
DeprecatedString line_name_value; String line_name_value;
while (true) { while (true) {
if (is_auto(current_token)) if (is_auto(current_token))
return {}; return {};
@ -6213,10 +6222,14 @@ RefPtr<StyleValue> Parser::parse_grid_track_placement(Vector<ComponentValue> con
return {}; return {};
} }
if (is_line_name(current_token)) { if (is_line_name(current_token)) {
if (line_name_value.is_empty()) if (line_name_value.is_empty()) {
line_name_value = current_token.ident(); auto maybe_string = String::from_utf8(current_token.ident());
else if (maybe_string.is_error())
return {};
line_name_value = maybe_string.release_value();
} else {
return {}; return {};
}
} }
tokens.skip_whitespace(); tokens.skip_whitespace();
if (tokens.has_next_token()) if (tokens.has_next_token())

View file

@ -1820,7 +1820,7 @@ CSSPixels GridFormattingContext::get_free_space_y(Box const& box)
return -1; return -1;
} }
int GridFormattingContext::get_line_index_by_line_name(DeprecatedString const& needle, CSS::GridTrackSizeList grid_track_size_list) int GridFormattingContext::get_line_index_by_line_name(String const& needle, CSS::GridTrackSizeList grid_track_size_list)
{ {
if (grid_track_size_list.track_list().size() == 0) if (grid_track_size_list.track_list().size() == 0)
return -1; return -1;

View file

@ -99,7 +99,7 @@ private:
CSSPixels get_free_space_x(AvailableSpace const& available_space); CSSPixels get_free_space_x(AvailableSpace const& available_space);
CSSPixels get_free_space_y(Box const&); CSSPixels get_free_space_y(Box const&);
int get_line_index_by_line_name(DeprecatedString const& line_name, CSS::GridTrackSizeList); int get_line_index_by_line_name(String const& line_name, CSS::GridTrackSizeList);
CSSPixels resolve_definite_track_size(CSS::GridSize const&, AvailableSpace const&, Box const&); CSSPixels resolve_definite_track_size(CSS::GridSize const&, AvailableSpace const&, Box const&);
size_t count_of_gap_columns(); size_t count_of_gap_columns();
size_t count_of_gap_rows(); size_t count_of_gap_rows();