diff options
author | Jiri Moskovcak <jmoskovc@redhat.com> | 2009-04-07 17:59:06 +0200 |
---|---|---|
committer | Jiri Moskovcak <jmoskovc@redhat.com> | 2009-04-07 17:59:06 +0200 |
commit | bcfcaa2f737332665a9e4ea54ce6caa1f713afda (patch) | |
tree | db2d9c70a9a7bcfe0718a6fbfa6a677509f336ec /src/Applet | |
parent | 0e96f49ddb33421efcdd55d543439f622e707164 (diff) | |
download | abrt-bcfcaa2f737332665a9e4ea54ce6caa1f713afda.tar.gz abrt-bcfcaa2f737332665a9e4ea54ce6caa1f713afda.tar.xz abrt-bcfcaa2f737332665a9e4ea54ce6caa1f713afda.zip |
Added notification thru libnotify
Diffstat (limited to 'src/Applet')
-rw-r--r-- | src/Applet/Applet.cpp | 2 | ||||
-rw-r--r-- | src/Applet/CCApplet.cpp | 8 | ||||
-rw-r--r-- | src/Applet/CCApplet.h | 2 | ||||
-rw-r--r-- | src/Applet/Makefile.am | 4 |
4 files changed, 12 insertions, 4 deletions
diff --git a/src/Applet/Applet.cpp b/src/Applet/Applet.cpp index 788faa6d..0f957ceb 100644 --- a/src/Applet/Applet.cpp +++ b/src/Applet/Applet.cpp @@ -28,9 +28,9 @@ crash_notify_cb(const char* progname) #ifdef DEBUG std::cerr << "Application " << progname << " has crashed!" << std::endl; #endif - applet->ShowIcon(); //applet->AddEvent(uid, std::string(progname)); applet->SetIconTooltip("A crash in package %s has been detected!", progname); + applet->ShowIcon(); } int main(int argc, char **argv) diff --git a/src/Applet/CCApplet.cpp b/src/Applet/CCApplet.cpp index 80964887..13c734ea 100644 --- a/src/Applet/CCApplet.cpp +++ b/src/Applet/CCApplet.cpp @@ -27,13 +27,17 @@ CApplet::CApplet(DBus::Connection &connection, const char *path, const char *nam : DBus::ObjectProxy(connection, path, name) { m_pStatusIcon = gtk_status_icon_new_from_stock(GTK_STOCK_DIALOG_WARNING); + char notify_title[5] = "ABRT"; + notify_init(notify_title); + m_pNotification = notify_notification_new_with_status_icon("Warning!",NULL, NULL,m_pStatusIcon); + notify_notification_set_urgency (m_pNotification,NOTIFY_URGENCY_CRITICAL); + notify_notification_set_timeout(m_pNotification, 5000); gtk_status_icon_set_visible(m_pStatusIcon,FALSE); // LMB click //TODO add some actions! g_signal_connect(G_OBJECT(m_pStatusIcon),"activate",GTK_SIGNAL_FUNC(CApplet::OnAppletActivate_CB), this); g_signal_connect(G_OBJECT(m_pStatusIcon),"popup_menu",GTK_SIGNAL_FUNC(CApplet::OnMenuPopup_cb), this); SetIconTooltip("Pending events: %i",m_mapEvents.size()); - } CApplet::~CApplet() @@ -79,6 +83,7 @@ void CApplet::SetIconTooltip(const char *format, ...) va_end (args); if (n != -1) { + notify_notification_update (m_pNotification, "Warning!",buf, NULL); gtk_status_icon_set_tooltip(m_pStatusIcon,buf); } else @@ -109,6 +114,7 @@ void CApplet::OnMenuPopup_cb(GtkStatusIcon *status_icon, void CApplet::ShowIcon() { gtk_status_icon_set_visible(m_pStatusIcon,true); + notify_notification_show(m_pNotification,NULL); } void CApplet::HideIcon() diff --git a/src/Applet/CCApplet.h b/src/Applet/CCApplet.h index ed5d36d0..98472b46 100644 --- a/src/Applet/CCApplet.h +++ b/src/Applet/CCApplet.h @@ -24,6 +24,7 @@ #include <map> #include <string> #include <DBusClientProxy.h> +#include<libnotify/notify.h> class CApplet : public CDBusClient_proxy, @@ -32,6 +33,7 @@ class CApplet { private: GtkStatusIcon* m_pStatusIcon; + NotifyNotification *m_pNotification; std::map<int, std::string > m_mapEvents; public: CApplet(DBus::Connection &connection, const char *path, const char *name); diff --git a/src/Applet/Makefile.am b/src/Applet/Makefile.am index 1bdb5519..c80daef8 100644 --- a/src/Applet/Makefile.am +++ b/src/Applet/Makefile.am @@ -2,7 +2,7 @@ bin_PROGRAMS = abrt-applet abrt_applet_SOURCES = Applet.cpp CCApplet.cpp CCApplet.h DBusClientProxy.h abrt_applet_CPPFLAGS = -Wall -Werror -I../Daemon/ \ -DDEBUG_DUMPS_DIR=\"$(DEBUG_DUMPS_DIR)\" \ - $(DBUS_GLIB_CFLAGS) $(GTK_CFLAGS) $(DBUSCPP_CFLAGS) \ + $(DBUS_GLIB_CFLAGS) $(GTK_CFLAGS) $(DBUSCPP_CFLAGS) $(LIBNOTIFY_CFLAGS)\ -I../../lib/MiddleWare -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -abrt_applet_LDADD = $(DL_LIBS) $(GTK_LIBS) -lglib-2.0 -lgthread-2.0 $(DBUSCPP_LIBS) +abrt_applet_LDADD = $(DL_LIBS) $(GTK_LIBS) -lglib-2.0 -lgthread-2.0 $(DBUSCPP_LIBS) $(LIBNOTIFY_LIBS) |