1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 06:57:44 +00:00

NotificationServer: Add a system service for desktop notifications

This patch adds NotificationServer, which runs as the "notify" user
and provides an IPC API for desktop notifications.

LibGUI gains the GUI::Notification class for showing notifications.

NotificationServer is spawned on demand and will unspawn after
dimissing all visible notifications. :^)

Finally, this also comes with a small /bin/notify utility.
This commit is contained in:
Andreas Kling 2020-02-16 19:28:08 +01:00
parent a6e69bda71
commit 9f54ea9bcd
16 changed files with 486 additions and 1 deletions

View file

@ -0,0 +1,28 @@
#pragma once
#include <LibCore/Object.h>
namespace GUI {
class Notification : public Core::Object {
C_OBJECT(Notification);
public:
virtual ~Notification() override;
const String& text() const { return m_text; }
void set_text(const String& text) { m_text = text; }
const String& title() const { return m_title; }
void set_title(const String& title) { m_title = title; }
void show();
private:
Notification();
String m_title;
String m_text;
};
}