Fixed an issue where heads-upped notifications would stay

If a heads up notification was briefly removed right after
it was added it could linger around in systemUI until
the panel collapsed.
We need to make sure not to apply this improvement if
reordering isn't allowed, otherwise it will never time out

Test: existing tests pass
Bug: 34608075
Change-Id: I7768f6111ada30edcb997a42940e5e336efe1cf2
This commit is contained in:
Selim Cinek
2017-01-31 14:37:14 -08:00
parent 9363c69542
commit bd5bf5eaa4

View File

@@ -1599,8 +1599,11 @@ public class StatusBar extends SystemUI implements DemoMode,
if (mHeadsUpManager.isHeadsUp(key)) {
// A cancel() in repsonse to a remote input shouldn't be delayed, as it makes the
// sending look longer than it takes.
// Also we should not defer the removal if reordering isn't allowed since otherwise
// some notifications can't disappear before the panel is closed.
boolean ignoreEarliestRemovalTime = mRemoteInputController.isSpinning(key)
&& !FORCE_REMOTE_INPUT_HISTORY;
&& !FORCE_REMOTE_INPUT_HISTORY
|| !mVisualStabilityManager.isReorderingAllowed();
deferRemoval = !mHeadsUpManager.removeNotification(key, ignoreEarliestRemovalTime);
}
if (key.equals(mMediaNotificationKey)) {