mirror of
https://github.com/SoongNoonien/mpdevil.git
synced 2023-08-10 21:12:44 +03:00
added tooltips to prev/next buttons indicating number of tracks before/after current track
This commit is contained in:
parent
70ca48b7cc
commit
604b17ea3a
14
bin/mpdevil
14
bin/mpdevil
@ -40,7 +40,7 @@ import dbus.service
|
||||
from dbus.mainloop.glib import DBusGMainLoop
|
||||
DBusGMainLoop(set_as_default=True)
|
||||
|
||||
VERSION="0.9.7" # sync with setup.py
|
||||
VERSION="0.9.7-dev" # sync with setup.py
|
||||
COVER_REGEX=r"^\.?(album|cover|folder|front).*\.(gif|jpeg|jpg|png)$"
|
||||
|
||||
|
||||
@ -2998,6 +2998,8 @@ class PlaybackControl(Gtk.ButtonBox):
|
||||
self._settings.connect("notify::mini-player", self._on_mini_player)
|
||||
self._settings.connect("changed::show-stop", self._on_show_stop_changed)
|
||||
self._client.emitter.connect("state", self._on_state)
|
||||
self._client.emitter.connect("playlist_changed", self._refresh_tooltips)
|
||||
self._client.emitter.connect("current_song_changed", self._refresh_tooltips)
|
||||
self._client.emitter.connect("disconnected", self._on_disconnected)
|
||||
self._client.emitter.connect("reconnected", self._on_reconnected)
|
||||
|
||||
@ -3007,6 +3009,14 @@ class PlaybackControl(Gtk.ButtonBox):
|
||||
self.pack_start(self._stop_button, True, True, 0)
|
||||
self.pack_start(self._next_button, True, True, 0)
|
||||
|
||||
def _refresh_tooltips(self, *args):
|
||||
songs=self._client.wrapped_call("playlistinfo")
|
||||
song=int(self._client.wrapped_call("status")["song"])
|
||||
elapsed=ClientHelper.calc_display_length(songs[:song])
|
||||
rest=ClientHelper.calc_display_length(songs[song+1:])
|
||||
self._prev_button.set_tooltip_text(_("{titles} titles ({length})").format(titles=song, length=elapsed))
|
||||
self._next_button.set_tooltip_text(_("{titles} titles ({length})").format(titles=(len(songs)-(song+1)), length=rest))
|
||||
|
||||
def _on_play_clicked(self, widget):
|
||||
self._client.wrapped_call("toggle_play")
|
||||
|
||||
@ -3035,6 +3045,8 @@ class PlaybackControl(Gtk.ButtonBox):
|
||||
|
||||
def _on_disconnected(self, *args):
|
||||
self.set_sensitive(False)
|
||||
self._prev_button.set_tooltip_text("")
|
||||
self._next_button.set_tooltip_text("")
|
||||
|
||||
def _on_reconnected(self, *args):
|
||||
self.set_sensitive(True)
|
||||
|
Loading…
Reference in New Issue
Block a user