Widget for music and volume control, connected to touchégg 's daemon.
The client connects to touchégg's daemon, and on every gesture update it asks every provider until one responds with a metadata struct, and then displays the information through different windows.
The information displayed on the windows is sourced from different providers, there's currently only two providers:
It works by monitoring the notifications bus and parsing only the Spotify notifications. It supports showing the album icon but it currently doesn't support the playback status.
It works by listening to Spotify's DBus signals emitted when a property changes (either Metadata or PlaybackStatus).
The program can show three different windows:
This window is always displayed, it shows the current volume in the default PulseAudio sink.
If one of the providers returns a valid metadata struct, this window displays the song and artist's name, and if the provider supports it an icon representing the playback status also is displayed.
If the metadata struct has a valid album icon, this window displays it.
Besides installing and running touchégg:
Arch-based distros | Debian-based distros |
---|---|
cairomm |
libcairomm-1.0-dev |
glibmm |
libglibmm-2.4-dev |
libpulse |
libpulse-dev |
You can find the package in the AUR as touchegg-music-client
$ paru -S touchegg-music-client
- Display album icon
- SpotifySignalsProvider listening to Spotify's
PropertiesChanged
signal - Configurable number of fingers/gesture direction
- Configurable windows
- Configurable providers priority
- Configurable PulseAudio sink
-
Migrate to pangomm for text rendering - Migrate to cairomm
- Migrate SpotifySignalsProvider's DBus connection to glibmm
- Add a configuration file
- Add new providers (chromium, vlc)