Small updates for recents launch animation
- Increase translation x of adjacnet tasks, in order to maintain
gaps between pages
- Fix parallax when launching side task (used to be based on launched
task's translation, but now that is 0 since there's no curve)
Change-Id: Iace47761a6e0a69982cf2eac34436b7164e60792
diff --git a/quickstep/res/values/dimens.xml b/quickstep/res/values/dimens.xml
index 6a76b45..05dda9c 100644
--- a/quickstep/res/values/dimens.xml
+++ b/quickstep/res/values/dimens.xml
@@ -36,7 +36,7 @@
<!-- Launcher app transition -->
<dimen name="content_trans_y">25dp</dimen>
<dimen name="workspace_trans_y">80dp</dimen>
- <dimen name="recents_adjacent_trans_x">120dp</dimen>
+ <dimen name="recents_adjacent_trans_x">140dp</dimen>
<dimen name="recents_adjacent_trans_y">80dp</dimen>
<fraction name="recents_adjacent_scale">150%</fraction>
</resources>
diff --git a/quickstep/src/com/android/launcher3/LauncherAppTransitionManagerImpl.java b/quickstep/src/com/android/launcher3/LauncherAppTransitionManagerImpl.java
index 27b7f52..ab4591c 100644
--- a/quickstep/src/com/android/launcher3/LauncherAppTransitionManagerImpl.java
+++ b/quickstep/src/com/android/launcher3/LauncherAppTransitionManagerImpl.java
@@ -320,26 +320,24 @@
} else {
// We are launching an adjacent task, so parallax the center and other adjacent task.
TaskView centerTask = (TaskView) recentsView.getPageAt(centerTaskIndex);
- float translationX = Math.abs(v.getTranslationX());
- ObjectAnimator centerTaskParallaxToRight =
+ float translationX = mRecentsTransX / 2;
+ ObjectAnimator centerTaskParallaxOffscreen =
LauncherAnimUtils.ofPropertyValuesHolder(centerTask,
new PropertyListBuilder()
- .scale(v.getScaleX())
.translationX(isRtl ? -translationX : translationX)
.build());
- launcherAnimator.play(centerTaskParallaxToRight);
+ launcherAnimator.play(centerTaskParallaxOffscreen);
int otherAdjacentTaskIndex = centerTaskIndex + (centerTaskIndex - launchedTaskIndex);
if (otherAdjacentTaskIndex >= 0
&& otherAdjacentTaskIndex < recentsView.getPageCount()) {
TaskView otherAdjacentTask = (TaskView) recentsView.getPageAt(
otherAdjacentTaskIndex);
- ObjectAnimator otherAdjacentTaskParallaxToRight =
+ ObjectAnimator otherAdjacentTaskParallaxOffscreen =
LauncherAnimUtils.ofPropertyValuesHolder(otherAdjacentTask,
new PropertyListBuilder()
- .translationX(otherAdjacentTask.getTranslationX()
- + (isRtl ? -translationX : translationX))
+ .translationX(isRtl ? -translationX : translationX)
.build());
- launcherAnimator.play(otherAdjacentTaskParallaxToRight);
+ launcherAnimator.play(otherAdjacentTaskParallaxOffscreen);
}
}