From ae77f8e658897e419dbee9ae2db151baf831fc96 Mon Sep 17 00:00:00 2001 From: Selim Cinek Date: Tue, 7 Jul 2015 18:43:59 -0700 Subject: [PATCH] Fixed a bug where collapserunnables where dropped When a runnable was added while iterating over it, it was cleared right after. Bug: 22260165 Change-Id: I2faf9af61c08853eb8364d49ccd36d686a4b3bf8 --- .../systemui/statusbar/phone/PhoneStatusBar.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index 20f4dc7d618d8..ea59ecd10e2dd 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -81,7 +81,6 @@ import android.view.MotionEvent; import android.view.ThreadedRenderer; import android.view.VelocityTracker; import android.view.View; -import android.view.ViewConfiguration; import android.view.ViewGroup.LayoutParams; import android.view.ViewStub; import android.view.WindowManager; @@ -106,7 +105,6 @@ import com.android.systemui.EventLogConstants; import com.android.systemui.EventLogTags; import com.android.systemui.Prefs; import com.android.systemui.R; -import com.android.systemui.SwipeHelper; import com.android.systemui.assist.AssistManager; import com.android.systemui.doze.DozeHost; import com.android.systemui.doze.DozeLog; @@ -2145,11 +2143,13 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } private void runPostCollapseRunnables() { - int size = mPostCollapseRunnables.size(); - for (int i = 0; i < size; i++) { - mPostCollapseRunnables.get(i).run(); - } + ArrayList clonedList = new ArrayList<>(mPostCollapseRunnables); mPostCollapseRunnables.clear(); + int size = clonedList.size(); + for (int i = 0; i < size; i++) { + clonedList.get(i).run(); + } + } Animator mScrollViewAnim, mClearButtonAnim;