diff options
author | Adam Powell <adamp@google.com> | 2013-10-17 17:29:52 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-10-17 17:29:52 +0000 |
commit | a9412556d213e07b248ef7e924f0e4cee183efc5 (patch) | |
tree | 9232b7f5b83b1e21b809b6445831738bcd718090 /packages/Keyguard | |
parent | f80a7af0febcf09b47eb7122c6ad4cff6c4330fc (diff) | |
parent | 3b435fb2f0c868c468f3fb2cb2e3ea8314a1755a (diff) | |
download | frameworks_base-a9412556d213e07b248ef7e924f0e4cee183efc5.zip frameworks_base-a9412556d213e07b248ef7e924f0e4cee183efc5.tar.gz frameworks_base-a9412556d213e07b248ef7e924f0e4cee183efc5.tar.bz2 |
Merge "Fix stale data in keyguard transport control display" into klp-dev
Diffstat (limited to 'packages/Keyguard')
-rw-r--r-- | packages/Keyguard/src/com/android/keyguard/KeyguardTransportControlView.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardTransportControlView.java b/packages/Keyguard/src/com/android/keyguard/KeyguardTransportControlView.java index a48f23e..a7af6a4 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardTransportControlView.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardTransportControlView.java @@ -101,9 +101,7 @@ public class KeyguardTransportControlView extends FrameLayout { new RemoteController.OnClientUpdateListener() { @Override public void onClientChange(boolean clearing) { - if (clearing) { - clearMetadata(); - } + clearMetadata(); } @Override @@ -302,6 +300,7 @@ public class KeyguardTransportControlView extends FrameLayout { mPopulateMetadataWhenAttached = null; } if (DEBUG) Log.v(TAG, "Registering TCV " + this); + mMetadata.clear(); mAudioManager.registerRemoteController(mRemoteController); KeyguardUpdateMonitor.getInstance(mContext).registerCallback(mUpdateMonitor); } @@ -321,6 +320,7 @@ public class KeyguardTransportControlView extends FrameLayout { if (DEBUG) Log.v(TAG, "Unregistering TCV " + this); mAudioManager.unregisterRemoteController(mRemoteController); KeyguardUpdateMonitor.getInstance(mContext).removeCallback(mUpdateMonitor); + mMetadata.clear(); mUserSeeking = false; removeCallbacks(mUpdateSeekBars); } @@ -395,10 +395,10 @@ public class KeyguardTransportControlView extends FrameLayout { Log.e(TAG, "Couldn't get remote control client package icon", e); } setBadgeIcon(badgeIcon); - if (!TextUtils.isEmpty(mMetadata.trackTitle)) { - mTrackTitle.setText(mMetadata.trackTitle); - } - StringBuilder sb = new StringBuilder(); + mTrackTitle.setText(!TextUtils.isEmpty(mMetadata.trackTitle) + ? mMetadata.trackTitle : null); + + final StringBuilder sb = new StringBuilder(); if (!TextUtils.isEmpty(mMetadata.artist)) { if (sb.length() != 0) { sb.append(" - "); @@ -411,7 +411,10 @@ public class KeyguardTransportControlView extends FrameLayout { } sb.append(mMetadata.albumTitle); } - mTrackArtistAlbum.setText(sb.toString()); + + final String trackArtistAlbum = sb.toString(); + mTrackArtistAlbum.setText(!TextUtils.isEmpty(trackArtistAlbum) ? + trackArtistAlbum : null); if (mMetadata.duration >= 0) { setSeekBarsEnabled(true); |