1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 06:37:35 +00:00

LibGUI+Notification: Add mutable notifications

This commit puts all of the remaining pieces in place. This adds a
mechanism to update the text, title, and icon of an image. If an image
is not provided, the default ladybug will be shown.
This commit is contained in:
Nick Johnson 2021-03-11 15:43:01 -06:00 committed by Andreas Kling
parent 147a2c4ca2
commit 8f6894d250
7 changed files with 119 additions and 7 deletions

View file

@ -40,23 +40,39 @@ public:
virtual ~Notification() override;
const String& text() const { return m_text; }
void set_text(const String& text) { m_text = text; }
void set_text(const String& text)
{
m_text_dirty = true;
m_text = text;
}
const String& title() const { return m_title; }
void set_title(const String& title) { m_title = title; }
void set_title(const String& title)
{
m_title_dirty = true;
m_title = title;
}
const Gfx::Bitmap* icon() const { return m_icon; }
void set_icon(const Gfx::Bitmap* icon) { m_icon = icon; }
void set_icon(const Gfx::Bitmap* icon)
{
m_icon_dirty = true;
m_icon = icon;
}
void show();
bool update();
void close();
private:
Notification();
String m_title;
bool m_title_dirty;
String m_text;
bool m_text_dirty;
RefPtr<Gfx::Bitmap> m_icon;
bool m_icon_dirty;
NonnullRefPtr<NotificationServerConnection> m_connection;
bool m_showing { false };