1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-07-01 10:41:03 +02:00

feat: swaync notifications module

Adds a new module which connects to SwayNC to display information from the notifications deamon.

Resolves #7
This commit is contained in:
Jake Stanger 2024-03-03 22:42:57 +00:00
parent 660dc81e7d
commit 7742a46578
No known key found for this signature in database
GPG key ID: C51FC8F9CB0BEA61
15 changed files with 592 additions and 3 deletions

View file

@ -30,6 +30,7 @@
- [Label](label)
- [Launcher](launcher)
- [Music](music)
- [Notifications](notifications)
- [Script](script)
- [Sys_Info](sys-info)
- [Tray](tray)

View file

@ -0,0 +1,116 @@
Displays information about the current SwayNC state such as notification count and DnD.
Clicking the widget opens the SwayNC panel.
[!Notifications widget in its closed state showing 3 notifications](https://f.jstanger.dev/github/ironbar/notifications.png)
> ![NOTE]
> This widget requires the [SwayNC](https://github.com/ErikReider/SwayNotificationCenter)
> daemon to be running to use.
## Configuration
> Type: `notifications`
| Name | Type | Default | Description |
|---------------------|-----------|---------|--------------------------------------------------------------------------------------------------------|
| `show_count` | `boolean` | `true` | Whether to show the current notification count. |
| `icons.closed_none` | `string` | `󰍥` | Icon to show when the panel is closed, with no notifications. |
| `icons.closed_some` | `string` | `󱥂` | Icon to show when the panel is closed, with notifications. |
| `icons.closed_dnd` | `string` | `󱅯` | Icon to show when the panel is closed, with DnD enabled. Takes higher priority than count-based icons. |
| `icons.open_none` | `string` | `󰍡` | Icon to show when the panel is open, with no notifications. |
| `icons.open_some` | `string` | `󱥁` | Icon to show when the panel is open, with notifications. |
| `icons.open_dnd` | `string` | `󱅮` | Icon to show when the panel is open, with DnD enabled. Takes higher priority than count-based icons. |
<details>
<summary>JSON</summary>
```json
{
"end": [
{
"type": "notifications",
"show_count": true,
"icons": {
"closed_none": "󰍥",
"closed_some": "󱥂",
"closed_dnd": "󱅯",
"open_none": "󰍡",
"open_some": "󱥁",
"open_dnd": "󱅮"
}
}
]
}
```
</details>
<details>
<summary>TOML</summary>
```toml
[[end]]
type = "notifications"
show_count = true
[[end.icons]]
closed_none = "󰍥"
closed_some = "󱥂"
closed_dnd = "󱅯"
open_none = "󰍡"
open_some = "󱥁"
open_dnd = "󱅮"
```
</details>
<details>
<summary>YAML</summary>
```yaml
end:
- type: notifications
show_count: true
icons:
closed_none: 󰍥
closed_some: 󱥂
closed_dnd: 󱅯
open_none: 󰍡
open_some: 󱥁
open_dnd: 󱅮
```
</details>
<details>
<summary>Corn</summary>
```corn
{
end = [
{
type = "notifications"
show_count = true
icons.closed_none = "󰍥"
icons.closed_some = "󱥂"
icons.closed_dnd = "󱅯"
icons.open_none = "󰍡"
icons.open_some = "󱥁"
icons.open_dnd = "󱅮"
}
]
}
```
</details>
## Styling
| Selector | Description |
|-------------------------|---------------------------------------|
| `.notifications` | Notifications widget button |
| `.notifications .count` | Notifications count indicator overlay |
For more information on styling, please see the [styling guide](styling-guide).