| Index: chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimationPortrait.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimationPortrait.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimationPortrait.java
|
| index 652db9b858c2d039646468ddc770c75e37e0571c..ae454ab83ced5b5db816e1bdc820ff2cebb86850 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimationPortrait.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimationPortrait.java
|
| @@ -20,6 +20,7 @@ import static org.chromium.chrome.browser.compositor.layouts.phone.stack.StackTa
|
| import org.chromium.chrome.browser.compositor.layouts.ChromeAnimation;
|
| import org.chromium.chrome.browser.compositor.layouts.ChromeAnimation.Animatable;
|
| import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab;
|
| +import org.chromium.chrome.browser.util.FeatureUtilities;
|
| import org.chromium.chrome.browser.util.MathUtils;
|
| import org.chromium.ui.base.LocalizationUtils;
|
|
|
| @@ -27,10 +28,10 @@ class StackAnimationPortrait extends StackAnimation {
|
| /**
|
| * Only Constructor.
|
| */
|
| - public StackAnimationPortrait(float width, float height, float heightMinusBrowserControls,
|
| - float borderFramePaddingTop, float borderFramePaddingTopOpaque,
|
| - float borderFramePaddingLeft) {
|
| - super(width, height, heightMinusBrowserControls, borderFramePaddingTop,
|
| + public StackAnimationPortrait(Stack stack, float width, float height,
|
| + float heightMinusBrowserControls, float borderFramePaddingTop,
|
| + float borderFramePaddingTopOpaque, float borderFramePaddingLeft) {
|
| + super(stack, width, height, heightMinusBrowserControls, borderFramePaddingTop,
|
| borderFramePaddingTopOpaque, borderFramePaddingLeft);
|
| }
|
|
|
| @@ -62,11 +63,11 @@ class StackAnimationPortrait extends StackAnimation {
|
| float scrollOffset = StackTab.screenToScroll(i * spacing, warpSize);
|
|
|
| if (i < focusIndex) {
|
| - tab.getLayoutTab().setMaxContentHeight(mHeightMinusBrowserControls);
|
| + tab.getLayoutTab().setMaxContentHeight(mStack.getMaxTabHeight());
|
| addAnimation(set, tab, SCROLL_OFFSET, initialScrollOffset, scrollOffset,
|
| ENTER_STACK_ANIMATION_DURATION, 0);
|
| } else if (i > focusIndex) {
|
| - tab.getLayoutTab().setMaxContentHeight(mHeightMinusBrowserControls);
|
| + tab.getLayoutTab().setMaxContentHeight(mStack.getMaxTabHeight());
|
| tab.setScrollOffset(scrollOffset + trailingScrollOffset);
|
| addAnimation(
|
| set, tab, Y_IN_STACK_OFFSET, mHeight, 0, ENTER_STACK_ANIMATION_DURATION, 0);
|
| @@ -75,7 +76,7 @@ class StackAnimationPortrait extends StackAnimation {
|
|
|
| addAnimation(set, tab.getLayoutTab(), MAX_CONTENT_HEIGHT,
|
| tab.getLayoutTab().getUnclampedOriginalContentHeight(),
|
| - mHeightMinusBrowserControls, ENTER_STACK_ANIMATION_DURATION,
|
| + mStack.getMaxTabHeight(), ENTER_STACK_ANIMATION_DURATION,
|
| ENTER_STACK_RESIZE_DELAY);
|
| addAnimation(set, tab, Y_IN_STACK_INFLUENCE, 0.0f, 1.0f,
|
| ENTER_STACK_BORDER_ALPHA_DURATION, 0);
|
| @@ -136,8 +137,11 @@ class StackAnimationPortrait extends StackAnimation {
|
| TAB_FOCUSED_ANIMATION_DURATION, 0);
|
| addAnimation(
|
| set, tab, SCALE, tab.getScale(), 1.0f, TAB_FOCUSED_ANIMATION_DURATION, 0);
|
| + int tabYInfluenceDuration = FeatureUtilities.isChromeHomeEnabled()
|
| + ? TAB_FOCUSED_ANIMATION_DURATION
|
| + : TAB_FOCUSED_Y_STACK_DURATION;
|
| addAnimation(set, tab, Y_IN_STACK_INFLUENCE, tab.getYInStackInfluence(), 0.0f,
|
| - TAB_FOCUSED_Y_STACK_DURATION, 0);
|
| + tabYInfluenceDuration, 0);
|
| addAnimation(set, tab.getLayoutTab(), MAX_CONTENT_HEIGHT,
|
| tab.getLayoutTab().getMaxContentHeight(),
|
| tab.getLayoutTab().getUnclampedOriginalContentHeight(),
|
|
|