diff --git a/bin/mpdevil b/bin/mpdevil index f76f90f..6275b28 100755 --- a/bin/mpdevil +++ b/bin/mpdevil @@ -41,7 +41,7 @@ import dbus.service from dbus.mainloop.glib import DBusGMainLoop DBusGMainLoop(set_as_default=True) -VERSION='0.9.1' # sync with setup.py +VERSION='0.9.1-dev' # sync with setup.py COVER_REGEX="^\.?(album|cover|folder|front).*\.(gif|jpeg|jpg|png)$" @@ -844,6 +844,8 @@ class Client(MPDClient): class Settings(Gio.Settings): BASE_KEY="org.mpdevil" + # temp settings + mini_player=GObject.Property(type=bool, default=False) def __init__(self): super().__init__(schema=self.BASE_KEY) @@ -1746,6 +1748,7 @@ class Browser(Gtk.Paned): self.back_to_current_album_button.connect("clicked", self.back_to_current_album) self.search_button.connect("toggled", self._on_search_toggled) self._artist_window.connect("artists_changed", self._on_artists_changed) + self._settings.connect("notify::mini-player", self._on_mini_player) if not self._use_csd: self._settings.connect("changed::icon-size-sec", self._on_icon_size_changed) self._client.emitter.connect("disconnected", self._on_disconnected) @@ -1831,6 +1834,13 @@ class Browser(Gtk.Paned): def _on_artists_changed(self, *args): self.search_button.set_active(False) + def _on_mini_player(self, obj, typestring): + visibility=not(obj.get_property("mini-player")) + self.set_property("visible", visibility) + self.back_to_current_album_button.set_property("visible", visibility) + self.search_button.set_property("visible", visibility) + self.genre_select.set_property("visible", visibility) + def _on_icon_size_changed(self, *args): pixel_size=self._settings.get_int("icon-size-sec") for icon in self._icons.values(): @@ -2019,7 +2029,7 @@ class MainCover(Gtk.Frame): self._window=window # event box - event_box=Gtk.EventBox() + self._event_box=Gtk.EventBox() # cover self._cover=Gtk.Image.new() @@ -2029,14 +2039,15 @@ class MainCover(Gtk.Frame): self._cover.set_size_request(size, size) # connect - event_box.connect("button-press-event", self._on_button_press_event) + self._button_press_event=self._event_box.connect("button-press-event", self._on_button_press_event) self._client.emitter.connect("current_song_changed", self._refresh) self._client.emitter.connect("disconnected", self._on_disconnected) self._client.emitter.connect("reconnected", self._on_reconnected) + self._settings.connect("notify::mini-player", self._on_mini_player) self._settings.connect("changed::track-cover", self._on_settings_changed) - event_box.add(self._cover) - self.add(event_box) + self._event_box.add(self._cover) + self.add(self._event_box) def _refresh(self, *args): current_song=self._client.wrapped_call("currentsong") @@ -2079,6 +2090,12 @@ class MainCover(Gtk.Frame): def _on_reconnected(self, *args): self._cover.set_sensitive(True) + def _on_mini_player(self, obj, typestring): + if obj.get_property("mini-player"): + self._event_box.handler_block(self._button_press_event) + else: + self._event_box.handler_unblock(self._button_press_event) + def _on_settings_changed(self, *args): size=self._settings.get_int("track-cover") self._cover.set_size_request(size, size) @@ -2193,6 +2210,7 @@ class PlaylistWindow(Gtk.Box): self._client.emitter.connect("disconnected", self._on_disconnected) self._client.emitter.connect("reconnected", self._on_reconnected) + self._settings.connect("notify::mini-player", self._on_mini_player) self._settings.connect("changed::column-visibilities", self._load_settings) self._settings.connect("changed::column-permutation", self._load_settings) self._settings.connect("changed::icon-size-sec", self._on_icon_size_changed) @@ -2364,6 +2382,10 @@ class PlaylistWindow(Gtk.Box): self._clear_button.set_sensitive(True) self._treeview.set_sensitive(True) + def _on_mini_player(self, obj, typestring): + visibility=not(obj.get_property("mini-player")) + self.set_property("visible", visibility) + def _on_icon_size_changed(self, *args): pixel_size=self._settings.get_int("icon-size-sec") for icon in self._icons.values(): @@ -3018,8 +3040,10 @@ class PlaybackControl(Gtk.ButtonBox): # connect self.play_button.connect("clicked", self._on_play_clicked) self.stop_button.connect("clicked", self._on_stop_clicked) + self.stop_button.set_property("no-show-all", not(self._settings.get_boolean("show-stop"))) self.prev_button.connect("clicked", self._on_prev_clicked) self.next_button.connect("clicked", self._on_next_clicked) + self._settings.connect("notify::mini-player", self._on_mini_player) self._settings.connect("changed::show-stop", self._on_show_stop_changed) self._settings.connect("changed::icon-size", self._on_icon_size_changed) self._client.emitter.connect("state", self._on_state) @@ -3027,8 +3051,7 @@ class PlaybackControl(Gtk.ButtonBox): # packing self.pack_start(self.prev_button, True, True, 0) self.pack_start(self.play_button, True, True, 0) - if self._settings.get_boolean("show-stop"): - self.pack_start(self.stop_button, True, True, 0) + self.pack_start(self.stop_button, True, True, 0) self.pack_start(self.next_button, True, True, 0) def _on_state(self, emitter, state): @@ -3070,13 +3093,13 @@ class PlaybackControl(Gtk.ButtonBox): if self._client.connected(): self._client.wrapped_call("next") + def _on_mini_player(self, obj, typestring): + self._on_show_stop_changed() + def _on_show_stop_changed(self, *args): - if self._settings.get_boolean("show-stop"): - self.pack_start(self.stop_button, True, True, 0) - self.reorder_child(self.stop_button, 2) - self.stop_button.show() - else: - self.remove(self.stop_button) + visibility=(self._settings.get_boolean("show-stop") and not self._settings.get_property("mini-player")) + self.stop_button.set_property("visible", visibility) + self.stop_button.set_property("no-show-all", not(visibility)) def _on_icon_size_changed(self, *args): pixel_size=self._settings.get_int("icon-size") @@ -3262,15 +3285,16 @@ class PlaybackOptions(Gtk.Box): self._volume_changed=self._client.emitter.connect("volume_changed", self._volume_refresh) self._client.emitter.connect("disconnected", self._on_disconnected) self._client.emitter.connect("reconnected", self._on_reconnected) + self._settings.connect("notify::mini-player", self._on_mini_player) self._settings.connect("changed::icon-size", self._on_icon_size_changed) # packing - ButtonBox=Gtk.ButtonBox(layout_style=Gtk.ButtonBoxStyle.EXPAND) - ButtonBox.pack_start(self._repeat_button, True, True, 0) - ButtonBox.pack_start(self._random_button, True, True, 0) - ButtonBox.pack_start(self._single_button, True, True, 0) - ButtonBox.pack_start(self._consume_button, True, True, 0) - self.pack_start(ButtonBox, True, True, 0) + self._button_box=Gtk.ButtonBox(layout_style=Gtk.ButtonBoxStyle.EXPAND) + self._button_box.pack_start(self._repeat_button, True, True, 0) + self._button_box.pack_start(self._random_button, True, True, 0) + self._button_box.pack_start(self._single_button, True, True, 0) + self._button_box.pack_start(self._consume_button, True, True, 0) + self.pack_start(self._button_box, True, True, 0) self.pack_start(self._volume_button, True, True, 0) def _set_option(self, widget, option): @@ -3312,12 +3336,6 @@ class PlaybackOptions(Gtk.Box): self._volume_button.set_sensitive(True) self._volume_button.handler_unblock(self._volume_button_changed) - def _on_icon_size_changed(self, *args): - pixel_size=self._settings.get_int("icon-size") - for icon in self._icons.values(): - icon.set_pixel_size(pixel_size) - self._volume_button.set_property("size", self._settings.get_gtk_icon_size("icon-size")) - def _on_reconnected(self, *args): self._repeat_button.set_sensitive(True) self._random_button.set_sensitive(True) @@ -3335,6 +3353,16 @@ class PlaybackOptions(Gtk.Box): self._consume_refresh(None, False) self._volume_refresh(None, -1) + def _on_mini_player(self, obj, typestring): + visibility=not(obj.get_property("mini-player")) + self._button_box.set_property("visible", visibility) + + def _on_icon_size_changed(self, *args): + pixel_size=self._settings.get_int("icon-size") + for icon in self._icons.values(): + icon.set_pixel_size(pixel_size) + self._volume_button.set_property("size", self._settings.get_gtk_icon_size("icon-size")) + ################# # other dialogs # ################# @@ -3411,11 +3439,11 @@ class AboutDialog(Gtk.AboutDialog): ############### class ProfileSelect(Gtk.ComboBoxText): - def __init__(self, client, settings): + def __init__(self, settings): super().__init__(tooltip_text=_("Select profile")) + self.set_property("no-show-all", not(len(settings.get_value("profiles")) > 1)) # adding vars - self._client=client self._settings=settings # connect @@ -3426,6 +3454,7 @@ class ProfileSelect(Gtk.ComboBoxText): self._settings.connect("changed::passwords", self._refresh) self._settings.connect("changed::paths", self._refresh) self._settings.connect("changed::active-profile", self._on_active_profile_changed) + self._settings.connect("changed::profiles", self._on_profiles_changed) self._refresh() @@ -3446,6 +3475,14 @@ class ProfileSelect(Gtk.ComboBoxText): self.set_active(self._settings.get_int("active-profile")) self.handler_unblock(self._changed) + def _on_profiles_changed(self, *args): + if len(self._settings.get_value("profiles")) > 1: + self.set_property("no-show-all", False) + self.set_property("visible", True) + else: + self.set_property("no-show-all", True) + self.set_property("visible", False) + class ConnectionNotify(Gtk.Revealer): def __init__(self, client, settings): super().__init__(valign=Gtk.Align.START, halign=Gtk.Align.CENTER) @@ -3506,14 +3543,18 @@ class MainWindow(Gtk.ApplicationWindow): self._icon_size=0 else: self._icon_size=self._settings.get_int("icon-size") + self.tmp_saved_size=None # needed to restore size after leaving mini player mode # MPRIS dbus_service=MPRISInterface(self, self._client, self._settings) # actions - save_action=Gio.SimpleAction.new("save", None) - save_action.connect("activate", self._on_save) - self.add_action(save_action) + self._save_action=Gio.SimpleAction.new("save", None) + self._save_action.connect("activate", self._on_save) + self.add_action(self._save_action) + + mini_player_action=Gio.PropertyAction.new("mini-player", self._settings, "mini-player") + self.add_action(mini_player_action) settings_action=Gio.SimpleAction.new("settings", None) settings_action.connect("activate", self._on_settings) @@ -3539,7 +3580,7 @@ class MainWindow(Gtk.ApplicationWindow): self._browser=Browser(self._client, self._settings, self) self._cover_playlist_window=CoverPlaylistWindow(self._client, self._settings, self) - self._profile_select=ProfileSelect(self._client, self._settings) + self._profile_select=ProfileSelect(self._settings) self._playback_control=PlaybackControl(self._client, self._settings) self._seek_bar=SeekBar(self._client) playback_options=PlaybackOptions(self._client, self._settings) @@ -3558,6 +3599,7 @@ class MainWindow(Gtk.ApplicationWindow): menu=Gio.Menu() menu.append(_("Save window layout"), "win.save") + menu.append(_("Mini player"), "win.mini-player") menu.append_section(None, mpd_subsection) menu.append_section(None, subsection) @@ -3572,7 +3614,7 @@ class MainWindow(Gtk.ApplicationWindow): action_bar.pack_start(playback_options) # connect - self._settings.connect("changed::profiles", self._on_profiles_changed) + self._settings.connect_after("notify::mini-player", self._on_mini_player) self._settings.connect("changed::playlist-right", self._on_playlist_pos_changed) if not self._use_csd: self._settings.connect("changed::icon-size", self._on_icon_size_changed) @@ -3617,7 +3659,6 @@ class MainWindow(Gtk.ApplicationWindow): self.show_all() if self._settings.get_boolean("maximize"): self.maximize() - self._on_profiles_changed() # hide profiles button self._client.start() # connect client def _on_song_changed(self, *args): @@ -3724,11 +3765,15 @@ class MainWindow(Gtk.ApplicationWindow): def _on_help(self, action, param): Gtk.show_uri_on_window(self, "https://github.com/SoongNoonien/mpdevil/wiki/Usage", Gdk.CURRENT_TIME) - def _on_profiles_changed(self, *args): - if len(self._settings.get_value("profiles")) > 1: - self._profile_select.set_property("visible", True) + def _on_mini_player(self, obj, typestring): + if obj.get_property("mini-player"): + self.tmp_saved_size=self.get_size() + self._save_action.set_enabled(False) + self.resize(1,1) else: - self._profile_select.set_property("visible", False) + self._save_action.set_enabled(True) + self.resize(self.tmp_saved_size[0], self.tmp_saved_size[1]) + self.tmp_saved_size=None def _on_playlist_pos_changed(self, *args): if self._settings.get_boolean("playlist-right"): diff --git a/po/de.po b/po/de.po index ac6fa54..ad16296 100644 --- a/po/de.po +++ b/po/de.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-09-13 21:30+0200\n" -"PO-Revision-Date: 2020-09-13 21:32+0200\n" +"POT-Creation-Date: 2020-09-15 18:44+0200\n" +"PO-Revision-Date: 2020-09-15 18:45+0200\n" "Last-Translator: \n" "Language-Team: \n" "Language: de\n" @@ -18,72 +18,72 @@ msgstr "" "X-Generator: Poedit 2.3.1\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: mpdevil:518 +#: bin/mpdevil:518 msgid "MPD-Tag" msgstr "MPD-Tag" -#: mpdevil:522 +#: bin/mpdevil:522 msgid "Value" msgstr "Wert" -#: mpdevil:605 +#: bin/mpdevil:605 msgid "Unknown Title" msgstr "Unbekannter Titel" -#: mpdevil:608 +#: bin/mpdevil:608 msgid "Unknown Artist" msgstr "Unbekannter Interpret" -#: mpdevil:609 +#: bin/mpdevil:609 msgid "Unknown Album" msgstr "Unbekanntes Album" -#: mpdevil:936 mpdevil:1240 mpdevil:2141 mpdevil:2846 +#: bin/mpdevil:938 bin/mpdevil:1242 bin/mpdevil:2158 bin/mpdevil:2868 msgid "No" msgstr "Nr." -#: mpdevil:941 mpdevil:1245 mpdevil:2143 mpdevil:2846 +#: bin/mpdevil:943 bin/mpdevil:1247 bin/mpdevil:2160 bin/mpdevil:2868 msgid "Title" msgstr "Titel" -#: mpdevil:947 mpdevil:1422 mpdevil:2144 mpdevil:2846 +#: bin/mpdevil:949 bin/mpdevil:1424 bin/mpdevil:2161 bin/mpdevil:2868 msgid "Artist" msgstr "Interpret" -#: mpdevil:953 mpdevil:2145 mpdevil:2846 +#: bin/mpdevil:955 bin/mpdevil:2162 bin/mpdevil:2868 msgid "Album" msgstr "Album" -#: mpdevil:959 mpdevil:1251 mpdevil:2146 mpdevil:2846 +#: bin/mpdevil:961 bin/mpdevil:1253 bin/mpdevil:2163 bin/mpdevil:2868 msgid "Length" msgstr "Länge" -#: mpdevil:1023 +#: bin/mpdevil:1025 #, python-format msgid "%i hits" msgstr "%i Treffer" -#: mpdevil:1124 +#: bin/mpdevil:1126 msgid "Append" msgstr "Anhängen" -#: mpdevil:1125 +#: bin/mpdevil:1127 msgid "Add all titles to playlist" msgstr "Alle Titel der Wiedergabeliste anhängen" -#: mpdevil:1126 +#: bin/mpdevil:1128 msgid "Play" msgstr "Abspielen" -#: mpdevil:1127 +#: bin/mpdevil:1129 msgid "Directly play all titles" msgstr "Alle Titel sofort abspielen" -#: mpdevil:1128 +#: bin/mpdevil:1130 msgid "Enqueue" msgstr "Einreihen" -#: mpdevil:1129 +#: bin/mpdevil:1131 msgid "" "Append all titles after the currently playing track and clear the playlist " "from all other songs" @@ -91,49 +91,49 @@ msgstr "" "Alle Titel hinter dem aktuellen Stück einreihen und die weitere " "Wiedergabeliste leeren" -#: mpdevil:1257 +#: bin/mpdevil:1259 msgid "Close" msgstr "Schließen" -#: mpdevil:1310 +#: bin/mpdevil:1312 msgid "all genres" msgstr "Alle Genres" -#: mpdevil:1420 +#: bin/mpdevil:1422 msgid "Album Artist" msgstr "Albuminterpret" -#: mpdevil:1423 +#: bin/mpdevil:1425 msgid "all artists" msgstr "Alle Interpreten" -#: mpdevil:1611 +#: bin/mpdevil:1613 #, python-format msgid "%(total_tracks)i titles on %(discs)i discs (%(total_length)s)" msgstr "%(total_tracks)i Titel auf %(discs)i CDs (%(total_length)s)" -#: mpdevil:1614 mpdevil:2235 +#: bin/mpdevil:1616 bin/mpdevil:2253 #, python-format msgid "%(total_tracks)i titles (%(total_length)s)" msgstr "%(total_tracks)i Titel (%(total_length)s)" -#: mpdevil:1738 +#: bin/mpdevil:1740 msgid "Back to current album" msgstr "Zurück zu aktuellem Album" -#: mpdevil:1739 +#: bin/mpdevil:1741 msgid "Search" msgstr "Suche" -#: mpdevil:1899 +#: bin/mpdevil:1909 msgid "searching..." msgstr "suche..." -#: mpdevil:1903 +#: bin/mpdevil:1913 msgid "lyrics not found" msgstr "Liedtext nicht gefunden" -#: mpdevil:1977 +#: bin/mpdevil:1987 #, python-format msgid "" "%(bitrate)s kb/s, %(frequency)s kHz, %(resolution)s bit, %(channels)s " @@ -142,123 +142,123 @@ msgstr "" "%(bitrate)s kb/s, %(frequency)s kHz, %(resolution)s bit, %(channels)s " "Kanäle, %(file_type)s" -#: mpdevil:2110 +#: bin/mpdevil:2127 msgid "Scroll to current song" msgstr "Gehe zu aktuellem Lied" -#: mpdevil:2117 +#: bin/mpdevil:2134 msgid "Clear playlist" msgstr "Wiedergabeliste leeren" -#: mpdevil:2142 mpdevil:2846 +#: bin/mpdevil:2159 bin/mpdevil:2868 msgid "Disc" msgstr "CD" -#: mpdevil:2147 mpdevil:2846 +#: bin/mpdevil:2164 bin/mpdevil:2868 msgid "Year" msgstr "Jahr" -#: mpdevil:2148 mpdevil:2846 +#: bin/mpdevil:2165 bin/mpdevil:2868 msgid "Genre" msgstr "Genre" -#: mpdevil:2387 +#: bin/mpdevil:2409 msgid "Show lyrics" msgstr "Zeige Liedtext" -#: mpdevil:2481 +#: bin/mpdevil:2503 msgid "Main cover size:" msgstr "Größe des Haupt-Covers:" -#: mpdevil:2482 +#: bin/mpdevil:2504 msgid "Album view cover size:" msgstr "Covergröße in Albumliste:" -#: mpdevil:2483 +#: bin/mpdevil:2505 msgid "Action bar icon size:" msgstr "Symbolgröße Aktionsleiste:" -#: mpdevil:2484 +#: bin/mpdevil:2506 msgid "Secondary icon size:" msgstr "Sekundäre Symbolgröße:" -#: mpdevil:2497 +#: bin/mpdevil:2519 msgid "Sort albums by:" msgstr "Sortiere Alben nach:" -#: mpdevil:2497 +#: bin/mpdevil:2519 msgid "name" msgstr "Name" -#: mpdevil:2497 +#: bin/mpdevil:2519 msgid "year" msgstr "Jahr" -#: mpdevil:2498 +#: bin/mpdevil:2520 msgid "Position of playlist:" msgstr "Wiedergabelistenposition:" -#: mpdevil:2498 +#: bin/mpdevil:2520 msgid "bottom" msgstr "unten" -#: mpdevil:2498 +#: bin/mpdevil:2520 msgid "right" msgstr "rechts" -#: mpdevil:2516 +#: bin/mpdevil:2538 msgid "Use Client-side decoration" msgstr "Benutze \"Client-side decoration\"" -#: mpdevil:2517 +#: bin/mpdevil:2539 msgid "Show stop button" msgstr "Zeige Stopp-Knopf" -#: mpdevil:2518 +#: bin/mpdevil:2540 msgid "Show lyrics button" msgstr "Zeige Liedtext-Knopf" -#: mpdevil:2519 +#: bin/mpdevil:2541 msgid "Show initials in artist view" msgstr "Zeige Anfangsbuchstaben in Interpretenliste" -#: mpdevil:2520 +#: bin/mpdevil:2542 msgid "Show tooltips in album view" msgstr "Zeige Tooltips in Albumliste" -#: mpdevil:2521 +#: bin/mpdevil:2543 msgid "Use 'Album Artist' tag" msgstr "Benutze \"Album Artist\" Tag" -#: mpdevil:2522 +#: bin/mpdevil:2544 msgid "Send notification on title change" msgstr "Sende Benachrichtigung bei Titelwechsel" -#: mpdevil:2523 +#: bin/mpdevil:2545 msgid "Stop playback on quit" msgstr "Wiedergabe beim Beenden stoppen" -#: mpdevil:2524 +#: bin/mpdevil:2546 msgid "Play selected albums and titles immediately" msgstr "Ausgewählte Alben und Titel sofort abspielen" -#: mpdevil:2537 +#: bin/mpdevil:2559 msgid "View" msgstr "Ansicht" -#: mpdevil:2538 +#: bin/mpdevil:2560 msgid "Behavior" msgstr "Verhalten" -#: mpdevil:2570 +#: bin/mpdevil:2592 msgid "(restart required)" msgstr "(Neustart erforderlich)" -#: mpdevil:2632 mpdevil:3461 +#: bin/mpdevil:2654 bin/mpdevil:3498 msgid "Connect" msgstr "Verbinden" -#: mpdevil:2648 +#: bin/mpdevil:2670 msgid "" "The first image in the same directory as the song file matching this regex " "will be displayed. %AlbumArtist% and %Album% will be replaced by the " @@ -268,114 +268,118 @@ msgstr "" "regulären Ausdruck entspricht, wird angezeigt. %AlbumArtist% und %Album% " "werden durch die entsprechenden Tags des Liedes ersetzt." -#: mpdevil:2653 +#: bin/mpdevil:2675 msgid "Profile:" msgstr "Profil:" -#: mpdevil:2654 +#: bin/mpdevil:2676 msgid "Name:" msgstr "Name:" -#: mpdevil:2655 +#: bin/mpdevil:2677 msgid "Host:" msgstr "Host:" -#: mpdevil:2656 +#: bin/mpdevil:2678 msgid "Password:" msgstr "Passwort:" -#: mpdevil:2657 +#: bin/mpdevil:2679 msgid "Music lib:" msgstr "Musikverzeichnis:" -#: mpdevil:2658 +#: bin/mpdevil:2680 msgid "Cover regex:" msgstr "Cover-Regex:" -#: mpdevil:2789 +#: bin/mpdevil:2811 msgid "Choose directory" msgstr "Verzeichnis Wählen" -#: mpdevil:2822 +#: bin/mpdevil:2844 msgid "Choose the order of information to appear in the playlist:" msgstr "" "Lege die Reihenfolge fest, in der Informationen in der Wiedergabeliste " "angezeigt werden sollen:" -#: mpdevil:2962 mpdevil:2970 mpdevil:3550 +#: bin/mpdevil:2984 bin/mpdevil:2992 bin/mpdevil:3591 msgid "Settings" msgstr "Einstellungen" -#: mpdevil:2981 +#: bin/mpdevil:3003 msgid "General" msgstr "Allgemein" -#: mpdevil:2982 +#: bin/mpdevil:3004 msgid "Profiles" msgstr "Profile" -#: mpdevil:2983 +#: bin/mpdevil:3005 msgid "Playlist" msgstr "Wiedergabeliste" -#: mpdevil:3242 +#: bin/mpdevil:3265 msgid "Random mode" msgstr "Zufallsmodus" -#: mpdevil:3243 +#: bin/mpdevil:3266 msgid "Repeat mode" msgstr "Dauerschleife" -#: mpdevil:3244 +#: bin/mpdevil:3267 msgid "Single mode" msgstr "Einzelstückmodus" -#: mpdevil:3245 +#: bin/mpdevil:3268 msgid "Consume mode" msgstr "Wiedergabeliste verbrauchen" -#: mpdevil:3346 mpdevil:3354 +#: bin/mpdevil:3374 bin/mpdevil:3382 msgid "Stats" msgstr "Statistik" -#: mpdevil:3403 +#: bin/mpdevil:3431 msgid "A simple music browser for MPD" msgstr "Ein einfacher Musikbrowser für MPD" -#: mpdevil:3415 +#: bin/mpdevil:3443 msgid "Select profile" msgstr "Profil auswählen" -#: mpdevil:3482 +#: bin/mpdevil:3519 #, python-format msgid "Connection to \"%(profile)s\" (%(host)s:%(port)s) failed" msgstr "Verbindung zu \"%(profile)s\" (%(host)s:%(port)s) fehlgeschlagen" -#: mpdevil:3551 +#: bin/mpdevil:3592 msgid "Help" msgstr "Hilfe" -#: mpdevil:3552 +#: bin/mpdevil:3593 msgid "About" msgstr "Über" -#: mpdevil:3553 +#: bin/mpdevil:3594 msgid "Quit" msgstr "Beenden" -#: mpdevil:3556 +#: bin/mpdevil:3597 msgid "Update database" msgstr "Datenbank aktualisieren" -#: mpdevil:3557 +#: bin/mpdevil:3598 msgid "Server stats" msgstr "Serverstatistik" -#: mpdevil:3560 +#: bin/mpdevil:3601 msgid "Save window layout" msgstr "Fensterlayout speichern" -#: mpdevil:3564 +#: bin/mpdevil:3602 +msgid "Mini player" +msgstr "Miniplayer" + +#: bin/mpdevil:3606 msgid "Menu" msgstr "Menü" diff --git a/po/mpdevil.pot b/po/mpdevil.pot index 57eb244..60b02a0 100644 --- a/po/mpdevil.pot +++ b/po/mpdevil.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-09-13 21:30+0200\n" +"POT-Creation-Date: 2020-09-15 18:44+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,354 +17,358 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: mpdevil:518 +#: bin/mpdevil:518 msgid "MPD-Tag" msgstr "" -#: mpdevil:522 +#: bin/mpdevil:522 msgid "Value" msgstr "" -#: mpdevil:605 +#: bin/mpdevil:605 msgid "Unknown Title" msgstr "" -#: mpdevil:608 +#: bin/mpdevil:608 msgid "Unknown Artist" msgstr "" -#: mpdevil:609 +#: bin/mpdevil:609 msgid "Unknown Album" msgstr "" -#: mpdevil:936 mpdevil:1240 mpdevil:2141 mpdevil:2846 +#: bin/mpdevil:938 bin/mpdevil:1242 bin/mpdevil:2158 bin/mpdevil:2868 msgid "No" msgstr "" -#: mpdevil:941 mpdevil:1245 mpdevil:2143 mpdevil:2846 +#: bin/mpdevil:943 bin/mpdevil:1247 bin/mpdevil:2160 bin/mpdevil:2868 msgid "Title" msgstr "" -#: mpdevil:947 mpdevil:1422 mpdevil:2144 mpdevil:2846 +#: bin/mpdevil:949 bin/mpdevil:1424 bin/mpdevil:2161 bin/mpdevil:2868 msgid "Artist" msgstr "" -#: mpdevil:953 mpdevil:2145 mpdevil:2846 +#: bin/mpdevil:955 bin/mpdevil:2162 bin/mpdevil:2868 msgid "Album" msgstr "" -#: mpdevil:959 mpdevil:1251 mpdevil:2146 mpdevil:2846 +#: bin/mpdevil:961 bin/mpdevil:1253 bin/mpdevil:2163 bin/mpdevil:2868 msgid "Length" msgstr "" -#: mpdevil:1023 +#: bin/mpdevil:1025 #, python-format msgid "%i hits" msgstr "" -#: mpdevil:1124 +#: bin/mpdevil:1126 msgid "Append" msgstr "" -#: mpdevil:1125 +#: bin/mpdevil:1127 msgid "Add all titles to playlist" msgstr "" -#: mpdevil:1126 +#: bin/mpdevil:1128 msgid "Play" msgstr "" -#: mpdevil:1127 +#: bin/mpdevil:1129 msgid "Directly play all titles" msgstr "" -#: mpdevil:1128 +#: bin/mpdevil:1130 msgid "Enqueue" msgstr "" -#: mpdevil:1129 +#: bin/mpdevil:1131 msgid "" "Append all titles after the currently playing track and clear the playlist " "from all other songs" msgstr "" -#: mpdevil:1257 +#: bin/mpdevil:1259 msgid "Close" msgstr "" -#: mpdevil:1310 +#: bin/mpdevil:1312 msgid "all genres" msgstr "" -#: mpdevil:1420 +#: bin/mpdevil:1422 msgid "Album Artist" msgstr "" -#: mpdevil:1423 +#: bin/mpdevil:1425 msgid "all artists" msgstr "" -#: mpdevil:1611 +#: bin/mpdevil:1613 #, python-format msgid "%(total_tracks)i titles on %(discs)i discs (%(total_length)s)" msgstr "" -#: mpdevil:1614 mpdevil:2235 +#: bin/mpdevil:1616 bin/mpdevil:2253 #, python-format msgid "%(total_tracks)i titles (%(total_length)s)" msgstr "" -#: mpdevil:1738 +#: bin/mpdevil:1740 msgid "Back to current album" msgstr "" -#: mpdevil:1739 +#: bin/mpdevil:1741 msgid "Search" msgstr "" -#: mpdevil:1899 +#: bin/mpdevil:1909 msgid "searching..." msgstr "" -#: mpdevil:1903 +#: bin/mpdevil:1913 msgid "lyrics not found" msgstr "" -#: mpdevil:1977 +#: bin/mpdevil:1987 #, python-format msgid "" "%(bitrate)s kb/s, %(frequency)s kHz, %(resolution)s bit, %(channels)s " "channels, %(file_type)s" msgstr "" -#: mpdevil:2110 +#: bin/mpdevil:2127 msgid "Scroll to current song" msgstr "" -#: mpdevil:2117 +#: bin/mpdevil:2134 msgid "Clear playlist" msgstr "" -#: mpdevil:2142 mpdevil:2846 +#: bin/mpdevil:2159 bin/mpdevil:2868 msgid "Disc" msgstr "" -#: mpdevil:2147 mpdevil:2846 +#: bin/mpdevil:2164 bin/mpdevil:2868 msgid "Year" msgstr "" -#: mpdevil:2148 mpdevil:2846 +#: bin/mpdevil:2165 bin/mpdevil:2868 msgid "Genre" msgstr "" -#: mpdevil:2387 +#: bin/mpdevil:2409 msgid "Show lyrics" msgstr "" -#: mpdevil:2481 +#: bin/mpdevil:2503 msgid "Main cover size:" msgstr "" -#: mpdevil:2482 +#: bin/mpdevil:2504 msgid "Album view cover size:" msgstr "" -#: mpdevil:2483 +#: bin/mpdevil:2505 msgid "Action bar icon size:" msgstr "" -#: mpdevil:2484 +#: bin/mpdevil:2506 msgid "Secondary icon size:" msgstr "" -#: mpdevil:2497 +#: bin/mpdevil:2519 msgid "Sort albums by:" msgstr "" -#: mpdevil:2497 +#: bin/mpdevil:2519 msgid "name" msgstr "" -#: mpdevil:2497 +#: bin/mpdevil:2519 msgid "year" msgstr "" -#: mpdevil:2498 +#: bin/mpdevil:2520 msgid "Position of playlist:" msgstr "" -#: mpdevil:2498 +#: bin/mpdevil:2520 msgid "bottom" msgstr "" -#: mpdevil:2498 +#: bin/mpdevil:2520 msgid "right" msgstr "" -#: mpdevil:2516 +#: bin/mpdevil:2538 msgid "Use Client-side decoration" msgstr "" -#: mpdevil:2517 +#: bin/mpdevil:2539 msgid "Show stop button" msgstr "" -#: mpdevil:2518 +#: bin/mpdevil:2540 msgid "Show lyrics button" msgstr "" -#: mpdevil:2519 +#: bin/mpdevil:2541 msgid "Show initials in artist view" msgstr "" -#: mpdevil:2520 +#: bin/mpdevil:2542 msgid "Show tooltips in album view" msgstr "" -#: mpdevil:2521 +#: bin/mpdevil:2543 msgid "Use 'Album Artist' tag" msgstr "" -#: mpdevil:2522 +#: bin/mpdevil:2544 msgid "Send notification on title change" msgstr "" -#: mpdevil:2523 +#: bin/mpdevil:2545 msgid "Stop playback on quit" msgstr "" -#: mpdevil:2524 +#: bin/mpdevil:2546 msgid "Play selected albums and titles immediately" msgstr "" -#: mpdevil:2537 +#: bin/mpdevil:2559 msgid "View" msgstr "" -#: mpdevil:2538 +#: bin/mpdevil:2560 msgid "Behavior" msgstr "" -#: mpdevil:2570 +#: bin/mpdevil:2592 msgid "(restart required)" msgstr "" -#: mpdevil:2632 mpdevil:3461 +#: bin/mpdevil:2654 bin/mpdevil:3498 msgid "Connect" msgstr "" -#: mpdevil:2648 +#: bin/mpdevil:2670 msgid "" "The first image in the same directory as the song file matching this regex " "will be displayed. %AlbumArtist% and %Album% will be replaced by the " "corresponding tags of the song." msgstr "" -#: mpdevil:2653 +#: bin/mpdevil:2675 msgid "Profile:" msgstr "" -#: mpdevil:2654 +#: bin/mpdevil:2676 msgid "Name:" msgstr "" -#: mpdevil:2655 +#: bin/mpdevil:2677 msgid "Host:" msgstr "" -#: mpdevil:2656 +#: bin/mpdevil:2678 msgid "Password:" msgstr "" -#: mpdevil:2657 +#: bin/mpdevil:2679 msgid "Music lib:" msgstr "" -#: mpdevil:2658 +#: bin/mpdevil:2680 msgid "Cover regex:" msgstr "" -#: mpdevil:2789 +#: bin/mpdevil:2811 msgid "Choose directory" msgstr "" -#: mpdevil:2822 +#: bin/mpdevil:2844 msgid "Choose the order of information to appear in the playlist:" msgstr "" -#: mpdevil:2962 mpdevil:2970 mpdevil:3550 +#: bin/mpdevil:2984 bin/mpdevil:2992 bin/mpdevil:3591 msgid "Settings" msgstr "" -#: mpdevil:2981 +#: bin/mpdevil:3003 msgid "General" msgstr "" -#: mpdevil:2982 +#: bin/mpdevil:3004 msgid "Profiles" msgstr "" -#: mpdevil:2983 +#: bin/mpdevil:3005 msgid "Playlist" msgstr "" -#: mpdevil:3242 +#: bin/mpdevil:3265 msgid "Random mode" msgstr "" -#: mpdevil:3243 +#: bin/mpdevil:3266 msgid "Repeat mode" msgstr "" -#: mpdevil:3244 +#: bin/mpdevil:3267 msgid "Single mode" msgstr "" -#: mpdevil:3245 +#: bin/mpdevil:3268 msgid "Consume mode" msgstr "" -#: mpdevil:3346 mpdevil:3354 +#: bin/mpdevil:3374 bin/mpdevil:3382 msgid "Stats" msgstr "" -#: mpdevil:3403 +#: bin/mpdevil:3431 msgid "A simple music browser for MPD" msgstr "" -#: mpdevil:3415 +#: bin/mpdevil:3443 msgid "Select profile" msgstr "" -#: mpdevil:3482 +#: bin/mpdevil:3519 #, python-format msgid "Connection to \"%(profile)s\" (%(host)s:%(port)s) failed" msgstr "" -#: mpdevil:3551 +#: bin/mpdevil:3592 msgid "Help" msgstr "" -#: mpdevil:3552 +#: bin/mpdevil:3593 msgid "About" msgstr "" -#: mpdevil:3553 +#: bin/mpdevil:3594 msgid "Quit" msgstr "" -#: mpdevil:3556 +#: bin/mpdevil:3597 msgid "Update database" msgstr "" -#: mpdevil:3557 +#: bin/mpdevil:3598 msgid "Server stats" msgstr "" -#: mpdevil:3560 +#: bin/mpdevil:3601 msgid "Save window layout" msgstr "" -#: mpdevil:3564 +#: bin/mpdevil:3602 +msgid "Mini player" +msgstr "" + +#: bin/mpdevil:3606 msgid "Menu" msgstr ""