Only animating QSB if it is visible when going home
Bug: 154863593
Change-Id: Icee925578985639e1117ff624a422082123bea1e
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java
index ebc9f96..7090393 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java
@@ -121,8 +121,11 @@
addStaggeredAnimationForView(child, grid.inv.numRows + 1, totalRows);
}
- View qsb = launcher.findViewById(R.id.search_container_all_apps);
- addStaggeredAnimationForView(qsb, grid.inv.numRows + 2, totalRows);
+ if (launcher.getAppsView().getSearchUiManager()
+ .isQsbVisible(NORMAL.getVisibleElements(launcher))) {
+ addStaggeredAnimationForView(launcher.getAppsView().getSearchView(),
+ grid.inv.numRows + 2, totalRows);
+ }
}
if (animateOverviewScrim) {
diff --git a/src/com/android/launcher3/allapps/SearchUiManager.java b/src/com/android/launcher3/allapps/SearchUiManager.java
index 34bf636..7d5363f 100644
--- a/src/com/android/launcher3/allapps/SearchUiManager.java
+++ b/src/com/android/launcher3/allapps/SearchUiManager.java
@@ -15,6 +15,8 @@
*/
package com.android.launcher3.allapps;
+import static com.android.launcher3.LauncherState.ALL_APPS_HEADER;
+
import android.graphics.Rect;
import android.view.KeyEvent;
import android.view.animation.Interpolator;
@@ -57,6 +59,13 @@
Interpolator interpolator);
/**
+ * Returns true if the QSB should be visible for the given set of visible elements
+ */
+ default boolean isQsbVisible(int visibleElements) {
+ return (visibleElements & ALL_APPS_HEADER) != 0;
+ }
+
+ /**
* Called to control how the search UI result should be handled.
*
* @param isEnabled when {@code true}, the search is all handled inside AOSP
diff --git a/src/com/android/launcher3/allapps/search/AppsSearchContainerLayout.java b/src/com/android/launcher3/allapps/search/AppsSearchContainerLayout.java
index e72e1a8..356c52c 100644
--- a/src/com/android/launcher3/allapps/search/AppsSearchContainerLayout.java
+++ b/src/com/android/launcher3/allapps/search/AppsSearchContainerLayout.java
@@ -19,7 +19,6 @@
import static android.view.View.MeasureSpec.getSize;
import static android.view.View.MeasureSpec.makeMeasureSpec;
-import static com.android.launcher3.LauncherState.ALL_APPS_HEADER;
import static com.android.launcher3.Utilities.prefixTextWithIcon;
import static com.android.launcher3.icons.IconNormalizer.ICON_VISIBLE_AREA_FACTOR;
@@ -213,7 +212,7 @@
@Override
public void setContentVisibility(int visibleElements, PropertySetter setter,
Interpolator interpolator) {
- setter.setViewAlpha(this, (visibleElements & ALL_APPS_HEADER) != 0 ? 1 : 0, interpolator);
+ setter.setViewAlpha(this, isQsbVisible(visibleElements) ? 1 : 0, interpolator);
}
@Override