Merge "Fixed a crash with the heads up manager" into mnc-dr1.5-dev am: d23f1eb0cd

am: 804ff964af

* commit '804ff964afed8154c5b169cd1f2bb6e89dc05f2f':
  Fixed a crash with the heads up manager
This commit is contained in:
Selim Cinek
2016-01-13 23:14:26 +00:00
committed by android-build-merger

View File

@@ -453,7 +453,10 @@ public class HeadsUpManager implements ViewTreeObserver.OnComputeInternalInsetsL
mReleaseOnExpandFinish = false; mReleaseOnExpandFinish = false;
} else { } else {
for (NotificationData.Entry entry : mEntriesToRemoveAfterExpand) { for (NotificationData.Entry entry : mEntriesToRemoveAfterExpand) {
removeHeadsUpEntry(entry); if (isHeadsUp(entry.key)) {
// Maybe the heads-up was removed already
removeHeadsUpEntry(entry);
}
} }
} }
mEntriesToRemoveAfterExpand.clear(); mEntriesToRemoveAfterExpand.clear();
@@ -572,6 +575,9 @@ public class HeadsUpManager implements ViewTreeObserver.OnComputeInternalInsetsL
earliestRemovaltime = currentTime + mMinimumDisplayTime; earliestRemovaltime = currentTime + mMinimumDisplayTime;
postTime = Math.max(postTime, currentTime); postTime = Math.max(postTime, currentTime);
removeAutoRemovalCallbacks(); removeAutoRemovalCallbacks();
if (mEntriesToRemoveAfterExpand.contains(entry)) {
mEntriesToRemoveAfterExpand.remove(entry);
}
if (!hasFullScreenIntent(entry)) { if (!hasFullScreenIntent(entry)) {
long finishTime = postTime + mHeadsUpNotificationDecay; long finishTime = postTime + mHeadsUpNotificationDecay;
long removeDelay = Math.max(finishTime - currentTime, mMinimumDisplayTime); long removeDelay = Math.max(finishTime - currentTime, mMinimumDisplayTime);