summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Katz <dykatz@uw.edu>2022-01-10 19:00:44 -0800
committerAndreas Kling <kling@serenityos.org>2022-01-21 22:14:13 +0100
commita2a93727db565eb1aba27f17b79735e4966b98a1 (patch)
treeabe1bd29a99e688088af7cfa46b7ccf756412ffe
parent12a6ec929297fb7dc699c6093b508a402e1ded04 (diff)
downloadserenity-a2a93727db565eb1aba27f17b79735e4966b98a1.zip
LibGUI: Allow Button::set_icon to accept a bitmap without a move
Previously, Button::set_icon required moving the bitmap into the button, preventing the same bitmap from being used by multiple buttons at once. While this works for buttons that are created once, any button that is dynamically added would require the same bitmap to be loaded every single time. In addition to being ineffecient, this also makes error checking more difficult. With this change, a bitmap can be loaded once, and passed to multiple buttons.
-rw-r--r--Userland/Libraries/LibGUI/Button.cpp2
-rw-r--r--Userland/Libraries/LibGUI/Button.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/Userland/Libraries/LibGUI/Button.cpp b/Userland/Libraries/LibGUI/Button.cpp
index 7cd7d440a0..60cbaa2648 100644
--- a/Userland/Libraries/LibGUI/Button.cpp
+++ b/Userland/Libraries/LibGUI/Button.cpp
@@ -134,7 +134,7 @@ void Button::set_action(Action& action)
set_checked(action.is_checked());
}
-void Button::set_icon(RefPtr<Gfx::Bitmap>&& icon)
+void Button::set_icon(RefPtr<Gfx::Bitmap> icon)
{
if (m_icon == icon)
return;
diff --git a/Userland/Libraries/LibGUI/Button.h b/Userland/Libraries/LibGUI/Button.h
index 0ab17fd88d..54c79772ec 100644
--- a/Userland/Libraries/LibGUI/Button.h
+++ b/Userland/Libraries/LibGUI/Button.h
@@ -20,7 +20,7 @@ class Button : public AbstractButton {
public:
virtual ~Button() override;
- void set_icon(RefPtr<Gfx::Bitmap>&&);
+ void set_icon(RefPtr<Gfx::Bitmap>);
void set_icon_from_path(String const&);
const Gfx::Bitmap* icon() const { return m_icon.ptr(); }
Gfx::Bitmap* icon() { return m_icon.ptr(); }