From 0b7c8e0de5c09144a58bf9612b5d67cd494453f4 Mon Sep 17 00:00:00 2001 From: Shannon Booth Date: Sun, 24 Dec 2023 15:49:57 +1300 Subject: [PATCH] LibWeb: Port BrowsingContext from ByteString Also removing an unused m_name member. --- .../Libraries/LibWeb/HTML/BrowsingContext.cpp | 16 ++++++++-------- Userland/Libraries/LibWeb/HTML/BrowsingContext.h | 4 +--- .../Services/WebContent/ConnectionFromClient.cpp | 2 +- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/Userland/Libraries/LibWeb/HTML/BrowsingContext.cpp b/Userland/Libraries/LibWeb/HTML/BrowsingContext.cpp index 26330f5a2a..e8eed6f311 100644 --- a/Userland/Libraries/LibWeb/HTML/BrowsingContext.cpp +++ b/Userland/Libraries/LibWeb/HTML/BrowsingContext.cpp @@ -412,15 +412,15 @@ void BrowsingContext::set_cursor_position(JS::NonnullGCPtr positi reset_cursor_blink_cycle(); } -static ByteString visible_text_in_range(DOM::Range const& range) +static String visible_text_in_range(DOM::Range const& range) { // NOTE: This is an adaption of Range stringification, but we skip over DOM nodes that don't have a corresponding layout node. StringBuilder builder; if (range.start_container() == range.end_container() && is(*range.start_container())) { if (!range.start_container()->layout_node()) - return ""sv; - return MUST(static_cast(*range.start_container()).data().substring_from_byte_offset(range.start_offset(), range.end_offset() - range.start_offset())).to_byte_string(); + return String {}; + return MUST(static_cast(*range.start_container()).data().substring_from_byte_offset(range.start_offset(), range.end_offset() - range.start_offset())); } if (is(*range.start_container()) && range.start_container()->layout_node()) @@ -434,18 +434,18 @@ static ByteString visible_text_in_range(DOM::Range const& range) if (is(*range.end_container()) && range.end_container()->layout_node()) builder.append(static_cast(*range.end_container()).data().bytes_as_string_view().substring_view(0, range.end_offset())); - return builder.to_byte_string(); + return MUST(builder.to_string()); } -ByteString BrowsingContext::selected_text() const +String BrowsingContext::selected_text() const { - auto* document = active_document(); + auto const* document = active_document(); if (!document) - return ""sv; + return String {}; auto selection = const_cast(*document).get_selection(); auto range = selection->range(); if (!range) - return ""sv; + return String {}; return visible_text_in_range(*range); } diff --git a/Userland/Libraries/LibWeb/HTML/BrowsingContext.h b/Userland/Libraries/LibWeb/HTML/BrowsingContext.h index f0ef53c3a0..5afed69c01 100644 --- a/Userland/Libraries/LibWeb/HTML/BrowsingContext.h +++ b/Userland/Libraries/LibWeb/HTML/BrowsingContext.h @@ -151,7 +151,7 @@ public: bool cursor_blink_state() const { return m_cursor_blink_state; } - ByteString selected_text() const; + String selected_text() const; void select_all(); void did_edit(Badge); @@ -222,8 +222,6 @@ private: RefPtr m_cursor_blink_timer; bool m_cursor_blink_state { false }; - ByteString m_name; - // https://html.spec.whatwg.org/multipage/browsers.html#tlbc-group JS::GCPtr m_group; diff --git a/Userland/Services/WebContent/ConnectionFromClient.cpp b/Userland/Services/WebContent/ConnectionFromClient.cpp index 7ec57411ae..7764d55d06 100644 --- a/Userland/Services/WebContent/ConnectionFromClient.cpp +++ b/Userland/Services/WebContent/ConnectionFromClient.cpp @@ -842,7 +842,7 @@ Messages::WebContentServer::DumpGcGraphResponse ConnectionFromClient::dump_gc_gr Messages::WebContentServer::GetSelectedTextResponse ConnectionFromClient::get_selected_text() { - return page().page().focused_context().selected_text(); + return page().page().focused_context().selected_text().to_byte_string(); } void ConnectionFromClient::select_all()