summaryrefslogtreecommitdiffstats
path: root/packages/Keyguard
diff options
context:
space:
mode:
authorAdam Powell <adamp@google.com>2013-10-17 17:29:52 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-10-17 17:29:52 +0000
commita9412556d213e07b248ef7e924f0e4cee183efc5 (patch)
tree9232b7f5b83b1e21b809b6445831738bcd718090 /packages/Keyguard
parentf80a7af0febcf09b47eb7122c6ad4cff6c4330fc (diff)
parent3b435fb2f0c868c468f3fb2cb2e3ea8314a1755a (diff)
downloadframeworks_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.java19
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);