From 8cfbb72337f76934002b8606fa715719cfe4d80c Mon Sep 17 00:00:00 2001 From: James Booth Date: Tue, 4 Mar 2014 20:01:19 +0000 Subject: Added OSX desktop notifications using terminal-notifier Requires Xcode WIP - No configure.ac changes --- src/ui/notifier.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'src/ui') diff --git a/src/ui/notifier.c b/src/ui/notifier.c index ebc61e0d..8582acf2 100644 --- a/src/ui/notifier.c +++ b/src/ui/notifier.c @@ -23,6 +23,7 @@ #include #include +#include #include #ifdef HAVE_LIBNOTIFY @@ -205,6 +206,25 @@ _notify(const char * const message, int timeout, Shell_NotifyIcon(NIM_MODIFY, &nid); #endif + GString *notify_command = g_string_new("terminal-notifier -title 'Profanity' -message '"); + g_string_append(notify_command, message); + g_string_append(notify_command, "'"); + + char *term_name = getenv("TERM_PROGRAM"); + char *app_id = NULL; + if (g_strcmp0(term_name, "Apple_Terminal") == 0) { + app_id = "com.apple.Terminal"; + } else if (g_strcmp0(term_name, "iTerm.app") == 0) { + app_id = "com.googlecode.iterm2"; + } + + if (app_id != NULL) { + g_string_append(notify_command, " -sender "); + g_string_append(notify_command, app_id); + } + + system(notify_command->str); + g_string_free(notify_command, TRUE); } void -- cgit 1.4.1-2-gfad0