Fixed bug where All Apps would appear to animate from the right
diff --git a/src/com/android/launcher2/AllAppsTabbed.java b/src/com/android/launcher2/AllAppsTabbed.java
index 2cc0a6b..47a5bf7 100644
--- a/src/com/android/launcher2/AllAppsTabbed.java
+++ b/src/com/android/launcher2/AllAppsTabbed.java
@@ -48,6 +48,7 @@
private AllAppsPagedView mAllApps;
private Context mContext;
private final LayoutInflater mInflater;
+ private boolean mFirstLayout = true;
public AllAppsTabbed(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -135,6 +136,11 @@
@Override
public void setVisibility(int visibility) {
+ if (visibility == View.GONE && mFirstLayout) {
+ // It needs to be INVISIBLE so that it will be measured in the layout.
+ // Otherwise the animations is messed up when we show it for the first time.
+ visibility = View.INVISIBLE;
+ }
final boolean isVisible = (visibility == View.VISIBLE);
super.setVisibility(visibility);
float zoom = (isVisible ? 1.0f : 0.0f);
@@ -147,6 +153,12 @@
}
@Override
+ protected void onLayout(boolean changed, int l, int t, int r, int b) {
+ mFirstLayout = false;
+ super.onLayout(changed, l, t, r, b);
+ }
+
+ @Override
public boolean isAnimating() {
return (getAnimation() != null);
}