aboutsummaryrefslogtreecommitdiff
path: root/notification
diff options
context:
space:
mode:
authorTulir Asokan <tulir@maunium.net>2018-04-11 15:05:42 +0300
committerTulir Asokan <tulir@maunium.net>2018-04-11 15:05:42 +0300
commitc0705b02a08bc9054ab8dca0363248bf72896b3d (patch)
tree2ebc3c91c79021ca22d40f58681b1b2e934cd056 /notification
parent8270bc0322ac262f4b48c92d5fad25cf9634f1bb (diff)
Move notification package to lib/ and add open package
Diffstat (limited to 'notification')
-rw-r--r--notification/doc.go2
-rw-r--r--notification/notify_darwin.go54
-rw-r--r--notification/notify_linux.go38
-rw-r--r--notification/notify_unsupported.go23
-rw-r--r--notification/notify_windows.go37
5 files changed, 0 insertions, 154 deletions
diff --git a/notification/doc.go b/notification/doc.go
deleted file mode 100644
index 05295c6..0000000
--- a/notification/doc.go
+++ /dev/null
@@ -1,2 +0,0 @@
-// Package notification contains a simple cross-platform desktop notification sending function.
-package notification
diff --git a/notification/notify_darwin.go b/notification/notify_darwin.go
deleted file mode 100644
index 1e09ef8..0000000
--- a/notification/notify_darwin.go
+++ /dev/null
@@ -1,54 +0,0 @@
-// gomuks - A terminal Matrix client written in Go.
-// Copyright (C) 2018 Tulir Asokan
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-package notification
-
-import (
- "fmt"
- "os/exec"
- "strings"
-)
-
-var TerminalNotifierAvailable = false
-
-func init() {
- if err := exec.Command("which", "terminal-notifier").Run(); err != nil {
- TerminalNotifierAvailable = false
- }
- TerminalNotifierAvailable = true
-}
-
-func Send(title, text string, critical, sound bool) error {
- if TerminalNotifierAvailable {
- args := []string{"-title", "gomuks", "-subtitle", title, "-message", text}
- if critical {
- args = append(args, "-timeout", "15")
- } else {
- args = append(args, "-timeout", "4")
- }
- if sound {
- args = append(args, "-sound", "default")
- }
-// if len(iconPath) > 0 {
-// args = append(args, "-appIcon", iconPath)
-// }
- return exec.Command("terminal-notifier", args...).Run()
- }
- title = strings.Replace(title, `"`, `\"`, -1)
- text = strings.Replace(text, `"`, `\"`, -1)
- notification := fmt.Sprintf("display notification \"%s\" with title \"gomuks\" subtitle \"%s\"", text, title)
- return exec.Command("osascript", "-e", notification).Run()
-}
diff --git a/notification/notify_linux.go b/notification/notify_linux.go
deleted file mode 100644
index f8ecdaf..0000000
--- a/notification/notify_linux.go
+++ /dev/null
@@ -1,38 +0,0 @@
-// gomuks - A terminal Matrix client written in Go.
-// Copyright (C) 2018 Tulir Asokan
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-package notification
-
-import "os/exec"
-
-func Send(title, text string, critical, sound bool) error {
- args := []string{"-a", "gomuks"}
- if critical {
- args = append(args, "-u", "critical")
- }
-// if iconPath {
-// args = append(args, "-i", iconPath)
-// }
- args = append(args, title, text)
- if sound {
- soundName := "message-new-instant"
- if critical {
- soundName = "complete"
- }
- exec.Command("paplay", "/usr/share/sounds/freedesktop/stereo/"+soundName+".oga").Run()
- }
- return exec.Command("notify-send", args...).Run()
-}
diff --git a/notification/notify_unsupported.go b/notification/notify_unsupported.go
deleted file mode 100644
index 0b350e8..0000000
--- a/notification/notify_unsupported.go
+++ /dev/null
@@ -1,23 +0,0 @@
-// +build !linux,!darwin,!windows
-
-// gomuks - A terminal Matrix client written in Go.
-// Copyright (C) 2018 Tulir Asokan
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-package notification
-
-func Send(title, text string, critical, sound bool) error {
- return nil
-}
diff --git a/notification/notify_windows.go b/notification/notify_windows.go
deleted file mode 100644
index d927ee1..0000000
--- a/notification/notify_windows.go
+++ /dev/null
@@ -1,37 +0,0 @@
-// gomuks - A terminal Matrix client written in Go.
-// Copyright (C) 2018 Tulir Asokan
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-package notification
-
-import "gopkg.in/toast.v1"
-
-func Send(title, text string, critical, sound bool) error {
- notification := toast.Notification{
- AppID: "gomuks",
- Title: title,
- Message: message,
- Audio: toast.Silent,
- Duration: toast.Short,
-// Icon: ...,
- }
- if sound {
- notification.Audio = toast.IM
- }
- if critical {
- notification.Duration = toast.Long
- }
- return notification.Push()
-}