31 lines
538 B
Go
31 lines
538 B
Go
//go:build linux
|
|
|
|
package notify
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/rymdport/portal/notification"
|
|
)
|
|
|
|
func notifyLibPortal(title string, body string, actionName string, timeout time.Duration, onclose func()) error {
|
|
notificationID++
|
|
err := notification.Add(uint(notificationID), notification.Content{
|
|
Title: title,
|
|
Body: body,
|
|
})
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
if timeout == 0 {
|
|
return nil
|
|
} else {
|
|
go func(id uint32) {
|
|
time.Sleep(timeout)
|
|
notification.Remove(uint(notificationID))
|
|
}(notificationID)
|
|
}
|
|
return nil
|
|
}
|