diff --git a/Userland/Libraries/LibGUI/Action.cpp b/Userland/Libraries/LibGUI/Action.cpp index b1d3a433dd0..21c07f5b8bc 100644 --- a/Userland/Libraries/LibGUI/Action.cpp +++ b/Userland/Libraries/LibGUI/Action.cpp @@ -297,6 +297,11 @@ void Action::set_text(DeprecatedString text) }); } +DeprecatedString Action::tooltip() const +{ + return m_tooltip.value_or_lazy_evaluated([this] { return Gfx::parse_ampersand_string(m_text); }); +} + void Action::set_tooltip(DeprecatedString tooltip) { if (m_tooltip == tooltip) diff --git a/Userland/Libraries/LibGUI/Action.h b/Userland/Libraries/LibGUI/Action.h index 558cf15a2e8..298bf8a182a 100644 --- a/Userland/Libraries/LibGUI/Action.h +++ b/Userland/Libraries/LibGUI/Action.h @@ -84,7 +84,7 @@ public: DeprecatedString text() const { return m_text; } void set_text(DeprecatedString); - DeprecatedString tooltip() const { return m_tooltip.value_or(m_text); } + DeprecatedString tooltip() const; void set_tooltip(DeprecatedString); Optional status_tip() const; diff --git a/Userland/Libraries/LibGUI/Application.cpp b/Userland/Libraries/LibGUI/Application.cpp index decb52d7dc4..2c2979bccab 100644 --- a/Userland/Libraries/LibGUI/Application.cpp +++ b/Userland/Libraries/LibGUI/Application.cpp @@ -27,7 +27,7 @@ class Application::TooltipWindow final : public Window { public: void set_tooltip(DeprecatedString const& tooltip) { - m_label->set_text(String::from_deprecated_string(Gfx::parse_ampersand_string(tooltip)).release_value_but_fixme_should_propagate_errors()); + m_label->set_text(String::from_deprecated_string(tooltip).release_value_but_fixme_should_propagate_errors()); int tooltip_width = m_label->effective_min_size().width().as_int() + 10; int line_count = m_label->text().count("\n"sv); int font_size = m_label->font().pixel_size_rounded_up(); diff --git a/Userland/Libraries/LibGUI/EmojiInputDialog.cpp b/Userland/Libraries/LibGUI/EmojiInputDialog.cpp index cbb6f8cae6d..c5b129f7d8c 100644 --- a/Userland/Libraries/LibGUI/EmojiInputDialog.cpp +++ b/Userland/Libraries/LibGUI/EmojiInputDialog.cpp @@ -67,7 +67,7 @@ EmojiInputDialog::EmojiInputDialog(Window* parent_window) for (auto const& category : s_emoji_groups) { auto name = Unicode::emoji_group_to_string(category.group); - auto tooltip = name.replace("&"sv, "&&"sv, ReplaceMode::FirstOnly); + DeprecatedString tooltip = name; auto set_filter_action = Action::create_checkable( category.representative_emoji,