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:
@@ -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);
|
||||||
|
|||||||
Reference in New Issue
Block a user