Merge "Optimize latency when closing panel with animation" into oc-dev am: 6c0aba7d4f

am: 8f1511e91a

Change-Id: I3a34ff4e1214836bf7250f2ade2ae4e8108a65f1
This commit is contained in:
Jorim Jaggi
2017-05-19 00:41:19 +00:00
committed by android-build-merger
2 changed files with 12 additions and 5 deletions

View File

@@ -34,10 +34,9 @@ import android.view.animation.Interpolator;
import android.widget.FrameLayout;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.systemui.DejankUtils;
import com.android.systemui.EventLogTags;
import com.android.systemui.Interpolators;
import com.android.keyguard.LatencyTracker;
import com.android.systemui.DejankUtils;
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManager;
import com.android.systemui.doze.DozeLog;
@@ -833,6 +832,14 @@ public abstract class PanelView extends FrameLayout {
}
}
// If we are closing the panel and we are almost there due to a slow decelerating
// interpolator, abort the animation.
if (mExpandedHeight < 1f && mExpandedHeight != 0f && mClosing) {
mExpandedHeight = 0f;
if (mHeightAnimator != null) {
mHeightAnimator.end();
}
}
mExpandedFraction = Math.min(1f,
fhWithoutOverExpansion == 0 ? 0 : mExpandedHeight / fhWithoutOverExpansion);
onHeightUpdated(mExpandedHeight);

View File

@@ -121,12 +121,12 @@ public class PhoneStatusBarView extends PanelBar {
public void onPanelCollapsed() {
super.onPanelCollapsed();
// Close the status bar in the next frame so we can show the end of the animation.
DejankUtils.postAfterTraversal(mHideExpandedRunnable);
post(mHideExpandedRunnable);
mIsFullyOpenedPanel = false;
}
public void removePendingHideExpandedRunnables() {
DejankUtils.removeCallbacks(mHideExpandedRunnable);
removeCallbacks(mHideExpandedRunnable);
}
@Override