From 6af279a22dd90bd39728a1a3d9d114e4d45335de Mon Sep 17 00:00:00 2001 From: Timothy Flynn Date: Mon, 23 Oct 2023 16:52:57 -0400 Subject: [PATCH] LibWebView: Add a helper to get selected text with collapsed whitespace --- Userland/Libraries/LibWebView/ViewImplementation.cpp | 9 +++++++++ Userland/Libraries/LibWebView/ViewImplementation.h | 1 + 2 files changed, 10 insertions(+) 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();