1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-08-17 23:01:04 +02:00
Commit graph

15 commits

Author SHA1 Message Date
189975791f
refactor(mpris): better logging, avoid panic on dbus error 2024-08-10 13:45:17 +01:00
slowsage
180f8748bb fix(music): Handle NoActivePlayer (playerctld) , NoReply, NoMethod, ServiceUnknown DBus errors in mpris. 2024-03-18 19:28:30 -04:00
c702f6fffa
refactor: major client code changes
This does away with `lazy_static` singletons for all the clients, instead putting them all inside a `Clients` struct on the `Ironbar` struct.

Client code has been refactored in places to accommodate this, and module code has been updated to get the clients the new way.

The Wayland client has been re-written from the ground up to remove a lot of the needless complications, provide a nicer interface and reduce some duplicate data.

The MPD music client has been overhauled to use the `mpd_utils` crate, which simplifies the code within Ironbar and should offer more robustness and better recovery when connection is lost to the server.

The launcher module in particular has been affected by the refactor.
2024-01-09 23:33:07 +00:00
e847a84c21
refactor: fix casting based clippy warnings 2023-12-18 22:09:21 +00:00
bea442ed96
refactor: update gtk/glib, remove glib channels
This is a major refactor which updates GTK, GLib and GTK Layer Shell to their latest versions.

GLib channels, previously used for receiving events on the GLib Main Context thread have been deprecated and a new method for running Futures on the main thread has been added instead. This commit also replaces all the deprecated code with this.

As part of the above, a bug was uncovered related to creating the GLib main context inside the Tokio runtime. Spawning of Tokio tasks has been refactored to fix this.
2023-12-18 22:09:21 +00:00
1759945912
fix(music): correctly show/hide popup elements based on player capabilities 2023-06-30 19:27:00 +01:00
12053f111a
feat(music): progress/seek bar in popup
Resolves #128.
2023-06-30 19:26:49 +01:00
7016f7f79e
refactor: use new smart pointer macros throughout codebase 2023-06-29 23:16:31 +01:00
48d6af0281 fix(music): showing when no mpris player found
THe music module expects an event to be sent on subscription to the
client to set up the initial state. This ensures an event is sent when
in MPRIS mode when no player is initially found.
2023-05-21 20:44:31 +01:00
38da59cd41
refactor: fix a few pedantic clippy warnings 2023-05-04 20:07:46 +01:00
5772711192
fix(music): remote mpris album art not showing
Fixes #55.
2023-01-30 11:47:56 +00:00
012762e102
refactor: swap out some code for existing macros 2023-01-28 22:07:05 +00:00
90cd078973
fix(mpd): stops working if connection lost
The client will now attempt to reconnect when a connection loss is detected.

Fixes #21.
2023-01-28 14:40:12 +00:00
08cfbbc2ea
fix(music): unable to go to prev with mpris 2023-01-28 00:43:02 +00:00
6d8e647f12
feat: mpris support
Resolves #25.

Completely refactors the MPD module to be the 'music' module. This now supports both MPD and MPRIS with the same UI for both.

BREAKING CHANGE: The `mpd` module has been renamed to `music`. You will need to update the `type` value in your config and add `player_type` to continue using MPD. You will also need to update your styles.
2023-01-25 23:09:49 +00:00