diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java index 0960c0017b9b2..caee1aa2f2a7a 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableNotificationRow.java @@ -150,6 +150,11 @@ public class ExpandableNotificationRow extends ActivatableNotificationView { logExpansionEvent(true, wasExpanded); } + public void resetUserExpansion() { + mHasUserChangedExpansion = false; + mUserExpanded = false; + } + public boolean isUserLocked() { return mUserLocked; } 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 a2f893157d4e7..4758a1cf47a6c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -113,7 +113,6 @@ import com.android.systemui.R; import com.android.systemui.doze.DozeService; import com.android.systemui.keyguard.KeyguardViewMediator; import com.android.systemui.qs.QSPanel; -import com.android.systemui.qs.QSTile; import com.android.systemui.statusbar.ActivatableNotificationView; import com.android.systemui.statusbar.BaseStatusBar; import com.android.systemui.statusbar.CommandQueue; @@ -2923,6 +2922,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, notifyHeadsUpScreenOn(false); finishBarAnimations(); stopNotificationLogging(); + resetUserExpandedStates(); } else if (Intent.ACTION_SCREEN_ON.equals(action)) { mScreenOn = true; @@ -2951,6 +2951,17 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } }; + private void resetUserExpandedStates() { + ArrayList activeNotifications = mNotificationData.getActiveNotifications(); + final int notificationCount = activeNotifications.size(); + for (int i = 0; i < notificationCount; i++) { + NotificationData.Entry entry = activeNotifications.get(i); + if (entry.row != null) { + entry.row.resetUserExpansion(); + } + } + } + @Override protected void dismissKeyguardThenExecute(final OnDismissAction action) { if (mStatusBarKeyguardViewManager.isShowing()) {