Merge "Fix jump cut when dismissing items in Recents" into jb-mr1-dev

This commit is contained in:
Michael Jurka
2012-10-02 12:22:12 -07:00
committed by Android (Google) Code Review

View File

@@ -165,19 +165,18 @@ public class RecentsVerticalScrollView extends ScrollView
} }
setLayoutTransition(transitioner); setLayoutTransition(transitioner);
// Scroll to end after layout. // Scroll to end after initial layout.
final ViewTreeObserver observer = getViewTreeObserver();
final OnGlobalLayoutListener updateScroll = new OnGlobalLayoutListener() { final OnGlobalLayoutListener updateScroll = new OnGlobalLayoutListener() {
public void onGlobalLayout() { public void onGlobalLayout() {
mLastScrollPosition = scrollPositionOfMostRecent(); mLastScrollPosition = scrollPositionOfMostRecent();
scrollTo(0, mLastScrollPosition); scrollTo(0, mLastScrollPosition);
final ViewTreeObserver observer = getViewTreeObserver();
if (observer.isAlive()) { if (observer.isAlive()) {
observer.removeOnGlobalLayoutListener(this); observer.removeOnGlobalLayoutListener(this);
} }
} }
}; };
observer.addOnGlobalLayoutListener(updateScroll); getViewTreeObserver().addOnGlobalLayoutListener(updateScroll);
} }
@Override @Override