diff --git a/Userland/Libraries/LibWebView/ViewImplementation.cpp b/Userland/Libraries/LibWebView/ViewImplementation.cpp index 8b92d32d73..26cd98a458 100644 --- a/Userland/Libraries/LibWebView/ViewImplementation.cpp +++ b/Userland/Libraries/LibWebView/ViewImplementation.cpp @@ -10,6 +10,7 @@ #include #include #include +#include #include namespace WebView { @@ -128,6 +129,14 @@ DeprecatedString ViewImplementation::selected_text() return client().get_selected_text(); } +Optional ViewImplementation::selected_text_with_whitespace_collapsed() +{ + auto selected_text = MUST(Web::Infra::strip_and_collapse_whitespace(this->selected_text())); + if (selected_text.is_empty()) + return OptionalNone {}; + return selected_text; +} + void ViewImplementation::select_all() { client().async_select_all(); diff --git a/Userland/Libraries/LibWebView/ViewImplementation.h b/Userland/Libraries/LibWebView/ViewImplementation.h index ccbba54d97..9567a472bc 100644 --- a/Userland/Libraries/LibWebView/ViewImplementation.h +++ b/Userland/Libraries/LibWebView/ViewImplementation.h @@ -63,6 +63,7 @@ public: void set_preferred_color_scheme(Web::CSS::PreferredColorScheme); DeprecatedString selected_text(); + Optional selected_text_with_whitespace_collapsed(); void select_all(); void get_source();