From fd75eef161e93a39c87699b6c938b8298ee8f78b Mon Sep 17 00:00:00 2001 From: Adam Powell Date: Thu, 2 Aug 2012 10:27:31 -0700 Subject: [PATCH] Animate the action bar's Up chevron as it shows and hides. Change-Id: I2cf0283cc644a62ad83cb5641b8f56cc8229b86f --- core/java/com/android/internal/widget/ActionBarView.java | 8 ++++++++ core/res/res/layout/action_bar_home.xml | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/core/java/com/android/internal/widget/ActionBarView.java b/core/java/com/android/internal/widget/ActionBarView.java index d85e816da135b..d6d2cf61eaaad 100644 --- a/core/java/com/android/internal/widget/ActionBarView.java +++ b/core/java/com/android/internal/widget/ActionBarView.java @@ -26,6 +26,7 @@ import com.android.internal.view.menu.MenuPresenter; import com.android.internal.view.menu.MenuView; import com.android.internal.view.menu.SubMenuBuilder; +import android.animation.LayoutTransition; import android.app.ActionBar; import android.app.ActionBar.OnNavigationListener; import android.app.Activity; @@ -1271,12 +1272,19 @@ public class ActionBarView extends AbsActionBarView { private ImageView mIconView; private int mUpWidth; + private static final long DEFAULT_TRANSITION_DURATION = 150; + public HomeView(Context context) { this(context, null); } public HomeView(Context context, AttributeSet attrs) { super(context, attrs); + LayoutTransition t = getLayoutTransition(); + if (t != null) { + // Set a lower duration than the default + t.setDuration(DEFAULT_TRANSITION_DURATION); + } } public void setUp(boolean isUp) { diff --git a/core/res/res/layout/action_bar_home.xml b/core/res/res/layout/action_bar_home.xml index 91af7e9576a01..fe58215f24fa8 100644 --- a/core/res/res/layout/action_bar_home.xml +++ b/core/res/res/layout/action_bar_home.xml @@ -18,7 +18,8 @@ class="com.android.internal.widget.ActionBarView$HomeView" android:layout_width="wrap_content" android:layout_height="match_parent" - android:background="?android:attr/actionBarItemBackground" > + android:background="?android:attr/actionBarItemBackground" + android:animateLayoutChanges="true">