[gnome-music/wip/jfelder/searchview-new-style: 10/15] searchview: Handle view all buttons visibility



commit 350780378f888be81c21ce87edf5118adbf3b79e
Author: Jean Felder <jfelder src gnome org>
Date:   Mon Aug 5 21:45:35 2019 +0200

    searchview: Handle view all buttons visibility
    
    "View all" buttons (for both albums and artists) should only be
    visible if the search results in a section exceed the space available
    to display them.

 gnomemusic/views/searchview.py | 9 +++++++++
 1 file changed, 9 insertions(+)
---
diff --git a/gnomemusic/views/searchview.py b/gnomemusic/views/searchview.py
index a29966ac..bdf5a769 100644
--- a/gnomemusic/views/searchview.py
+++ b/gnomemusic/views/searchview.py
@@ -60,6 +60,8 @@ class SearchView(Gtk.Stack):
     _search_results = Gtk.Template.Child()
     _songs_header = Gtk.Template.Child()
     _songs_listbox = Gtk.Template.Child()
+    _view_all_albums = Gtk.Template.Child()
+    _view_all_artists = Gtk.Template.Child()
 
     def __repr__(self):
         return '<SearchView>'
@@ -189,12 +191,19 @@ class SearchView(Gtk.Stack):
         self._album_flowbox.props.visible = items_found
         self._check_visibility()
 
+        nr_albums = self._album_model.get_n_items()
+        self._view_all_albums.props.visible = (nr_albums > model.get_n_items())
+
     def _on_artist_model_items_changed(self, model, position, removed, added):
         items_found = model.get_n_items() > 0
         self._artist_header.props.visible = items_found
         self._artist_flowbox.props.visible = items_found
         self._check_visibility()
 
+        nr_artists = self._artist_model.get_n_items()
+        self._view_all_artists.props.visible = (
+            nr_artists > model.get_n_items())
+
     def _on_model_items_changed(self, model, position, removed, added):
         items_found = model.get_n_items() > 0
         self._songs_header.props.visible = items_found


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]