Sinono3 / souvlaki

A cross-platform library for handling OS media controls and metadata.
MIT License
79 stars 15 forks source link

`dbus` module refactor + Volume implementation #42

Closed Sinono3 closed 8 months ago

Sinono3 commented 8 months ago

It was probably better to split these changes into different PRs but well, here we are.

This PR includes:

This release should not break previous usages of MediaControls with the dbus backend. The plan is to merge this PR and release 0.7.0, so the apps can implement the volume controls without waiting for the major refactor which is coming.

After this PR, I'm planning to migrate to zbus completely, since the library we use for dbus can be a bit annoying to work with at times because of the usage of the underlying C library, which has various side effects, e.g. places weird constraints on lifetimes, has a black-box error dbus::Error which is just a string, has non-static interface generation. This are most probably the hard limitations of the library being a C wrapper.

Sinono3 commented 8 months ago

I'll do some extra checks tomorrow and finally merge and release this.