Fixed the final two synchronous calls I could find
authorKristoffer Grönlund <kristoffer.gronlund@purplescout.se>
Sat, 9 Jan 2010 02:14:19 +0000 (03:14 +0100)
committerKristoffer Grönlund <kristoffer.gronlund@purplescout.se>
Sat, 9 Jan 2010 02:14:19 +0000 (03:14 +0100)
data/icon_artist.png
jamaui/playerwindow.py
jamaui/showalbum.py

index 29d43a8..c7ba2ce 100644 (file)
Binary files a/data/icon_artist.png and b/data/icon_artist.png differ
index ea7f76c..fcf9ff3 100644 (file)
@@ -47,7 +47,7 @@ class PlayerWindow(hildon.StackableWindow):
 
     def __init__(self):
         hildon.StackableWindow.__init__(self)
 
     def __init__(self):
         hildon.StackableWindow.__init__(self)
-        self.set_title("jamaendo")
+        self.set_title("Jamaendo")
 
         PlayerWindow.instance = self
 
 
         PlayerWindow.instance = self
 
@@ -122,27 +122,35 @@ class PlayerWindow(hildon.StackableWindow):
     def create_menu(self):
         self.menu = hildon.AppMenu()
 
     def create_menu(self):
         self.menu = hildon.AppMenu()
 
-        def to_artist(*args):
+        def to_artist():
             from showartist import ShowArtist
             from showartist import ShowArtist
-            track = self.playlist.current()
-            artist = jamaendo.get_artist(int(track.artist_id))
-            wnd = ShowArtist(artist)
-            wnd.show_all()
-        def to_album(*args):
+            try:
+                hildon.hildon_gtk_window_set_progress_indicator(self, 1)
+                track = self.playlist.current()
+                artist = jamaendo.get_artist(int(track.artist_id))
+                wnd = ShowArtist(artist)
+                wnd.show_all()
+            finally:
+                hildon.hildon_gtk_window_set_progress_indicator(self, 0)
+        def to_album():
             from showalbum import ShowAlbum
             from showalbum import ShowAlbum
-            track = self.playlist.current()
-            album = jamaendo.get_album(int(track.album_id))
-            wnd = ShowAlbum(album)
-            wnd.show_all()
+            try:
+                hildon.hildon_gtk_window_set_progress_indicator(self, 1)
+                track = self.playlist.current()
+                album = jamaendo.get_album(int(track.album_id))
+                wnd = ShowAlbum(album)
+                wnd.show_all()
+            finally:
+                hildon.hildon_gtk_window_set_progress_indicator(self, 0)
 
         b = hildon.GtkButton(gtk.HILDON_SIZE_AUTO)
         b.set_label("Artist")
 
         b = hildon.GtkButton(gtk.HILDON_SIZE_AUTO)
         b.set_label("Artist")
-        b.connect("clicked", to_artist)
+        b.connect("clicked", lambda w: gobject.idle_add(to_artist))
         self.menu.append(b)
 
         b = hildon.GtkButton(gtk.HILDON_SIZE_AUTO)
         b.set_label("Album")
         self.menu.append(b)
 
         b = hildon.GtkButton(gtk.HILDON_SIZE_AUTO)
         b.set_label("Album")
-        b.connect("clicked", to_album)
+        b.connect("clicked", lambda w: gobject.idle_add(to_album))
         self.menu.append(b)
 
         b = hildon.GtkButton(gtk.HILDON_SIZE_AUTO)
         self.menu.append(b)
 
         b = hildon.GtkButton(gtk.HILDON_SIZE_AUTO)
index a1aec5c..7d0eed3 100644 (file)
@@ -145,7 +145,6 @@ class ShowAlbum(hildon.StackableWindow):
         if albumid == self.album.ID and size == 300:
             self.cover.set_from_file(cover)
 
         if albumid == self.album.ID and size == 300:
             self.cover.set_from_file(cover)
 
-
     def on_add_to_playlist(self, button, user_data=None):
         add_to_playlist(self, self.tracklist)
 
     def on_add_to_playlist(self, button, user_data=None):
         add_to_playlist(self, self.tracklist)