Hello community, here is the log from the commit of package gnome-music for openSUSE:Factory checked in at 2020-02-22 19:01:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gnome-music (Old) and /work/SRC/openSUSE:Factory/.gnome-music.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnome-music" Sat Feb 22 19:01:38 2020 rev:49 rq:775298 version:3.34.4 Changes: -------- --- /work/SRC/openSUSE:Factory/gnome-music/gnome-music.changes 2020-01-10 17:46:51.118143820 +0100 +++ /work/SRC/openSUSE:Factory/.gnome-music.new.26092/gnome-music.changes 2020-02-22 19:01:53.581808335 +0100 @@ -1,0 +2,7 @@ +Sat Feb 15 17:08:12 UTC 2020 - Bjørn Lie <[email protected]> + +- Update to version 3.34.4: + + Various crash and bugfixes. + + Updated translations. + +------------------------------------------------------------------- Old: ---- gnome-music-3.34.3.tar.xz New: ---- gnome-music-3.34.4.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gnome-music.spec ++++++ --- /var/tmp/diff_new_pack.1ryP75/_old 2020-02-22 19:01:54.537810186 +0100 +++ /var/tmp/diff_new_pack.1ryP75/_new 2020-02-22 19:01:54.541810195 +0100 @@ -17,7 +17,7 @@ Name: gnome-music -Version: 3.34.3 +Version: 3.34.4 Release: 0 Summary: Music Player for GNOME License: SUSE-GPL-2.0-with-plugin-exception AND LGPL-2.1-or-later ++++++ gnome-music-3.34.3.tar.xz -> gnome-music-3.34.4.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/NEWS new/gnome-music-3.34.4/NEWS --- old/gnome-music-3.34.3/NEWS 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/NEWS 2020-02-15 14:33:51.000000000 +0100 @@ -1,3 +1,16 @@ +Overview of changes in 3.34.4 +============================= + +* Various crash and bugfixes + +Thanks to our contributors this release: + Chinmay Gurjar + Jean Felder + Marinus Schraal + +Translation updated: + Italian + Overview of changes in 3.34.3 ============================= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/data/org.gnome.Music.appdata.xml.in.in new/gnome-music-3.34.4/data/org.gnome.Music.appdata.xml.in.in --- old/gnome-music-3.34.3/data/org.gnome.Music.appdata.xml.in.in 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/data/org.gnome.Music.appdata.xml.in.in 2020-02-15 14:33:51.000000000 +0100 @@ -28,6 +28,13 @@ </screenshot> </screenshots> <releases> + <release version="3.34.3" date="2020-02-15"> + <description> + <p> + Bugfixes and translation updates. + </p> + </description> + </release> <release version="3.34.1" date="2019-10-25"> <description> <p> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/data/ui/AboutDialog.ui.in new/gnome-music-3.34.4/data/ui/AboutDialog.ui.in --- old/gnome-music-3.34.3/data/ui/AboutDialog.ui.in 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/data/ui/AboutDialog.ui.in 2020-02-15 14:33:51.000000000 +0100 @@ -34,6 +34,7 @@ Bruce Cowan Carlos Garnacho Carlos Soriano +Chinmay Gurjar Christophe van den Abbeele Christopher Davis Clayton G. Hobbs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/coremodel.py new/gnome-music-3.34.4/gnomemusic/coremodel.py --- old/gnome-music-3.34.3/gnomemusic/coremodel.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/coremodel.py 2020-02-15 14:33:51.000000000 +0100 @@ -67,7 +67,6 @@ __gsignals__ = { "artists-loaded": (GObject.SignalFlags.RUN_FIRST, None, ()), "playlist-loaded": (GObject.SignalFlags.RUN_FIRST, None, (int,)), - "playlists-loaded": (GObject.SignalFlags.RUN_FIRST, None, ()), } active_playlist = GObject.Property(type=Playlist, default=None) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/grilowrappers/grltrackerplaylists.py new/gnome-music-3.34.4/gnomemusic/grilowrappers/grltrackerplaylists.py --- old/gnome-music-3.34.3/gnomemusic/grilowrappers/grltrackerplaylists.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/grilowrappers/grltrackerplaylists.py 2020-02-15 14:33:51.000000000 +0100 @@ -145,7 +145,6 @@ self._window.notifications_popup.pop_loading() return if not media: - self._coremodel.emit("playlists-loaded") self._window.notifications_popup.pop_loading() return @@ -202,15 +201,10 @@ query = """ DELETE { ?playlist a rdfs:Resource . - ?entry a rdfs:Resource . - } WHERE { ?playlist a nmm:Playlist ; a nfo:MediaList . - OPTIONAL { - ?playlist nfo:hasMediaFileListEntry ?entry . - } FILTER ( tracker:id(?playlist) = %(playlist_id)s ) @@ -698,11 +692,13 @@ if error: print("ERROR", error) self._window.notifications_popup.pop_loading() + self.emit("playlist-loaded") return if not media: self.props.count = self._model.get_n_items() self._window.notifications_popup.pop_loading() + self.emit("playlist-loaded") return coresong = CoreSong(media, self._coreselection, self._grilo) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/mpris.py new/gnome-music-3.34.4/gnomemusic/mpris.py --- old/gnome-music-3.34.3/gnomemusic/mpris.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/mpris.py 2020-02-15 14:33:51.000000000 +0100 @@ -46,6 +46,7 @@ :param str path: object path """ self._path = path + self._signals = None Gio.bus_get(Gio.BusType.SESSION, None, self._bus_get_sync, name) def _bus_get_sync(self, source, res, name): @@ -124,6 +125,9 @@ invocation.return_value(None) def _dbus_emit_signal(self, signal_name, values): + if self._signals is None: + return + signal = self._signals[signal_name] parameters = [] for arg_name, arg_signature in signal['args'].items(): @@ -299,8 +303,11 @@ "playlist-loaded", self._on_player_playlist_changed) self._playlists_model = self._coremodel.props.playlists_sort - self._playlists_loaded_id = self._coremodel.connect( - "playlists-loaded", self._on_playlists_loaded) + n_items = self._playlists_model.get_n_items() + self._on_playlists_items_changed( + self._playlists_model, 0, n_items, n_items) + self._playlists_model.connect( + "items-changed", self._on_playlists_items_changed) self._player_playlist_type = None self._path_list = [] @@ -312,7 +319,6 @@ self._previous_loop_status = "" self._previous_mpris_playlist = self._get_active_playlist() self._previous_playback_status = "Stopped" - self._previous_playlist_count = 0 @log def _get_playback_status(self): @@ -603,33 +609,19 @@ self._properties_changed( MPRIS.MEDIA_PLAYER2_PLAYLISTS_IFACE, properties, []) - def _on_playlists_loaded(self, klass): - self._coremodel.disconnect(self._playlists_loaded_id) - for playlist in self._playlists_model: - playlist.connect("notify::title", self._on_playlist_renamed) - playlist.connect( - "notify::active", self._on_player_playlist_changed) + def _on_playlists_items_changed(self, model, position, removed, added): + if added > 0: + for i in range(added): + playlist = model[position + i] + playlist.connect("notify::title", self._on_playlist_renamed) + playlist.connect( + "notify::active", self._on_player_playlist_changed) - self._playlists_model.connect( - "items-changed", self._on_playlists_count_changed) - self._on_playlists_count_changed(None, None, 0, 0) - - @log - def _on_playlists_count_changed(self, model, position, removed, added): - playlist_count = self._playlists_model.get_n_items() - if playlist_count == self._previous_playlist_count: - return - - self._previous_playlist_count = playlist_count + playlist_count = model.get_n_items() properties = {"PlaylistCount": GLib.Variant("u", playlist_count)} self._properties_changed( MPRIS.MEDIA_PLAYER2_PLAYLISTS_IFACE, properties, []) - if added == 0: - return - - model[position].connect("notify::title", self._on_playlist_renamed) - @log def _on_playlist_renamed(self, playlist, param): mpris_playlist = self._get_mpris_playlist_from_playlist(playlist) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/scrobbler.py new/gnome-music-3.34.4/gnomemusic/scrobbler.py --- old/gnome-music-3.34.3/gnomemusic/scrobbler.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/scrobbler.py 2020-02-15 14:33:51.000000000 +0100 @@ -48,11 +48,11 @@ def __init__(self): super().__init__() + self._client = None self._reset_attributes() Goa.Client.new(None, self._new_client_callback) def _reset_attributes(self): - self._client = None self._account = None self._authentication = None self._disabled = True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/views/albumsview.py new/gnome-music-3.34.4/gnomemusic/views/albumsview.py --- old/gnome-music-3.34.3/gnomemusic/views/albumsview.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/views/albumsview.py 2020-02-15 14:33:51.000000000 +0100 @@ -199,14 +199,17 @@ self._headerbar.props.subtitle = corealbum.props.artist def _toggle_all_selection(self, selected): - """ - Selects or unselects all items without sending the notify::active - signal for performance purposes. + """Selects or deselects all items. """ with self._window._app.props.coreselection.freeze_notify(): - for child in self._flowbox.get_children(): - child.props.selected = selected - child.props.corealbum.props.selected = selected + if self.get_visible_child() == self._album_widget: + if selected is True: + self._album_widget.select_all() + else: + self._album_widget.select_none() + else: + for child in self._flowbox.get_children(): + child.props.selected = selected def select_all(self): self._toggle_all_selection(True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/views/artistsview.py new/gnome-music-3.34.4/gnomemusic/views/artistsview.py --- old/gnome-music-3.34.3/gnomemusic/views/artistsview.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/views/artistsview.py 2020-02-15 14:33:51.000000000 +0100 @@ -61,6 +61,8 @@ self._application = application self._artists = {} + self._selected_artist = None + self._window = application.props.window self._coremodel = application.props.coremodel self._model = self._coremodel.props.artists_sort @@ -153,6 +155,9 @@ artist_tile.props.selected = not artist_tile.props.selected return + selected_row = self._sidebar.get_selected_row() + self._selected_artist = selected_row.get_child().props.coreartist + # Prepare a new artist_albums_widget here coreartist = artist_tile.props.coreartist if coreartist.props.artist in self._loaded_artists: @@ -196,6 +201,18 @@ self._sidebar.props.selection_mode = Gtk.SelectionMode.NONE else: self._sidebar.props.selection_mode = Gtk.SelectionMode.SINGLE + selected_row = self._sidebar.get_row_at_index(0) + if selected_row is None: + self._selected_artist = None + return + + for row in self._sidebar: + if row.get_child().props.coreartist == self._selected_artist: + selected_row = row + break + + self._sidebar.select_row(selected_row) + self._selected_artist = None @log def _toggle_all_selection(self, selected): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/views/playlistsview.py new/gnome-music-3.34.4/gnomemusic/views/playlistsview.py --- old/gnome-music-3.34.3/gnomemusic/views/playlistsview.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/views/playlistsview.py 2020-02-15 14:33:51.000000000 +0100 @@ -62,6 +62,10 @@ self._window = application.props.window self._player = player + # This indicates if the current list has been empty and has + # had no user interaction since. + self._untouched_list = True + self._song_popover = PlaylistContextMenu(self._view) play_song = Gio.SimpleAction.new('play_song', None) @@ -108,11 +112,12 @@ self._sidebar.bind_model(self._model, self._add_playlist_to_sidebar) - self._loaded_id = self._coremodel.connect( - "playlists-loaded", self._on_playlists_loaded) self._active_playlist_id = self._coremodel.connect( "notify::active-playlist", self._on_active_playlist_changed) + self._model.connect("items-changed", self._on_playlists_model_changed) + self._on_playlists_model_changed(self._model, 0, 0, 0) + # Selection is only possible from the context menu self.disconnect(self._selection_mode_id) @@ -147,11 +152,24 @@ row = PlaylistTile(playlist) return row - def _on_playlists_loaded(self, klass): - self._coremodel.disconnect(self._loaded_id) - first_row = self._sidebar.get_row_at_index(0) - self._sidebar.select_row(first_row) - first_row.emit("activate") + def _on_playlists_model_changed(self, model, position, removed, added): + if model.get_n_items() == 0: + self._untouched_list = True + return + elif self._untouched_list is True: + first_row = self._sidebar.get_row_at_index(0) + self._sidebar.select_row(first_row) + self._on_playlist_activated(self._sidebar, first_row, True) + return + + if removed == 0: + return + + row_next = (self._sidebar.get_row_at_index(position) + or self._sidebar.get_row_at_index(position - 1)) + if row_next: + self._sidebar.select_row(row_next) + self._on_playlist_activated(self._sidebar, row_next, True) @log def _on_view_right_clicked(self, gesture, n_press, x, y): @@ -204,8 +222,11 @@ coresong) @log - def _on_playlist_activated(self, sidebar, row, data=None): + def _on_playlist_activated(self, sidebar, row, untouched=False): """Update view with content from selected playlist""" + if untouched is False: + self._untouched_list = False + playlist = row.props.playlist if self.rename_active: @@ -253,7 +274,7 @@ return self._sidebar.select_row(row) - row.emit('activate') + self._on_playlist_activated(self._sidebar, row, True) if playlist.props.model.get_n_items() > 0: self._song_activated(None) else: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/views/searchview.py new/gnome-music-3.34.4/gnomemusic/views/searchview.py --- old/gnome-music-3.34.3/gnomemusic/views/searchview.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/views/searchview.py 2020-02-15 14:33:51.000000000 +0100 @@ -22,7 +22,9 @@ # code, but you are not obligated to do so. If you do not wish to do so, # delete this exception statement from your version. +from enum import IntEnum from gettext import gettext as _ + from gi.repository import Gdk, GObject, Gtk from gnomemusic import log @@ -45,9 +47,19 @@ __gtype_name__ = "SearchView" + class State(IntEnum): + """The different states of SearchView + """ + MAIN = 0 + ALL_ALBUMS = 1 + ALL_ARTISTS = 2 + ALBUM = 3 + ARTIST = 4 + search_state = GObject.Property(type=int, default=Search.State.NONE) selected_items_count = GObject.Property(type=int, default=0, minimum=0) selection_mode = GObject.Property(type=bool, default=False) + state = GObject.Property(type=int, default=State.MAIN) _album_header = Gtk.Template.Child() _album_flowbox = Gtk.Template.Child() @@ -324,6 +336,7 @@ # Update and display the album widget if not in selection mode self._album_widget.update(corealbum) + self.props.state = SearchView.State.ALBUM self._headerbar.props.state = HeaderBar.State.SEARCH self._headerbar.props.title = corealbum.props.title self._headerbar.props.subtitle = corealbum.props.artist @@ -338,7 +351,7 @@ return artist_albums_widget = ArtistAlbumsWidget( - coreartist, self._application, False) + coreartist, self._application, True) # FIXME: Recreating a view here. Alternate solution is used # in AlbumsView: one view created and an update function. # Settle on one design. @@ -352,6 +365,7 @@ "selection-mode", artist_albums_widget, "selection-mode", GObject.BindingFlags.BIDIRECTIONAL) + self.props.state = SearchView.State.ARTIST self._headerbar.props.state = HeaderBar.State.SEARCH self._headerbar.props.title = coreartist.props.artist self._headerbar.props.subtitle = None @@ -361,6 +375,7 @@ @Gtk.Template.Callback() def _on_all_artists_clicked(self, widget, event, user_data=None): + self.props.state = SearchView.State.ALL_ARTISTS self._headerbar.props.state = HeaderBar.State.SEARCH self._headerbar.props.title = _("Artists Results") self._headerbar.props.subtitle = None @@ -375,6 +390,7 @@ @Gtk.Template.Callback() def _on_all_albums_clicked(self, widget, event, user_data=None): + self.props.state = SearchView.State.ALL_ALBUMS self._headerbar.props.state = HeaderBar.State.SEARCH self._headerbar.props.title = _("Albums Results") self._headerbar.props.subtitle = None @@ -388,20 +404,36 @@ self.props.search_mode_active = False def _select_all(self, value): - with self._model.freeze_notify(): - def song_select(child): - song_widget = child.get_child() - song_widget.props.selected = value - - def album_select(child): - child.props.selected = value - - def artist_select(child): - child.props.selected = value - - self._songs_listbox.foreach(song_select) - self._album_flowbox.foreach(album_select) - self._artist_flowbox.foreach(artist_select) + def child_select(child): + child.props.selected = value + + if self.props.state == SearchView.State.MAIN: + with self._model.freeze_notify(): + def song_select(child): + song_widget = child.get_child() + song_widget.props.coresong.props.selected = value + + self._songs_listbox.foreach(song_select) + self._album_flowbox.foreach(child_select) + self._artist_flowbox.foreach(child_select) + elif self.props.state == SearchView.State.ALL_ALBUMS: + with self._model.freeze_notify(): + self._album_all_flowbox.foreach(child_select) + elif self.props.state == SearchView.State.ALL_ARTISTS: + with self._model.freeze_notify(): + self._artist_all_flowbox.foreach(child_select) + elif self.props.state == SearchView.State.ALBUM: + view = self.get_visible_child() + if value is True: + view.select_all() + else: + view.select_none() + elif self.props.state == SearchView.State.ARTIST: + view = self.get_visible_child().get_child().get_child() + if value is True: + view.select_all() + else: + view.select_none() def select_all(self): self._select_all(True) @@ -420,6 +452,7 @@ self.set_visible_child(self._search_results) self.props.search_mode_active = True + self.props.state = SearchView.State.MAIN self._headerbar.props.state = HeaderBar.State.MAIN @log diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/widgets/albumwidget.py new/gnome-music-3.34.4/gnomemusic/widgets/albumwidget.py --- old/gnome-music-3.34.3/gnomemusic/widgets/albumwidget.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/widgets/albumwidget.py 2020-02-15 14:33:51.000000000 +0100 @@ -52,6 +52,8 @@ self._parent_view = parent_view self._player = player + self.connect("notify::selection-mode", self._on_selection_mode_changed) + @log def update(self, corealbum): """Update the album widget. @@ -180,6 +182,10 @@ def select_none(self): self._listbox.select_none() + def _on_selection_mode_changed(self, widget, value): + if not self.props.selection_mode: + self.select_none() + @GObject.Property( type=Grl.Media, default=None, flags=GObject.ParamFlags.READABLE) def album(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/widgets/artistalbumwidget.py new/gnome-music-3.34.4/gnomemusic/widgets/artistalbumwidget.py --- old/gnome-music-3.34.3/gnomemusic/widgets/artistalbumwidget.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/widgets/artistalbumwidget.py 2020-02-15 14:33:51.000000000 +0100 @@ -94,6 +94,16 @@ def _create_widget(self, disc): disc_box = self._create_disc_box(disc.props.disc_nr, disc.model) + self._disc_list_box.bind_property( + "selection-mode-allowed", disc_box, "selection-mode-allowed", + GObject.BindingFlags.BIDIRECTIONAL + | GObject.BindingFlags.SYNC_CREATE) + + self._disc_list_box.bind_property( + "selection-mode", disc_box, "selection-mode", + GObject.BindingFlags.BIDIRECTIONAL + | GObject.BindingFlags.SYNC_CREATE) + return disc_box def _create_disc_box(self, disc_nr, album_model): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/widgets/disclistboxwidget.py new/gnome-music-3.34.4/gnomemusic/widgets/disclistboxwidget.py --- old/gnome-music-3.34.3/gnomemusic/widgets/disclistboxwidget.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/widgets/disclistboxwidget.py 2020-02-15 14:33:51.000000000 +0100 @@ -193,9 +193,3 @@ return self._selection_mode = value - - def set_selection_mode(child): - print("set selection mode on", child) - child.props.selection_mode = value - - self.foreach(set_selection_mode) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/widgets/notificationspopup.py new/gnome-music-3.34.4/gnomemusic/widgets/notificationspopup.py --- old/gnome-music-3.34.3/gnomemusic/widgets/notificationspopup.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/widgets/notificationspopup.py 2020-02-15 14:33:51.000000000 +0100 @@ -81,8 +81,11 @@ Popup is displayed if a loading is active or if a playlist deletion is in progress. """ - invisible = ((self._loading_notification._counter == 0) - and (len(self._grid.get_children()) <= 2)) + loading_finished = self._loading_notification._counter == 0 + no_other_notif = (len(self._grid.get_children()) == 1 + or (len(self._grid.get_children()) == 2 + and notification != self._loading_notification)) + invisible = loading_finished and no_other_notif if not invisible: if remove: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/widgets/playlistcontrols.py new/gnome-music-3.34.4/gnomemusic/widgets/playlistcontrols.py --- old/gnome-music-3.34.3/gnomemusic/widgets/playlistcontrols.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/widgets/playlistcontrols.py 2020-02-15 14:33:51.000000000 +0100 @@ -81,7 +81,7 @@ if not new_name: return - self.props.playlist.props.title = new_name + self.props.playlist.rename(new_name) self.disable_rename_playlist() @log diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/gnomemusic/window.py new/gnome-music-3.34.4/gnomemusic/window.py --- old/gnome-music-3.34.3/gnomemusic/window.py 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/gnomemusic/window.py 2020-02-15 14:33:51.000000000 +0100 @@ -305,23 +305,15 @@ def _select_all(self, action=None, param=None): if not self.props.selection_mode: return - if self._headerbar.props.state == HeaderBar.State.MAIN: - view = self.props.active_view - else: - view = self.props.active_view.get_visible_child() - view.select_all() + self.props.active_view.select_all() @log def _select_none(self, action=None, param=None): if not self.props.selection_mode: return - if self._headerbar.props.state == HeaderBar.State.MAIN: - view = self.props.active_view - view.unselect_all() - else: - view = self.props.active_view.get_visible_child() - view.select_none() + + self.props.active_view.unselect_all() @log def _on_key_press(self, widget, event): @@ -459,12 +451,7 @@ ] allowed = self.curr_view not in no_selection_mode self._headerbar.props.selection_mode_allowed = allowed - - # Disable renaming playlist if it was active when leaving - # Playlist view - if (self.prev_view == self.views[View.PLAYLIST] - and self.views[View.PLAYLIST].rename_active): - self.views[View.PLAYLIST].disable_rename_playlist() + self._search_headerbar.props.selection_mode_allowed = allowed @log def _toggle_view(self, view_enum): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/meson.build new/gnome-music-3.34.4/meson.build --- old/gnome-music-3.34.3/meson.build 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/meson.build 2020-02-15 14:33:51.000000000 +0100 @@ -1,5 +1,5 @@ project('gnome-music', - version: '3.34.3', + version: '3.34.4', meson_version: '>= 0.46.0' ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-music-3.34.3/po/it.po new/gnome-music-3.34.4/po/it.po --- old/gnome-music-3.34.3/po/it.po 2020-01-05 01:10:46.000000000 +0100 +++ new/gnome-music-3.34.4/po/it.po 2020-02-15 14:33:51.000000000 +0100 @@ -1,5 +1,6 @@ # Italian translation of Gnome Music. # Copyright (C) 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Free Software Foundation, Inc. +# Copyright (C) 2020 Free Software Foundation, Inc. # # Convenzioni usate: # @@ -12,14 +13,14 @@ # Bonjour/Zeroconf ed il widget che permette di filtrare # per artista/album/autore. Il primo è browser, il # secondo catalogo (ove possibile distinguere) -# Milo Casagrande <[email protected]>, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019. +# Milo Casagrande <[email protected]>, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020. # msgid "" msgstr "" "Project-Id-Version: gnome-music\n" "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-music/issues\n" -"POT-Creation-Date: 2019-09-02 16:56+0000\n" -"PO-Revision-Date: 2019-09-04 15:01+0200\n" +"POT-Creation-Date: 2019-11-10 13:01+0000\n" +"PO-Revision-Date: 2020-01-31 13:20+0100\n" "Last-Translator: Milo Casagrande <[email protected]>\n" "Language-Team: Italian <[email protected]>\n" "Language: it\n" @@ -56,12 +57,12 @@ "Trova brani nella propria collezione musicale, attraverso servizi DLNA o per " "qualche cosa di nuovo è possibile usare servizi come Jamendo e Magnatune." -#: data/org.gnome.Music.appdata.xml.in.in:52 +#: data/org.gnome.Music.appdata.xml.in.in:65 msgid "The GNOME Music developers" msgstr "Gli sviluppatori di GNOME Musica" #: data/org.gnome.Music.desktop.in.in:3 gnomemusic/application.py:59 -#: gnomemusic/window.py:76 +#: gnomemusic/window.py:77 msgid "Music" msgstr "Musica" @@ -264,7 +265,7 @@ #: data/ui/help-overlay.ui:24 msgctxt "shortcut window" msgid "Search" -msgstr "Search" +msgstr "Cerca" #: data/ui/help-overlay.ui:31 msgctxt "shortcut window" @@ -289,7 +290,7 @@ #: data/ui/help-overlay.ui:58 msgctxt "shortcut window" msgid "Next song" -msgstr "Brano successiv0" +msgstr "Brano successivo" #: data/ui/help-overlay.ui:65 msgctxt "shortcut window" @@ -430,7 +431,7 @@ msgid "View All" msgstr "Visualizza tutti" -#: data/ui/SearchView.ui:97 gnomemusic/views/albumsview.py:61 +#: data/ui/SearchView.ui:97 gnomemusic/views/albumsview.py:63 msgid "Albums" msgstr "Album" @@ -455,27 +456,27 @@ msgstr "Aggiungi a _playlist" #. TRANSLATORS: this is a playlist name -#: gnomemusic/grilowrappers/grltrackerplaylists.py:673 +#: gnomemusic/grilowrappers/grltrackerplaylists.py:727 msgid "Most Played" msgstr "Più ascoltati" #. TRANSLATORS: this is a playlist name -#: gnomemusic/grilowrappers/grltrackerplaylists.py:707 +#: gnomemusic/grilowrappers/grltrackerplaylists.py:764 msgid "Never Played" msgstr "Mai ascoltati" #. TRANSLATORS: this is a playlist name -#: gnomemusic/grilowrappers/grltrackerplaylists.py:740 +#: gnomemusic/grilowrappers/grltrackerplaylists.py:800 msgid "Recently Played" msgstr "Ascoltati di recente" #. TRANSLATORS: this is a playlist name -#: gnomemusic/grilowrappers/grltrackerplaylists.py:784 +#: gnomemusic/grilowrappers/grltrackerplaylists.py:846 msgid "Recently Added" msgstr "Aggiunti di recente" #. TRANSLATORS: this is a playlist name -#: gnomemusic/grilowrappers/grltrackerplaylists.py:827 +#: gnomemusic/grilowrappers/grltrackerplaylists.py:891 msgid "Favorite Songs" msgstr "Brani preferiti" @@ -515,43 +516,43 @@ msgid "Unknown Artist" msgstr "Artista sconosciuto" -#: gnomemusic/views/emptyview.py:79 +#: gnomemusic/views/emptyview.py:80 msgid "Music folder" msgstr "Cartella Musica" #. TRANSLATORS: This is a label to display a link to open user's music #. folder. {} will be replaced with the translated text 'Music folder' -#: gnomemusic/views/emptyview.py:83 +#: gnomemusic/views/emptyview.py:84 msgid "The contents of your {} will appear here." msgstr "Il contenuto della propria «{}» apparirà qui." -#: gnomemusic/views/emptyview.py:119 +#: gnomemusic/views/emptyview.py:120 msgid "Hey DJ" msgstr "Hey DJ" -#: gnomemusic/views/emptyview.py:129 gnomemusic/views/emptyview.py:135 +#: gnomemusic/views/emptyview.py:130 gnomemusic/views/emptyview.py:136 msgid "No music found" msgstr "Nessuna musica trovata" -#: gnomemusic/views/emptyview.py:137 +#: gnomemusic/views/emptyview.py:138 msgid "Try a different search" msgstr "Provare con un'altra ricerca" -#: gnomemusic/views/emptyview.py:143 +#: gnomemusic/views/emptyview.py:144 msgid "GNOME Music could not connect to Tracker" msgstr "Impossibile collegarsi a Tracker" -#: gnomemusic/views/emptyview.py:146 +#: gnomemusic/views/emptyview.py:147 msgid "Your music files cannot be indexed without Tracker running" msgstr "" "Non è possibile indicizzare i propri file musicali senza Tracker in " "esecuzione" -#: gnomemusic/views/emptyview.py:154 +#: gnomemusic/views/emptyview.py:155 msgid "Your system Tracker version seems outdated" msgstr "La versione di Tracker del sistema non sembra essere recente" -#: gnomemusic/views/emptyview.py:157 +#: gnomemusic/views/emptyview.py:158 msgid "Music needs Tracker version 2.2.0 or higher" msgstr "Musica necessita della versione 2.0.0, o successive, di Tracker" @@ -559,15 +560,15 @@ msgid "Playlists" msgstr "Playlist" -#: gnomemusic/views/searchview.py:365 +#: gnomemusic/views/searchview.py:366 msgid "Artists Results" msgstr "Risultati artisti" -#: gnomemusic/views/searchview.py:379 +#: gnomemusic/views/searchview.py:380 msgid "Albums Results" msgstr "Risultati album" -#: gnomemusic/widgets/albumwidget.py:147 +#: gnomemusic/widgets/albumwidget.py:145 msgid "{} minute" msgid_plural "{} minutes" msgstr[0] "{} minuto"
