Fix jank when launching something from lockscreen

Apparently, hideRecents blocks around 300ms so we avoid this as a
low-risk fix. In the longer term, we should investigate why it takes
so long.

Bug: 18133433
Change-Id: I3eae659d4720d3c95280e7f7a144e00f0c760388
This commit is contained in:
Jorim Jaggi
2014-10-27 13:45:56 +01:00
parent 288f65e381
commit 4eedc1d97e
3 changed files with 12 additions and 7 deletions

View File

@@ -297,7 +297,8 @@ public abstract class BaseStatusBar extends SystemUI implements
// close the shade if it was open
if (handled) {
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_NONE, true /* force */);
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL,
true /* force */);
visibilityChanged(false);
}
// Wait for activity start.
@@ -374,7 +375,8 @@ public abstract class BaseStatusBar extends SystemUI implements
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.SHOW_NOTE_ABOUT_NOTIFICATION_HIDING, 0);
if (BANNER_ACTION_SETUP.equals(action)) {
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_NONE, true /* force */);
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL,
true /* force */);
mContext.startActivity(new Intent(Settings.ACTION_APP_NOTIFICATION_REDACTION)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
@@ -799,7 +801,7 @@ public abstract class BaseStatusBar extends SystemUI implements
}
}
});
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_NONE, true /* force */);
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, true /* force */);
return true;
}
}, false /* afterKeyguardGone */);
@@ -1564,7 +1566,8 @@ public abstract class BaseStatusBar extends SystemUI implements
}.start();
// close the shade if it was open
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_NONE, true /* force */);
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL,
true /* force */);
visibilityChanged(false);
return mIntent != null && mIntent.isActivity();

View File

@@ -133,7 +133,7 @@ public class KeyguardBottomAreaView extends FrameLayout implements View.OnClickL
if (action == ACTION_CLICK) {
if (host == mLockIcon) {
mPhoneStatusBar.animateCollapsePanels(
CommandQueue.FLAG_EXCLUDE_NONE, true /* force */);
CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, true /* force */);
return true;
} else if (host == mCameraImageView) {
launchCamera();

View File

@@ -3052,7 +3052,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
}
});
if (dismissShade) {
animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_NONE, true /* force */);
animateCollapsePanels(
CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL, true /* force */);
}
return true;
}
@@ -3741,7 +3742,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
public boolean onSpacePressed() {
if (mScreenOn != null && mScreenOn
&& (mState == StatusBarState.KEYGUARD || mState == StatusBarState.SHADE_LOCKED)) {
animateCollapsePanels(0 /* flags */, true /* force */);
animateCollapsePanels(
CommandQueue.FLAG_EXCLUDE_RECENTS_PANEL /* flags */, true /* force */);
return true;
}
return false;