ErikReider / SwayNotificationCenter

A simple GTK based notification daemon for SwayWM
GNU General Public License v3.0
1.16k stars 59 forks source link

feat: transient notification visibility #170

Closed lazytanuki closed 1 year ago

lazytanuki commented 1 year ago

Hi and thanks for this great tool !

This PR adds a new configurable visibility state called transient. It allows the user to set the transient state of a notification in order for it to show, but not to be added to the CC. This is useful, for instance, for certain music apps that show a notification on track changes. We might want to see them, but we don't necessarily want them in the CC.

Thanks !

StayPirate commented 1 year ago

I set the transient state on one rule and I noticed that subsequent scripts are not ran. Is that an intended behavior, a bug, or did I make an error on my configuration?

  "notification-visibility": {
    "slack-show-only": {
      "_comment": "Show Slack messages but do not add them to the CC",
      "state": "transient",
      "urgency": "Low",
      "app-name": "Firefox",
      "summary": "New message (in|from) .*"
    }
  },
  "scripts": {
    "_comment": "From swaync(5): Only the first matching script will be run.",
    "_comment": "In order to sort rules letters need to be used, digits don't work... So, AA is loaded before AB.",
    "AB-slack-sound": {
      "_comment": "Play a notification sounds for Slack notification from FF",
      "exec": "slack-notification-alert",
      "app-name": "Firefox",
      "summary": ".*New message (in #|from ).*"
    }
  }
ErikReider commented 1 year ago

@StayPirate What's the output of swaync if you run G_MESSAGES_DEBUG=all swaync in the terminal?

StayPirate commented 1 year ago

Never mind, the problem I faced was triggered from a bug on one of my bash scripts. Hence, please ignore my previous comment.