From 12af3135f21469ec2520bd62e37054b24acb81ad Mon Sep 17 00:00:00 2001 From: Christopher Eby Date: Mon, 8 Mar 2010 01:51:40 -0600 Subject: [PATCH] Initialize the widget sooner on startup --- src/org/kreed/vanilla/PlaybackService.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/org/kreed/vanilla/PlaybackService.java b/src/org/kreed/vanilla/PlaybackService.java index dd91fe67..3d6a62b6 100644 --- a/src/org/kreed/vanilla/PlaybackService.java +++ b/src/org/kreed/vanilla/PlaybackService.java @@ -339,10 +339,12 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On in.close(); Song song = new Song(ids[mCurrentSong]); - if (song.path == null) + if (song.path == null) { stateLoaded = false; - else + } else { broadcastSongChange(song); + updateWidgets(song); + } ArrayList timeline = new ArrayList(n); for (int i = 0; i != n; ++i) @@ -359,12 +361,12 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On if (stateLoaded) stateLoaded = mSongTimeline != null; - mNotificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE); - if (!stateLoaded) { retrieveSongs(); mSongTimeline = new ArrayList(); - broadcastSongChange(getSong(0)); + Song song = getSong(0); + broadcastSongChange(song); + updateWidgets(song); } if (stateLoaded) @@ -378,6 +380,7 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On mMediaPlayer.setOnErrorListener(this); mAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); + mNotificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE); try { mStartForeground = getClass().getMethod("startForeground", int.class, Notification.class); @@ -466,7 +469,7 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On broadcastSongChange(song); boolean cancelNotification = updateNotification(); - updateWidgets(); + updateWidgets(song); if (mState != oldState) { if (mState == STATE_PLAYING) @@ -667,9 +670,8 @@ public class PlaybackService extends Service implements Runnable, MediaPlayer.On } } - private void updateWidgets() + private void updateWidgets(Song song) { - Song song = getSong(0); OneCellWidget.update(this, song); }