Fixed bug where All Apps would appear to animate from the right

This commit is contained in:
Michael Jurka
2011-01-16 18:43:58 -08:00
parent b7e0e88412
commit 6c7a03a858
@@ -48,6 +48,7 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
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 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
@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);
@@ -146,6 +152,12 @@ public class AllAppsTabbed extends TabHost implements AllAppsView {
return mAllApps.isVisible();
}
@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);