Merge "Add fancy animation for IA fragment"
diff --git a/res/layout/settings_homepage_container.xml b/res/layout/settings_homepage_container.xml
index 45d0861..78a0278 100644
--- a/res/layout/settings_homepage_container.xml
+++ b/res/layout/settings_homepage_container.xml
@@ -44,7 +44,8 @@
<FrameLayout
android:id="@+id/main_content"
android:layout_width="match_parent"
- android:layout_height="wrap_content"/>
+ android:layout_height="wrap_content"
+ android:animateLayoutChanges="true"/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
diff --git a/src/com/android/settings/homepage/SettingsHomepageActivity.java b/src/com/android/settings/homepage/SettingsHomepageActivity.java
index a2e3a9c..7c5f928 100644
--- a/src/com/android/settings/homepage/SettingsHomepageActivity.java
+++ b/src/com/android/settings/homepage/SettingsHomepageActivity.java
@@ -16,11 +16,13 @@
package com.android.settings.homepage;
+import android.animation.LayoutTransition;
import android.app.settings.SettingsEnums;
import android.content.Intent;
import android.os.Bundle;
import android.util.FeatureFlagUtils;
import android.view.View;
+import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.Toolbar;
@@ -64,6 +66,8 @@
showFragment(new ContextualCardsFragment(), R.id.contextual_cards_content);
showFragment(new TopLevelSettings(), R.id.main_content);
+ ((FrameLayout) findViewById(R.id.main_content))
+ .getLayoutTransition().enableTransitionType(LayoutTransition.CHANGING);
}
private void showFragment(Fragment fragment, int id) {
diff --git a/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java b/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java
index b100460..df9e85d 100644
--- a/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java
+++ b/tests/robotests/src/com/android/settings/homepage/SettingsHomepageActivityTest.java
@@ -20,6 +20,7 @@
import android.util.FeatureFlagUtils;
import android.view.View;
+import android.widget.FrameLayout;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
@@ -65,4 +66,13 @@
assertThat(actualPaddingTop).isEqualTo(
statusBarHeight + searchBarHeight + searchBarMargin * 2);
}
+
+ @Test
+ public void launch_shouldHaveAnimationForIaFragment() {
+ final SettingsHomepageActivity activity = Robolectric.buildActivity(
+ SettingsHomepageActivity.class).create().get();
+ final FrameLayout frameLayout = activity.findViewById(R.id.main_content);
+
+ assertThat(frameLayout.getLayoutTransition()).isNotNull();
+ }
}